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