资源描述:
《实验4白盒测试(二)new.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、南京信息工程大学实验(实习)报告实验四白盒测试(二)一、实验目的理解白盒测试的基本方法,掌握语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、条件组合覆盖和路径覆盖等代码覆盖测试策略,并能运用相应的方法设计测试用例二、实验时间2学时三、实验准备主流PC机一套,要求安装windows操作系统和Office工具及相应编程软件;四、实验内容1.题目一:使用逻辑覆盖测试方法测试以下程序段voidDoWork(intx,inty,intz){1intk=0,j=0;2if((x>3)&&(z<10))3{4k=x*y-1;5j=sqrt(k);6}7if((x==4)
2、
3、
4、(y>5))8j=x*y+10;9j=j%3;10}说明:程序段中每行开头的数字(1~10)是对每条语句的编号。(1)画出程序的控制流图(用题中给出的语句编号表示)。(2)分别以语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、条件组合覆盖和路径覆盖方法设计测试用例,并写出每个测试用例的执行路径(用题中给出的语句编号表示)。2.题目二:请按要求对下面的java代码进行测试。代码的功能是:用折半查找法在元素呈升序排列的数组中查找值为key的元素。publicintbinSearch(intarray[],intkey){1intmid,low,high;2low=
5、0;3high=array.length-1;4while(low<=high){5mid=(low+high)/2;6if(key==array[mid])7returnmid;8elseif(key5)j=x*y+10j=j%3En
6、dstartk=0,j=0(x>3)and(z<10)truetruefalsefalse语句覆盖用例编号xyz条件取值执行路径1465(x>3)&&(z<10)(x==4)
7、
8、(y>5)123456789102265y>51279103538(x>3)&&(z<10)123456791044610(x==4)
9、
10、(y>5)1278910判定覆盖用例编号xyz条件取值执行路径1465(x>3)&&(z<10)(x==4)
11、
12、(y>5)123456789102538(x>3)&&(z<10)123456791034610(x==4)
13、
14、(y>5)1278910
15、条件覆盖用例编号xyz条件取值执行路径1538(x>3)&&(z<10)123456791024610(x==4)
16、
17、(y>5)1278910判定/条件覆盖①x>3;②z<10;③x==4;④y>5;用例编号xyz覆盖条件执行路径1465①真②真③真④真1234567891022413①假②假③假④假12367910条件组合覆盖①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;为
18、假时,即y≤5,记作F4。编号具体条件取值覆盖条件判定取值1x>3,z<10T1,T2第一个判定:取真分支2x>3,z≤10T1,F2第一个判定:取假分支3x≤3,z<10F1,T2第一个判定:取假分支4x≤3,z≤10F1,F2第一个判定:取假分支5x==4,y>5T3,T4第二个判定:取真分支6x==4,y≤5T3,F4第二个判定:取真分支7x≠4,y>5F3,T4第二个判定:取真分支8x≠4,y≤5F3,F4第二个判定:取假分支用例编号xyz覆盖条件执行路径1465T1,T2,T3,T41234567891024410T1,F2,T3,F4123678
19、9103368F1,T2,F3,T412367891042410F1,F2,F3,F412367910路径覆盖用例编号xyz执行路径146512345678910226512791035381234567910446101278910第二题程序流程图控制流图1234567891011121314R3R4R1R2(2)计算此程序段的McCabe复杂性若设P为控制流图中的判定节点数,则有V(G)=P+1如图中有3个判定节点,因此其环路复杂性为V(G)=P+1=3+1=4,所以该程序的环路复杂性为4。(3)独立路径:PATH1:1-2-3-4-13-14PATH2
20、:1-2-3-4-5-6-7-12-4-13-14P