HNUST湖科大软件测试方法与技术,朱少民,第三章习题第4题答案

判定覆盖:判定覆盖是指设计若干个测试用例,运行被测程序,使得程序中每个判定条件的取真分支和取假分支至少被执行一次。即:每个分支被执行一次。

条件覆盖:条件是指设计若干个测试用例,运行被测程序,使得程序中每个判定条件中的逻辑条件至少取一次真值和假值。

判定-条件覆盖:判定条件覆盖是指设计若干个测试用例,运行被测程序,使得程序中每个判定本身的判定(真假)分支执行一次,然后,程序中每个判定条件中的逻辑条件至少取一次真值和假值。

条件组合覆盖:条件组合覆盖是指设计若干个测试用例,运行被测程序,使得每个判定中条件的各种可能组合都至少执行一次。

基本路径覆盖:路径覆盖是指设计若干个测试用例,运行被测程序,使程序的每条可能路径都至少执行一次。路径覆盖是覆盖率最高的一种覆盖技术。

习题
4.根据所示的程序流程图,分别用最少的测试用例完成语句覆盖、判定覆盖、条件覆盖和基本路径覆盖的测试设计。

在这里插入图片描述

令:
条件M = {X>0 AND Y>10}

条件N = {X<-10 OR Y<0}

条件P = {Y = Y/X}

条件Q = {-(Y + X)}

(1)语句覆盖(每行语句至少被执行一次)
测试用例 覆盖路径
输入:X = 1,Y = 11
输出:X = 1,Y = 11 P1(1,2,5)
输入:X = -11,Y = 1
输出:X = -11,Y = 10 P2(1,3,4)

(2)判定覆盖(每个分支被执行一次)
测试用例 具体取值条件 判定条件 覆盖路径
输入:X=1,Y=11
输出:X=1,Y=11 X>0,Y>10,
X>=-10,Y>=0 M=.T.
N=.F. P(1,2,5)
输入:X=-11,Y=1
输出X=-11,Y=10 X<=0,Y<=10,
X<-10,Y>=0 M=.F.
N=.T. P(1,3,4)

(3)条件覆盖(每一个条件的真/假至少被测试一次)
对于第一个判定条件M,可分解成两个条件:
(1)条件X>0:取真时为T1,取假时为F1;
(2)条件Y>10:取真时为T2,取假时为F2;
对于第二个判定条件N,可分解成两个条件:
(1)条件X<-10:取真时为T3,取假时为F3;
(2)条件Y<0:取真时为T4,取假时为F4;
测试用例 取值条件 具体取值条件 覆盖路径
输入:X=1,Y=11
输出:X=1,Y=11 T1,T2,F3,F4 X>0,Y>10,
X>=-10,Y>=0 P(1,2,5)
输入:X=-11,Y=1
输出X=-11,Y=10 F1,F2,T3,F4 X<=0,Y<=10,
X<-10,Y>=0 P(1,3,4)

(4)路径覆盖(每条程序路径至少被跑过一次)
组合表:
编号 覆盖条件取值
1 T1,T2
2 T1,F2
3 F1,T2
4 F1,F2
5 T3,T4
6 T3,F4
7 F3,T4
8 F3,F4

测试用例 覆盖路径 覆盖条件 覆盖组合
输入:X=1,Y=11
输出:X=1,Y=11 P(1,2,5) T1,T2,F3,F4 1,8
输入:X=-11,Y=1
输出X=-11,Y=10 P(1,3,4) F1,F2,T3,F4 4,6
输入:X=-9,Y=1
输出X=-9,Y=1 P(1,3,5) F1,F2,F3,F4 4,8
1,F2,T3,F4 4,6
输入:X=-9,Y=1
输出X=-9,Y=1 P(1,3,5) F1,F2,F3,F4 4,8
无 P(1,2,4)

  • 4
    点赞
  • 51
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值