本科实验报告
课程名称:软件测试技术
实验项目:软件测试技术实验
实验地点:实验楼***
专业班级:软件**** 学号: 201300****
学生XX:
指导教师:谢红薇
2015年 10月14日
实验名称
实验1 白盒测试方法
实验地点
实验楼211
实验时间
实验目的和要求
熟练掌握白盒测试方法中的逻辑覆盖和路径测试覆盖方法。
(2)通过实验掌握逻辑覆盖测试的测试用例设计,掌握程序流图的绘制。
(3)运用所学理论,完成实验研究的基本训练过程
实验内容和原理
实验内容:测试以下程序段
void DoWork(int x,int y,int z)
{
1 int k=0,j=0;
2 if((x>0)&&(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
3 4 5 6
7
8
9 10
分别以语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、条件组合覆盖和路径覆盖和基本路径覆盖法设计测试用例,并写出每个测试用例的执行路径(用题中给出的语句编号表示)
编写完整的C程序(含输入和输出),使用你所设计的测试用例运行上述程序段。完整填写相应的测试用例表
说明:
测试用例表中的“覆盖标准”项指:语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、条件组合覆盖和路径覆盖和基本路径覆盖。
测试用例表(样表)见表1(详见实验数据记录和处理)
实验数据记录和处理
完整C程序
#include ""
#include ""
#include ""
int DoWork(int x,int y,int z)
{
int k=0,j=0;
if((x>0)&&(z<10))
{
k=x*y-1;
j=sqrt(k);
}
if((x==4)||(y>5))
j=x*y+10;
j=j%3;
printf("%d ",k);
return j;
}
void main(){
int a,b,c;
int n;
printf("请输入三个数字:");
scanf("%d %d %d",&a,&b,&c);
n=DoWork(a,b,c);
printf("%d",n);
getch();
}
测试用例表
用例编号
输入(x/y/z)
期望结果(k/j)
覆盖标准
覆盖路径
实际结果(k/j)
1
4/6/12
0/1
语句覆盖
1-10
0/1
2
4/6/12
0/1
判定覆盖
1-7,9,10
0/1
3
-1/4/16
0/0
判定覆盖
1,2,7,9,10
0/0
4
4/6/8
23/1
条件覆盖
1-10
27/2
5
4/1/3
3/2
条件覆盖
1-7,9,10
3/2
6
-1/4/16
0/0
条件覆盖
1,2,7-10
0/0
7
4/1/3
3/2
判定条件覆盖
1-7,9,10
3/2
8
-1/6/16
0/1
判定条件覆盖
1,2,7-10
0/1
9
4/6/8
23/1
条件组合覆盖
1-10
23/1
10
7/7/5
48/2
条件组合覆盖
1,2,7,9,10
48/2
11
4/4/7
15/2
条件组合覆盖
1-7,9,10
15/2
12
-1/6/16
0/1
条件组合覆盖
1,2,7-10
0/1
13
4/6/8
23/1
路径覆盖
1-10
27/2
14
7/7/5
48/2
路径覆盖
1,2,7,9,10
48/2
15
4/4/7
15/2
路径覆盖
1-7,9,10
15/2
16
-1/6/16
0/1
路径覆盖
1,2,7-10
0/1
17
4/6/8
23/1
基本路径覆盖
1-10
27/2
18
7/7/5
48/2
基本路径覆盖
软件测试实验报告 来自淘豆网m.daumloan.com转载请标明出处.