资源描述
实验1 逻辑覆盖法
实验重点:
掌握各种逻辑覆盖法测试用例的编写。
实验难点:
程序流程图的给出及逻辑覆盖法测试用例的编写。
讲授主要内容:
安排上机内容如下:
编写一个程序,循环从标准输入读入某雇员的周工作时间(以小时计)和每小时的工资数,计算并输出他的工资。若雇员周工作小时超过40小时,则超过部分按原工资的1.5倍的加班工资来计算。若雇员周工作小时超过50小时,则超过50的部分按原工资的3 倍的加班工资来计算,而40到50小时的工资仍按照原工资的1.5倍的加班工资来计算。
要求:
1、编写程序,画出程序的流程图;
2、分析本测试程序共有几条路径?分别给出每一条路径。
3、分别列表编写逻辑覆盖法各种方法(语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、组合覆盖、路径覆盖)的测试用例(需做相应的必要说明),并测试该程序,给出实验结果。
本次课主体实验方式、方法:
指导上机利用逻辑覆盖法设计测试用例。
布置作业
实验后记
提交方式:以“学号_姓名”命名的word文档。
参考答案
1. 分别用白盒测试方法中
开始
O
X<=40
B
A
N
40>=x>=50
Y
1-T1
T1=y
C
Y
D
N
2-T2
T2=y*1.5
3-T3
T3=T1+T2+(x-50)*y*3
E
结束
语句覆盖
x
路径
1
45
OBCE
2
55
OBDE
判断覆盖
x
路径
1
40
OAE
2
45
OBCE
3
55
OBDE
条件覆盖
X<=40为真 记为T1
x>40为假 记为-T1
x>50为真 记为T2
x>50为假 记为-T2
测试用例
x
执行路径
覆盖条件
用例1
40
OBCE
T1,T2
用例2
55
OAE
-T1,-T2
判断-条件覆盖
测试用例
x
执行路径
覆盖条件
X<=40
x>50
用例1
40
OBCE
T1,T2
真
真
用例2
55
OAE
-T1,-T2
假
假
条件组合覆盖
X<=40为真 记为T1
x>40为假 记为-T1
x>50为真 记为T2
x>50为假 记为-T2
测试用例
x
执行路径
覆盖条件
覆盖组合号
用例1
40
OBCE
T1,T2
1,3
用例2
55
OAE
-T1,-T2
2,4
路径覆盖方法
测试用例
x
执行路径
用例1
40
OBCE
用例2
55
OAE
2. 程序参考:
#include <iostream.h>
double main()
{
int hours;
double payment,wage;
cout<<"please input hours and per hour pay:";
cin>>hours>>wage;
if (hours<40)
payment=hours*wage ;
else if ((hours>40) && (hours<=50))
payment=40*wage+(hours-40)*1.5*wage;
else if (hours>50)
payment=40*wage+10*1.5*wage+(hours-50)*3*wage;
cout<<"The final payment are:"<<payment;
return payment;
}
展开阅读全文