等价类-因果图习题及答案汇总

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

测试用例设计习题课:1、使用逻辑覆盖测试方法测试以下程序段voidDOWork(intx,inty,intz){1intk=0,j=0;2if((x3)&&(z10))3{4k=x*y-1;5j=sqrt(k);6}7if((x==4)||(y5))8j=x*y+10;9j=j%3;}要求(1)画出程序段的控制流图(2)分别以条件覆盖,路径覆盖方法设计测试用例测试用例表方法测试用例执行路径条件覆盖路径覆盖2、使用逻辑覆盖测试方法测试以下程序段voidDo(intX,intA,intB){1if((A1)&&(B==0))2X=X/A;3if((A==2)||(X1))4X=X+1;5}要求(1)画出程序段的控制流图(2)分别以条件覆盖,路径覆盖方法设计测试用例方法测试用例执行路径条件覆盖X=3,A=1,B=0X=1,A=2,B=11-3-4-51-3-4-5路径覆盖X=3,A=1,B=0X=1,A=1,B=0X=1,A=2,B=1X=1,A=3,B=11-2-3-4-51-3-51-3-4-51-2-3-53、以此为例根据业务流程设计用户登录的流程图,然后依据流程图设计手动测试用例(假如密码只允许试三次)。业务流程图如下:单击登录按钮开始进入如下界面,然后输入账号或者邮件地址、密码、验证码。账号或邮箱:密码:验证码:下次登录(按钮)登录按钮用户登录的流程图:4、某省高考招生,规定考生的年龄在16周岁至25周岁之间,即出生年月从1978年7月至1987年6月。高考报名程序具有自动检测输入程序的功能。若年龄不在此范围内,则显示拒绝报名的信息。试用等价类划分法为该程序设计测试用例。设计方法:假定年龄用6位整数表示,前4位表示年份,后2位表示月份。12354(1)划分有效等价类和无效等价类。输入数据有出生年月、数值本身、月份3个等价类,并为此划分有效等价类和无效等价类,见下表:输入条件有效等价类无效等价类出生年月数值本身月份(2)设计有效等价类需要的测试用例。测试数据预期结果测试范围(3)为每一个无效等价类至少设计一个测试用例:测试数据预期结果测试范围5、有一程序,其规格说明书规定:输入两个字符,当第一个字符是A或B,且第二个字符是数字时修改文件;若第一个字符不是A,也不是B时,输出错误信息M1;若第二个字符不是数字时,输出错误信息M2。试用因果图法设计测试用例。设计方法:(1)分析规格说明书中,并确定“因”与“果”。(2)画出因果图。(3)根据因果图生成判定,并设计测试用例。规则123456因果测试用例6、在某应用系统中,系统登录界面如图2.6所示。该输入界面中包含“服务器”、“端口”、“用户名”、“密码”4个多选输入框和“确定”、“取消”2个按钮。这里只考虑多选项。(1)确定因素。本例中的因素一目了然,分别是“服务器”、“端口”、“用户名”、“密码”。(2)确定因素的取值范围或集合。本例中的“服务器”和“端口”是采用下拉框式来选择的,根据软件规格说明书,其取值集合分别为:①“服务器”——北京、上海、广州、沈阳、兰州。②“端口”——1258、2368、4588、6677、7788。③“用户名”是字符型字段,其长度为[4,20],张三是一个合法用户;“密码”也是字符型字段,其长度为[6,20],886644是该用户的初始密码。(3)确定每个因素的水平。本例中的“服务器”和“端口”的取值是离散的,对于这种类型的因素,其水平值原则上与因素的取值集合一致。“用户名”和“密码”2个字段是用户通过键盘输入的,其水平值不像前2个因素那样简单、直观。对于这种类型的因素,要采用不同的软件测试技术(如等价类划分)来确定因素的水平。本例所确定的“用户名”和“密码”2个因素的水平如表2.11所示。表2.11“用户名”和“密码”水平表因素水平用户名密码(4)选择正交表。本例中确定的因素和水平如表2.12所示。根据表2.12,选择正交表,如表2.13所示。表2.12确定的因素和水平对照表因素水平服务器端口用户名密码表2.13测试用例表服务器端口用户名密码期望值实测值123456789101112131415161718192021222324257、三角形问题:输入三个整数a,b,c,分别作为三角形的三条边,现通过程序判断由三条边构成的三角形的类型为等边三角形,等腰三角形,一般三角形(特殊的还有直角三角形)以及构不成三角形.现要求输入三个整数a,b,c必须满足以下条件:条件11=a=100条件21=b=100条件31=c=100条件4ab+c条件5ba+c条件6cb+a如果输入的值不满足这些条件的任何一个,程序给出相应的信息,如“a的取值不在允许因素水平序号的范围内”等;如果a,b,c满足条件1、条件2、条件3。则输出下列四种情况之一:(1)如果不满足条件4、条件5、条件6中的一个,则程序输出为“非三角形”(2)如果三条件边相等,则程序输出为“等边三角形”;(3)如果恰好有两条边相等,则程序输出为“等腰三角形”;(4)如果三条边都不相等,则程序输出为“一般三角形”这四种情况是相互排斥的。要求:写出标准等价类表,健壮等价类表,边界值测试用例表答案:1、使用逻辑覆盖测试方法测试以下程序段voidDOWork(intx,inty,intz){1intk=0,j=0;2if((x3)&&(z10))3{4k=x*y-1;5j=sqrt(k);6}7if((x==4)||(y5))8j=x*y+10;9j=j%3;}要求(1)画出程序段的控制流图(2)分别以条件覆盖,路径覆盖方法设计测试用例答:(1)457892(2)条件覆盖:((x3)&&(z10)):1)((x3)&&(z10))满足,设计测试用例x=4,z=5;2)((x3)&&(z10)),设计测试用例x=2,z=5;3)((x3)&&(z10)),设计测试用例x=4,z=15;3)((x3)&&(z10)),设计测试用例x=2,z=15;上面2)3)可以合为一个测试用例:z=15;((x==4)||(y5)):1)((x==4)||(y5))设计测试用例x=4,y=6;2)((x==4)||(y5))设计测试用例x=4,y=3;3)((x!=4)||(y5)),设计测试用例x=2,y=6;4)((x!=4)||(y5)),设计测试用例x=2,y=3;由于x=4第一个条件已经考虑,所以上面1)2)合成x=2,y=6;((x3)&&(z10))((x==4)||(y5))1)x=4,z=5,y=6;2)x=4,z=5,y=3;3)x=2,z=5,y=3;4)x=2,z=5,y=6;5)x=4,z=15,y=3;6)x=4,z=15,y=6;7)x=2,z=15,y=3;8)x=2,z=15,y=6;((x3)&&(z10))((x==4)||(y5))(1,2,5,6)x=4,z=5,y=6;x=4,z=15,y=6;(3,7)x=2,z=5,y=3;(4,8)x=2,z=15,y=6;;测试用例表方法测试用例执行路径条件覆盖x=2,y=6,z=5x=4,y=5,z=152-7-8-92-7-8-9路径覆盖x=4,y=6,z=5x=2,y=6,z=15x=5,y=5,z=5x=2,y=5,z=52-4,5-7-8-92-7-8-92-4,5-7-92-7-92、使用逻辑覆盖测试方法测试以下程序段voidDo(intX,intA,intB){1if((A1)&&(B==0))2X=X/A;3if((A==2)||(X1))4X=X+1;5}要求(1)画出程序段的控制流图(2)分别以条件覆盖,路径覆盖方法设计测试用例方法测试用例执行路径条件覆盖X=3,A=1,B=0X=1,A=2,B=11-3-4-51-3-4-5路径覆盖X=3,A=1,B=0X=1,A=1,B=0X=1,A=2,B=1X=1,A=3,B=11-2-3-4-51-3-51-3-4-51-2-3-5123543、以此为例根据业务流程设计用户登录的流程图,然后依据流程图设计手动测试用例(假如密码只允许试三次)。《完美测试》p58业务流程图如下:单击登录按钮开始进入如下界面,然后输入账号或者邮件地址、密码、验证码。账号或邮箱:密码:验证码:下次登录(按钮)登录按钮点击“登录”按钮输入口令点击“登录”按钮输入邮件地址,重设口令点击“忘记密码?”标记“下次自动登录”输入账号提示“用户名或口令不对”点“看不清,换一张”输入邮箱提示“关闭浏览器退出”输入验证码下次自动登录忘记口令验证时候正确用户名/口令验证是通过否开始否是已输入3次?成功登录结束不通过否是结束否测试用例:(1)输入错误的账号,其他各项正确。(2)输入错误的邮件地址,其他各项正确。(3)输入正确的账号,输入错误的口令,验证码正确。(4)输入正确的账号和口令,输入错误的验证码。(5)输入正确的邮件地址,输入错误的口令,验证码正确(6)输入正确的邮件地址和口令,输入错误的验证码(7)输入正确的账号,口令和验证码(8)输入正确的邮件地址,口令和验证码(9)输入正确的账号,口令和验证码,点击“看不清,换一张”(10)输入正确的账号,口令和验证码,标记“下次自动登陆”(11)输入正确的账号,口令和验证码,去掉“输入正确的账号,口令和验证码”标记(12)输入正确的邮件地址,口令和验证码,标记“下次自动登陆”(13)输入正确的账号,输入错误的口令,验证码正确,点击“登陆”按钮,重复进行3次以上(14)输入错误的账号,输入正确的口令和验证码,点击“登陆”按钮,重复进行3次以上(15)输入邮件地址,点击“忘记口令”,按提示进行操作(16)什么都不输,点击“忘记口令”,按提示进行操作第6章等价类[例3]某省高考招生,规定考生的年龄在16周岁至25周岁之间,即出生年月从1978年7月至1987年6月。高考报名程序具有自动检测输入程序的功能。若年龄不在此范围内,则显示拒绝报名的信息。试用等价类划分法为该程序设计测试用例。设计方法:假定年龄用6位整数表示,前4位表示年份,后2位表示月份。(1)划分有效等价类和无效等价类。输入数据有出生年月、数值本身、月份3个等价类,并为此划分有效等价类和无效等价类,见下表:输入条件有效等价类无效等价类出生年月①6位数字字符②有非数字字符③少于6位数字字符④多于6位数字字符数值本身⑤在197807~198706之间⑥197807⑦198706月份⑧在01~12之间⑨等于00⑩12(2)设计有效等价类需要的测试用例。为覆盖①、⑤、⑧三个有效等价类,可以设计一个共用的测试用例:测试数据预期结果测试范围198011输入有效①、⑤、⑧(3)为每一个无效等价类至少设计一个测试用例:测试数据预期结果测试范围May,79输入无效②19803输入无效③1981112输入无效④197602年龄不合格⑥199003年龄不合格⑦197900输入无效⑨198013输入无效⑩等价类划分法显然比随机地选择测试用例要优越得多,但它的不足是忽略了某些效率较高的测试情况。[例6]有一程序,其规格说明书规定:输入两个字符,当第一个字符是A或B,且第二个字符是数字时修改文件;若第一个字符不是A,也不是B时,输出错误信息M1;若第二个字符不是数字时,输出错误信息M2。试用因果图法设计测试用例。设计方法:(1)分析规格说明书中,并确定“因”与“果”。得到的“因”是:C1----第一个字符是AC2----第一个字符是BC3----第二个字符是数字得到的“果”是:G1----修改文件G2----输出错误信息M1G3----输出错误信息M2(2)画出因果图。(一般如有可能,应将节点按时序竖列)∨∧E图9.13因果图(3)根据因果图生成判定,并设计测试用例。规则123456因C1100001C2010010C3110100果G1110

1 / 17
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功