2016年东南大学软件测试白盒测试实验二

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实用文档

软件测试基础与实践实验报告

实验名称:白盒测试实验二

实验地点:计算机软件楼

实验日期:2016.11.9

学生姓名:王鑫

学生学号:71114430

东南大学软件学院制

实用文档

一、实验目的

(1)巩固白盒测试知识,能熟练应用基本路径测试方法设计测试用例

(2)学习测试用例的书写

二、实验内容

(一)实验一: 基本路径测试技术实验

运用基本路径测试方法,分别对程序WeekB 中的方法IsCorrect()和getResult()进行测试。要求:

(1) 画出程序流图。

(2) 计算环复杂度。

(3) 找到基本路径集合。

(4) 设计具体的测试用例。

方法IsCorrect()

1.画出程序流图

bool IsCorrect(int y,int m,int d)

{

if(y<1)

return false;

else

{

if(((y%4==0)&&(y_x0010_0!=0))||(y@0==0))

maxA[1]=29;

if(m<0||m>12)

return false;

else

{

if(d>maxA[m-1])

return false;

else

return true;

}

}

实用文档

78 end

2.计算环复杂度

V(G)=流图中的区域数量=8

3.找到基本路径集合

设计具体的测试用例4.

基本路径实际输出期望输出编号输入执行条件实用文档

条件判断编号6

3

3y 5x 5

3x

1

T P1

F T P2 F F

F T P3 F F F

T P4 F F F F F

F F F F F P5 F

T P6 F F T

T P7 F F T F

T

T T P8 T

F

方法getResult ()

1.画出程序流图

int getResult(int y,int m,int d)

{

long totalDays=0;

for(int i=1;i

{

if(((i%4==0)&&(i_x0010_0!=0))||(i@0==0)) totalDays+=366;

else

totalDays+=365;

}

if(((y%4==0)&&(y_x0010_0!=0))||(y@0==0)) maxA[1]=29;

else

maxA[1]=28;

for(int i=1;i

{

totalDays+=maxA[i-1];

}

totalDays+=(d-1);

maxA[1]=28;

实用文档

return (totalDays%7);

}

实用文档

Begi1,445,6,889,110,1115,16,113,118 en

2计算环复杂

V(G)=流图中的区域数量=9

实用文档

3.找到基本路径集合

设计具体的测试用例4.

编号条件判断

8y 8 4y 4

8x 4x

F P1 F

F F P2

T F P3

F T P4 F

T P5 T

F F F F P6

F T P7 F F

F F P8 F T F

F

T

T

P9 F

实用文档

三、实验体会

(1)没有测出缺陷,但实际上存在缺陷。这说明动态白盒测试之路径测试并不能完全测出缺陷。关键在于测试用例是否则测出缺陷。

不过比较实验一中WeekA.java中代码,有改进:

1.解决了year=0的问题

2.之前month=0会抱错,这次不会

3.对于错误输出,会输出“输入错误,请重新输入”,而不是也给出结果

(2)程序依然存在缺陷,如month取值为0,程序显示“X年X月X日是星期计算错

误”;day取值为0或者负数,程序依然显示“X年X月X日星期计算错误”。而事实上应该显示“输入错误,请重新输入”。

改进:getResult()函数中,

if(((y%4==0)&&(y_x0010_0!=0))||(y@0==0))

maxA[1]=29;

else

maxA[1]=28;

可以删去,因为在IsCorrect()函数中已经判断过了。

(3)关键:1.做出正确有美观的流图。“正确”保证了正确计算出环复杂度和设计出基

本路径集合,而“美观”保证了方便设计出正确测试用例。

2.设计出正确的基本路径集合,最好依照从上到下或者从下到上的遍历顺

序遍历流图。

3.对应基本路径集合中每条路径设计出正确测试用例。

难点:1.做出正确有美观的流图;

2.设计出正确的基本路径集合,不要过多,有些可以由集合中已经存在的路径线性表示。

3. 对应基本路径集合中每条路径设计出正确测试用例,有些路径可能不存在测试用例。

相关文档
最新文档