南京信息工程大学 实验(实习)报告
实验四 白盒测试(二)
一、 实验目的
理解白盒测试的基本方法,掌握语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、条件组合覆盖和路径覆盖等代码覆盖测试策略,并能运用相应的方法设计测试用例
二、 实验时间
2学时
三、 实验准备
主流PC 机一套,要求安装windows 操作系统和Office 工具及相应编程软件;
四、 实验内容
1.题目一:使用逻辑覆盖测试方法测试以下程序段 void DoWork (int x,int y,int z){ 1 int k=0, j=0;
2 if ( (x>3)&&(z<10) ) 3 {
4 k=x*y-1; 5 j=sqrt(k); 6 }
7 if((x==4)||(y>5)) 8 j=x*y+10; 9 j=j%3; 10 }
说明:程序段中每行开头的数字(1~10)是对每条语句的编号。 (1)画出程序的控制流图(用题中给出的语句编号表示)。
(2)分别以语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、条件组合覆盖和路径覆盖方法设计测试用例,并写出每个测试用例的执行路径(用题中给出的语句编号表示)。 2.题目二:
请按要求对下面的java 代码进行测试。代码的功能是:用折半查找法在元素呈升序排列的数组中查找值为key 的元素。
public int binSearch ( int array[], int key ) { 1 int mid, low, high; 2 low = 0;
3 high = array.length-1; 4 while ( low <= high ) {
5 mid = (low +high)/2; 6 if ( key = = array [mid] ) 7 return mid;
8 else if ( key < array [mid] ) 9 high = mid -1; 10 else
11 low = mid + 1 12 }
13 return -1; 14 }
(1) 画出此程序段的控制流图;
(2)试计算此程序段的McCabe 复杂性;
(3)用独立路径覆盖法给出测试路径;并为各测试路径设计测试用例。
五、实验步骤
程序流程图
start k=0,j=0 true ( x>3)and ( z<10 ) false k = x*y - 1 j = sqrt(k) true (x = = 4) or ( y > 5) false j = x*y + 10 j = j % 3 End
语句覆盖 用例编号 x 1 2 3 4 4 2 5 4 判定覆盖 用例编号 x 1 2 3 4 5 4 y 6 3 6 z 5 8 条件取值 (x>3)&&(z<10) (x==4)||(y>5) (x>3)&&(z<10) 执行路径 y 6 6 3 6 z 5 5 8 10 条件取值 (x>3)&&(z<10) (x==4)||(y>5) y>5 (x>3)&&(z<10) (x==4)||(y>5) 执行路径
1 2 3 4 5 6 7 8 9 10 1 2 7 9 10 1 2 3 4 5 6 7 9 10 1 2 7 8 9 10 1 2 3 4 5 6 7 8 9 10 1 2 3 4 5 6 7 9 10 1 2 7 8 9 10 10 (x==4)||(y>5) 条件覆盖
用例编号 x 1 2 5 4 y 3 6 z 8 条件取值 (x>3)&&(z<10) 执行路径 1 2 3 4 5 6 7 9 10 1 2 7 8 9 10 10 (x==4)||(y>5) 判定/条件覆盖 ① x > 3 ; ② z < 10 ;③ x = = 4 ;④ y > 5 ;
用例编号 1 2 x 4 y 6 z 5 13 覆盖条件 ①真②真③真④真 ①假②假③假④假 执行路径 1 2 3 4 5 6 7 8 9 10 1 2 3 6 7 9 10 2 4 条件组合覆盖 ① x > 3 ; ② z < 10 ;③ x = = 4 ;④ y > 5 ;
令 x > 3 为真时,记作T1 ;为假时,即x ≤ 3 , 记作F1 ;
z< 10 为真时,记作T2 ;为假时,即z ≤ 10, 记作F2 ; x = = 4 为真时,记作T3 ;为假时,即x ≠ 4 , 记作F3 ; y > 5 为真时,记作T4 ;为假时,即y ≤ 5 , 记作F4 。 编号 1 2 3 4 5 6 7 8 用例编号 x 1 2 3 4 4 4 3 2 y 6 4 6 4 y 6 6 3 6 z 5 10 8 10 z 5 5 8 10 覆盖条件 T1,T2,T3,T4 T1,F2,T3,F4 F1,T2,F3,T4 F1,F2,F3,F4 执行路径 1 2 3 4 5 6 7 8 9 10 1 2 7 9 10 1 2 3 4 5 6 7 9 10 1 2 7 8 9 10 执行路径 1 2 3 4 5 6 7 8 9 10 1 2 3 6 7 8 9 10 1 2 3 6 7 8 9 10 1 2 3 6 7 9 10 具体条件取值 x > 3 , z < 10 x > 3 , z ≤ 10 x ≤ 3 ,z < 10 x ≤ 3 ,z ≤ 10 x = = 4 ,y > 5 x = = 4 ,y ≤ 5 x ≠ 4 , y > 5 x ≠ 4 , y ≤ 5 覆盖条件 T1,T2 T1,F2 F1,T2 F1,F2 T3,T4 T3,F4 F3,T4 F3,F4 判定取值 第一个判定:取真分支 第一个判定:取假分支 第一个判定:取假分支 第一个判定:取假分支 第二个判定:取真分支 第二个判定:取真分支 第二个判定:取真分支 第二个判定:取假分支 路径覆盖 用例编号 x 1 2 3 4 4 2 5 4
第二题
程序流程图
STARTLow=0High=array length-1Low<=highMid=(low+high)/2YReturn midKey==arry[mid]NNReturn-1endNLow=mid+1
控制流图
YKey
搜索“diyifanwen.net”或“第一范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,第一范文网,提供最新教学研究实验4白盒测试(二)new 全文阅读和word下载服务。
相关推荐: