白盒测试用例练习_第1页
白盒测试用例练习_第2页
白盒测试用例练习_第3页
白盒测试用例练习_第4页
白盒测试用例练习_第5页
已阅读5页,还剩33页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、白盒测试用例练习白盒测试用例练习1 .为以下所示的程序段设计一组测试用例,要 求分别满足语句覆盖、判定覆盖、条件覆盖、判 定/条件覆盖、组合覆盖和路径覆盖,并画出相 应的程序流程图。void DoWork (int x,int y,int z)(int k=0,j=0;if ( (x>3)&&(z<10)k=x*y-1;j=sqrt(k);语句块 1if ( (x=4)|(y>5)j=x*y+10;语句块2j=j%3;语句块3k=aY cj=j%3由这个流程图可以看出,该程序模块有4条不同的路径:P1:(a-c-e)P2:(a-c-d)P3:(a-b-e)P4

2、:(a-b-d)将里面的判定条件和过程记录如下:判定条件 M=x>3 and z<10判定条件N=x=4 or y>51、语句覆盖测试用例 输入输 出判定M的 取值判定N的 取值覆盖 路径x=4,z=5,y=8k=31,j=0TP1(a-c-e)2、判定覆盖p1和p4可以作为测试用例,其中p1作为取 真的路径,p4作为取反的路径。测试用例输 入输 出判定M的取判定N的取值覆盖路 径值x=4,z=5,y=8k=31,j=0TTP1(a-c-e)x=2,z=11,y=5k=0,j=0FFP4(a-b-d)也可以让测试用例测试路径 P2和P3o相应的两组输入数据如下:测试用例 输入

3、输出判 定M 的 取 值判 定N 的 取 值覆盖 路径x=5,z=5,y=4k=19,j=sqrt(19)%3TFP2(a-c- d)x=4,z=11,y =6k=0,j=1FTP3(a-b- e)3、条件覆盖对于M : x>3取真时T1 ,取假时F1;z<10取真时T2,取假时F2;对于N: x=4取真时T3,取假时F3;y>5取真时T4,取假时F4。条件:x>3,z<10,x=4,y>5条件:x<=3,z>=10,x!=4,y<=5根据条件覆盖的基本思路,和这8个条件取值, 组合测试用例如表所示:测试用例 输入输 出取 值条 件具体取值

4、条件覆盖路 径x=4,z=5,y =8k=3 1, j=0T1T2T3T4x>3,z<10,x=4,y>5P1(a-c-e)x=3,z=11, y=5k=0, j=0F1,F2,F3, F4x<=3,z>=10,x!=4,y<=5P4(a-b-d)4、判定/条件覆盖测试用例 输入输 出取 值具体取值条件覆盖路 径条 件x=4,z=5,yk=3T1x>3,z<10,x=4,y>P1(a-c=81, j=0T2T3T45-e)x=3,z=11, y=5k=0, j=0F1,F2,F3, F4x<=3,z>=10,x!=4,y<

5、=5P4(a-b-d)5、组合覆盖条件组合1)x>3,z<102)x>3,z>=103) x<=3,z<10 4)x<=3,z>=105)x=4,y>56)x=4,y<=57)x!=4,y>58)x!=4,y<=5测试用例输 入输出覆盖条件取 值覆 盖 条覆盖路 径件 组 合x=4,z=5,y=6k=23 ,j=1T1,T2,T3,T41,5P1(a-c-e )x=4,z=10,y=5k=0, j=0T1,F2,T3,F42,6P2(a-c-d )x=3,z=5,y=6k=14 j=1F1,T2,F3,T43,7P3(a-

6、b-e )z=3,z=10,y=5k=0, j=2F1,F2,F3,F44, 8P4(a-b-d )6、路径覆盖测试用例 输入输出覆 盖 条 件 取 值覆 盖 条 件 组 合覆盖路 径x=4,z=5,y =8k=31,j=0T1,T2,T3, T41 ,5P1(a-c- e)x=5,z=5,y =4k=19,j=sqrt(19 )%3T1,T2,F3,1, 8P2(a-c- d)F4x=4,z=11, y=6k=0,j=1T1, F2, T3 , T42, 5P3(a-b- e)x=2,z=11, y=5k=0,j=0F1,F2,F3, F44,8P4(a-b- d)题目二:三角形问题在三角形

7、计算中,要求输入三角型的三个边 长:A、B和Co当三边不可能构成三角形时提 示错误,可构成三角形时计算三角形周长。若是 等腰三角形打印“等腰三角形”,若是等边三角 形,则提示“等边三角形”。画出程序流程图、 控制流程图、计算圈复杂度V(g),找出基本测试路径一、核心程序代码/*判断三角形的类*/public class TriangleTestMethod /*判断三角形的种类。参数 a, b, c分别为三角形的三边,* 返回的参数值为0,表示非三角形;* 为1,表示普通三角形;* 为2,表示等腰三角形;* 为3,表示等边三角形。*/public static int comfirm(int

8、a, int b, int c) if(a + b > c) && (b + c > a) && (a + c > b) /判断为三角形if(a = b) && (b =c) /判断为等边三角形return 3;if(a = b) | (b = c) | (a = c) /判断为等腰三角形return 2;else /判断为普通三角形return 1;else /为非三角形return 0;、程序流程图开始输入数三、测试用例1.语句覆盖测试用例输入期望输 出覆盖对 象测试结 果Casela=1, b=2, c=30,0Case2

9、a=3,1,1b=4, c=5,Case3a=3, b=3, c=42,2Case4a=3, b=4, c=53,32.判定覆盖测试用例输入期望输 出覆盖对 象测试结 果Case11 a=1, b=2, c=30,0Case12 a=3, b=4, c=51,,1Case13 a=3, b=3, c=42,,2Case14 a=3, b=4, c=53,33.条件覆盖测试用例输入期望输 出覆盖对 象测试结 果Case5a=1, b=6, c=70F1,T2, T30Case6a=7, b=1, c=60T1,F2, T30Case7a=1,0T1,0b=7, c=6T2, F3Case8a=3

10、,2T1,2b=3,T2,c=4T3,T4,F5,T6,F7, F8Case9a=3,2T1,2b=4,T2,c=3T3,F4,F5,F6,F7, T8Case10a=4,2T1,2b=3,T2,c=3T3,F4,T5,F6,T7, F84.条件-判定覆盖测试用例输入期望输 出覆盖对 象测试结 果Case15 a=1, b=6, c=70F1,T2, T30Case16 a=7, b=1, c=60T1,F2, T30Case17 a=1, b=7, c=60T1,T2, F30Case18 a=3, b=3, c=42T1,T2,T3,T4,F5,T6,F7, F82Case19 a=3,2

11、T1,2b=4, c=3T2,T3,F4,F5,F6,F7, T8Case20a=4, b=3, c=32T1,T2,T3,F4,T5,F6,T7, F82Case21a=3, b=3, c=33F1,T2, T3(3,,)3Case22a=3, b=4, c=51T1, F2, T3 (, ,1)5.条件组合覆盖测试用例输入期望输 出覆盖对 象测试结 果Case23 a=1, b=6, c=70F1,T2, T30Case24 a=7, b=1, c=60T1,F2, T30Case25 a=1, b=7, c=60T1,T2, F30Case26 a=3, b=3, c=42T1,T2,T

12、3,T4,F5,T6,F7, F82Case27 a=3,2T1,2b=4, c=3T2,T3,F4,F5,F6,F7, T8Case28a=4, b=3, c=32T1,T2,T3,F4,T5,F6,T7, F82Case29a=3, b=4, c=51T1,T2,T3,F4,F5,F6,F7, F81Case30a=3, b=4,2T1,T2,2Retiixnc=3四、程序控制流图T3,F4,F5,F6,F7, T8件组合, 无法到达结束备注其他条Return 0Return 3Return 2Return 1基本路径覆盖测试用例输入期覆盖对象测望 输 出试 结 果Case31a=1, b

13、=6,c=70A->D0Case32a=7, b=6,c=10A->B->D0Case33a=1, b=7,c=60A->B->C->D0Case34a=3,b=33A->B->C->E->G->H3,c=3Case35a=3, b=3,c=42A->B->C->E->G->I2Case36a=4, b=3,c=32A->B->C->E->F->H2Case37a=3, b=4,c=32A->B->C->E->F->J->H2Case

14、38a=3,1A->B->C->E->F->J->K1b=4, c=5题目三:计算生日是星期几已知公元1年1月1日是星期一。编写一个程序, 只要输入年月日,就能回答那天是星期几。应用 逻辑覆盖方法和基路径测试方法为上面的问题 设计测试用例一.程序代码艇yea i if s、0;侪11:i0;国网蛤讨 month,int day) 除T%4=0 && year%100!=0 )|<1) return 0;:case 3:qase: 7 5:case ,:case 10:caseiz:iT(day>3n)return骷、 4:case

15、 6:case 9:case翼>30溷P1&&邮 29) returndefauife=0&&day>28)return 0;urn 0;break;return pass;)nth,day,sumday;moyear-;thy);输入onty+20+%7month+1)/5+year+yek;IsIsIsIsIsIsIs榔aoui<14;i+).画出程序的控制流图i.程序流程图如下:输入年月 日 year,month,day计算星期数 sumday=公式Month-=12;year+;Check()函JL1617n18leap=119year

16、<1 |da:2021return 0ont381057252322return 0day>312426return 0nnreturn283031282932n33leap=0& &day>28(year%4=0 && year%100!=0 )| year%400=0leap=1& &day>2912 4return pass- day>3027-02.程序控制流图如下:16171921222423313334end3,用基本路径的测试路径编号基本路径编号基本路径1(16)(17)(19) (21)(24)(31

17、)(33)11(0)2(34)12(0)3(21)(34)13(0)4(21)(22)(34)14(0)5(21)(23)(34)15(0)(11)6(21)(24)(34)16(0)(12)7(21)(31)(34)17(0)(13)8(21)(22)(33)18(0)(14)9(21)(23)(33)10(21)(31)(33)条件:编号条件编号编号T1month=1T13year%100!=0T25month=2T2month=2T14year%100!=0T26month=3T3month=13T15year%400=0T27month=4T4month=14T16year<1T

18、28month=5T5sumday=0T17day<1T29month=6T6sumday=1T18month=1T30month=7T7sumday=2T19day>31T31month=8T8sumday=3T20day>30T32month=9T9sumday=4T21leap=1T33month=10T10sumday=5T22leap=0T34month=11T11sumday=6T23day>29T35month=12T12year%4=0T24day>284.测试用例用例 编号输入的数 据预期的输 出实际的输 出执行的路径覆盖的条件1:2012 2

19、1WednesdayWednesday(0)T12,T13,T25,T21,T2,T4,T721:2012 3 1ThurdayThurday(0)T12,T13,T26,T83:2012 4 6FridayFriday(0)T12,T13,T27,T94:2012 5 5SaturdaySaturday(0)(11)T12,T13,T28,T1051:2012 6 3SundaySunday(0)(12)T12,T13,T29,T116:2012 730MondayMonday(0)(13)T12,T13,T30,T57:2000815TuesdayTuesday(0)(14)T12,T15

20、,T31,T68 1:2012931错误提示错误提示(0)T12,T13,T20,T329:2013 2 8WednesdayWednesday(17乂19) (21)(24)(31)(33)T25,T22,T2,T4,T710:2013012错误提示错误提示(34)T1711 1:2013 1 26SaturdaySaturday(21)(34)T18,T1,T3,T1012:2013 10 33错误提示错误提示(19) (21)(22)(34)T33,T1913:2013 11 31错误提示错误提示(19) (21)(23)(34)T34,T2014:2012 2 30错误提示错误提示(2

21、1)(24)(34)T12,T13,T25,T21,T2311512013229错误提示错误提示(21)(31)(34)T25, T24162013 12 31SaturdaySaturday(19) (21)(22)(33)T35, T10172013 6 30SundaySunday(19) (21)(23)(33)T29,T111812013215FridayFriday(21)(24)(31)(33)T25,T22,T2,T4,T9190 12 12错误提示错误提示(34)T16题目四:选择排序下面是选择排序的程序)其中 datalist是数 据表,它有两个数据成员:一是元素类型为 日ement的数组V,另一个是数组大小n。算法 中用到两个操作,一是取某数组元素Vi的关键 码操作getKey (), 一是交换两数组元素内容的 操作 Swap():void SelectSort ( datalist & list ) /对表 list.V0到 list.Vn-1进行 排序,n是表当前长度。for ( int i = 0;

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论