1、白盒测试用例练习白盒测试用例练习白盒测试用例练习1为以下所示的程序段设计一组测试用例,要求分别满足语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、组合覆盖和路径覆盖,并画出相应的程序流程图。void DoWork (int x,int y,int z) int k=0,j=0; if ( (x3)&(z5) ) j=x*y+10; /语句块2 j=j%3; /语句块3 a Y c N b e Y N d 由这个流程图可以看出,该程序模块有4条不同的路径:P1:(a-c-e) P2:(a-c-d)P3:(a-b-e) P4:(a-b-d)将里面的判定条件和过程记录如下:判定条件Mx3 and z5
2、1、 语句覆盖测试用例输入输出判定M的取值判定N的取值覆盖路径x=4,z=5,y=8k=31,j=0TTP1(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和P3。相应的两组输入数据如下:测试用例输入输出判定M的取值判定N的取值覆盖路径x=5,z=5,y=4k=19,j=sqrt(19)%3TFP2(a-c-d)x=4,z=11,y=6k=0,j=1
3、FTP3(a-b-e)3、条件覆盖对于M:x3取真时T1,取假时F1; z5取真时T4,取假时F4。条件:x3,z5条件:x=10,x!=4,y3,z5P1(a-c-e)x=3,z=11,y=5k=0, j=0F1,F2,F3,F4x=10,x!=4,y3,z5P1(a-c-e)x=3,z=11,y=5k=0, j=0F1,F2,F3,F4x=10,x!=4,y3,z3,z=103) x=3,z10 4)x=105)x=4,y5 6)x=4,y5 8)x!=4,y c) & (b + c a) & (a + c b) / 判断为三角形 if(a = b) & (b =c) / 判断为等边三角形
4、 return 3; if(a = b) | (b = c) | (a = c) / 判断为等腰三角形 return 2; else / 判断为普通三角形 return 1; else / 为非三角形 return 0; 二、程序流程图三、测试用例 1.语句覆盖测试用例输入 期望输出 覆盖对象 测试结果 Case1 a=1, b=2, c=3 01 , 0Case2a=3, b=4, c=5 11 , , , 2 1Case3a=3, b=3, c=4 21 , , , 2 2Case4a=3, b=4, c=5 31 , , 2 32.判定覆盖测试用例输入 期望输出 覆盖对象 测试结果 Ca
5、se11a=1, b=2, c=3 02 , 0Case12a=3, b=4, c=5 13 , , , 4 1Case13a=3, b=3, c=4 23 , , , 4 2Case14a=3, b=4, c=5 33 , , 4 33.条件覆盖测试用例输入 期望输出 覆盖对象 测试结果 Case5a=1, b=6, c=7 0 F1, T2, T3 0 Case6a=7, b=1, c=6 0 T1, F2, T3 0 Case7a=1, b=7, c=6 0 T1, T2, F3 0 Case8a=3, b=3, c=4 2 T1, T2, T3, T4, F5, T6, F7, F8
6、2 Case9a=3, b=4, c=3 2 T1, T2, T3, F4, F5, F6, F7, T8 2 Case10a=4, b=3, c=3 2 T1, T2, T3, F4, T5, F6, T7, F8 2 4.条件-判定覆盖测试用例输入 期望输出 覆盖对象 测试结果 Case15a=1, b=6, c=7 0 F1, T2, T3 0 Case16a=7, b=1, c=6 0 T1, F2, T3 0 Case17a=1, b=7, c=6 0 T1, T2, F3 0 Case18a=3, b=3, c=4 2 T1, T2, T3, T4, F5, T6, F7, F8
7、2 Case19a=3, b=4, c=3 2 T1, T2, T3, F4, F5, F6, F7, T8 2 Case20a=4, b=3, c=3 2 T1, T2, T3, F4, T5, F6, T7, F8 2 Case21a=3, b=3, c=3 3 F1, T2, T3 (3 , , ) 3 Case22a=3, b=4, c=5 1 T1, F2, T3 (, , , ) 1 5.条件组合覆盖测试用例输入 期望输出 覆盖对象 测试结果 Case23a=1, b=6, c=7 0 F1, T2, T3 0 Case24a=7, b=1, c=6 0 T1, F2, T3 0
8、Case25a=1, b=7, c=6 0 T1, T2, F3 0 Case26a=3, b=3, c=4 2 T1, T2, T3, T4, F5, T6, F7, F8 2 Case27a=3, b=4, c=3 2 T1, T2, T3, F4, F5, F6, F7, T8 2 Case28a=4, b=3, c=3 2 T1, T2, T3, F4, T5, F6, T7, F8 2 Case29a=3, b=4, c=5 1 T1, T2, T3, F4, F5, F6, F7, F8 1 Case30a=3, b=4, c=3 2 T1, T2, T3, F4, F5, F6,
9、 F7, T8 2 备注 其他条件组合,无法到达结束 四、程序控制流图基本路径覆盖测试用例输入 期望输出 覆盖对象 测试结果 Case31 a=1, b=6, c=7 0 A-D 0 Case32 a=7, b=6, c=1 0 A-B-D 0 Case33 a=1, b=7, c=6 0 A-B-C-D 0 Case34 a=3, b=3, c=3 3 A-B-C-E-G-H 3 Case35 a=3, b=3, c=4 2 A-B-C-E-G-I 2 Case36 a=4, b=3, c=3 2 A-B-C-E-F-H 2 Case37 a=3, b=4, c=3 2 A-B-C-E-F-J-H 2
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1