软件测试实验报告
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
本科实验报告
课程名称:软件测试技术
实验项目:软件测试技术试验实验地点:实验楼211
专业班级:软件工程学号:
学生姓名:**
指导教师:兰方鹏
2015年10月7 日
太原理工大学学生实验报告
学院名称计算机与软件学院专业班级软件工程实验成绩
学生姓名戴超学号实验日期2015.10. 课程名称软件测试实验题目实验一白盒测试方法
一、实验目的和要求
(1)熟练掌握白盒测试方法中的逻辑覆盖和路径覆盖方法。
(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)是对每条语句的编号。
A 画出程序的控制流图(用题中给出的语句编号表示)。
B 分别用语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、条件组合覆盖和路径覆盖方法设计测试用例,并写出每个测试用例的执行路径(用题中给出的语句编号表示)。
C 编写完整的C 程序(含输入和输出),使用你所设计的测试用例运行上述程序段。完整填写相应的测试用例表(语句覆盖测试用例表、判定覆盖测试用例表、条件覆盖测试用例表、判定/条件覆盖测试用例表、条件组合覆盖测试用例表、路径覆盖测试用例表、基本路径测试用例表)
流程图为:
开始
开始
k=0,j=0
(x>0)&&(z<1) k=x*y-1 j=sqrt(k) (x==4)||(y>5) j=x*y+10 j=j%3 结束 1 2 5 7 8 9
1
5
2
a b
e
4 7
8
9
E
c
d
f
h
g
i j
6
3 l
k S
控制流图:
设判定条件 M=(x>0)&&(z<10) N=(x==4)||(y>5) 设 路 径
P1( abcdefhijl) = M and N P2(abcdefhkl) = M and /N P3(abgijl) =/ M and N P4(abgkl) =/ M and/N
1.语句覆盖
输入{x=4,y=7,z=9} 输出{j=2,k=27} 覆盖路径P1(abcdefhijl)
2.判定覆盖
输入{x=4,y=7,z=9} 输出{j=2,k=27} 覆盖路径P1(abcdefhijl)
输入{x=4,y=3,z=12} 输出{j=1,k=0} 覆盖路径P3(abgijl)
3.条件覆盖
对于第一个判定条件M,分割如下
条件x>0取真时为T1,取假时为F1。
条件z<10取真时为T2,取假时为F2。
对于第二个判定条件N,分割如下
条件x==4取真时为T3,取假时为F3。
条件y>5取真时为T4,取假时为F4。
测试用例取值条件具体取值通过路径
T1,F2,T3,F4 x>0,z>=10,x==4,y<=5 P3(abgijl) 输入{x=4,y=3,z=12}
输出{j=1,k=0}
输入{x=0,y=7,z=9}
F1T2,F3,T4 x<=0,z<10,x!=4,y>5 P3(abgijl) 输出{j=1,k=0}
4.判定-条件覆盖
测试用例取值条件具体取值判定条件通过路径
输入{x=4,y=7,z=9} 输出{j=2,k=27} T1,T2,T3,T4 x>0,z<10,x==4,y>5 M,N P1(abcdefhi
jl)
输入{x=0,y=4,z=12} 输出{j=0,k=0} F1F2,F3,F4 x<=0,z>=10,x!=4,y<=
5
/M,/N P4(abgkl)
5.条件组合覆盖
组合编号覆盖条件取值判定条件取值判定条件组合
1 TI,T
2 M x>0,z<10,M取真
2 TI,F2 /M x>0,z>=10,M取假
3 FI,T2 /M x<=0,z<10,M取假
4 FI,F2 /M x<=0,z>=10,M取假
5 T3,T4 N x==4,y>5,N取真
6 T3,F4 N x==4,y<=5,N取真
7 F3T4 N x!=4,y>5,N取真
8 F3,F4 /N x!=4,y<=5,N取假测试用例
测试用例取值条件覆盖路径覆盖组合输入{x=4,y=7,z=9}
输出{j=2,k=27}
T1,T2,T3,T4 P1(abcdefhijl) 1,5
输入{x=4,y=3,z=12}
输出{j=1,k=0}
T1F2,T3,F4 P3(abgijl) 2,6
输入{x=0,y=7,z=9}
输出{j=1,k=0}
F1,T2,F3,T4 P3(abgijl) 3,7