白盒测试报告 三角形

  • 格式:doc
  • 大小:73.00 KB
  • 文档页数:4

白盒测试

一、 实验目的

1、 掌握白盒测试的基本方法;

2、 掌握白盒测试用例的编写。

二、 实验要求

1、 根据给出的程序分别使用语句覆盖、判定覆盖、条件覆盖、判定-条件覆盖、条件组合覆盖、路径覆盖、基本路径覆盖来设计相应的测试用例。

2、 输入数据进行测试,执行测试用例。

三、 实验内容

程序:用VC++ 6.0编写三角形函数:

三角形中,要求输入三边的长度:a,b,c,当三边不可能构成三角形时提示错误,可构成三角形时计算三角形的周长。若是等腰三角形打印“等腰三角形”,若是等边三角形,则打印“等边三角形”。

源代码:

#include

using namespace std;

double triangleType(double a,double b,double c)

{

double l;

l=a+b+c;

if(a+b<=c&&a+c<=b&&b+c<=a)

cout<<"error:不能构成三角形"<

else if(a==b&&a==c)

cout<<"等边三角形"<

else if(a==b||a==c||b==c)

cout<<"等腰三角形"<

else

cout<<"三角形周长:"<

return 0;

}

void main(){

double x,y,z;

cout<<"输入三个边长:"<

cin>>x>>y>>z;

triangleType(x,y,z);

}

四、实验步骤

1、依次按照每种方法的步骤来写出测试用例(方法如果需要的流程图的话,也必须写上)

语句覆盖测试

编号 输入数据 预期输出结果 实际结果

01 1,2,3 error:不能构成三角形 三角形周长:6

02 1,1,1 等边三角形三角形周长:3 等边三角形

03 3,3,2 等腰三角形 三角形周长:8 等腰三角形

判定覆盖测试

编号 输入数据 预期输出结果 实际结果

01 1,2,3 error:不能构成三角形 三角形周长:6

02 3,4,5 三角形周长:12 三角形周长:12

03 1,1,1 等边三角形三角形周长:3 等边三角形

04 1,1,2 error:不能构成三角形 等腰三角形

条件覆盖测试

编号 输入数据 预期输出结果 实际结果

01 1,2,3 error:不能构成三角形 三角形周长:6

02 3,4,5 三角形周长:12 三角形周长:12

03 1,1,1 等边三角形三角形周长:3 等边三角形

04 3,3,2 等腰三角形 三角形周长:8 等腰三角形

05 1,1,2 error:不能构成三角形 等腰三角形

开始

输入三条边

是否为三角形

输出:error:不能构成三角形 是否为等边三角形

等边三角形 输出周长

等腰三角形 输出周长

结束 是否为等腰三角形

输出周长 是

是 否

2、测试,得出结果。

3、如果发现缺陷,找出缺陷所在并修改程序。

修改后的程序为:

#include

using namespace std;

double triangleType(double a,double b,double c)

{

double l;

l=a+b+c;

if(a+b<=c||a+c<=b||b+c<=a)

cout<<"error:不能构成三角形"<

else {if(a==b&&a==c)

cout<<"等边三角形"<

else if(a==b||a==c||b==c)

cout<<"等腰三角形"<

cout<<"三角形周长:"<

return 0;

}

void main(){

double x,y,z;

cout<<"输入三个边长:"<

cin>>x>>y>>z;

triangleType(x,y,z);

}

再次测试的结果。

语句覆盖测试

编号 输入数据 预期输出结果 实际结果

01 1,2,3 error:不能构成三角形 error:不能构成三角形

02 1,1,1 等边三角形三角形周长:3 等边三角形三角形周长:3

03 3,3,2 等腰三角形 三角形周长:8 等腰三角形 三角形周长:8

判定覆盖测试

编号 输入数据 预期输出结果 实际结果

01 1,2,3 error:不能构成三角形 error:不能构成三角形 02 3,4,5 三角形周长:12 三角形周长:12

03 1,1,1 等边三角形三角形周长:3 等边三角形三角形周长:3

04 1,1,2 error:不能构成三角形 error:不能构成三角形

条件覆盖测试

编号 输入数据 预期输出结果 实际结果

01 1,2,3 error:不能构成三角形 error:不能构成三角形

02 3,4,5 三角形周长:12 三角形周长:12

03 1,1,1 等边三角形三角形周长:3 等边三角形三角形周长:3

04 3,3,2 等腰三角形 三角形周长:8 等腰三角形 三角形周长:8

05 1,1,2 error:不能构成三角形 error:不能构成三角形

五、实验总结:

白盒测试是一种被广泛使用的逻辑测试方法,是由程序内部逻辑驱动的一种单元测试方法。只有对程序内部十分了解才能进行适度有效的白盒测试。但是贯穿在程序内部的逻辑存在着不确定性和无穷性,尤其对于大规模复杂软件。因此我们不能穷举所有的逻辑路径,即使穷举也未必会带来好运(穷举不能查出程序逻辑规则错误,不能查出数据相关错误,不能查出程序遗漏的路径)。

那么正确使用白盒测试,就要先从代码分析入手,根据不同的代码逻辑规则、语句执行情况,选用适合的覆盖方法。任何一个高效的测试用例,都是针对具体测试场景的。逻辑测试不是片面的测试正确的结果或是测试错误的结果,而是尽可能全面地覆盖每一个逻辑路径。