软件测试场景覆盖,决策覆盖测试

决策覆盖技术属于白盒测试,它为布尔值提供决策覆盖。此技术报告布尔表达式的真/假结果。每当语句中有两个或多个结果的可能性时,如while语句,if语句和case语句(控制流语句),它被视为决策点,因为有两个结果为true或false。

决策覆盖率通过使用控制流图或图表涵盖代码的每个布尔条件的所有可能结果。

通常,决策点有两个决策值,一个是true,另一个是false,这就是为什么大多数时候结果总数是2的原因。决策覆盖率的百分比可以通过将行使结果的数量除以结果总数并乘以100来计算出。

9c6e3c456089d255557687c8bfb16aec.png

在这种技术中,很难获得100%的覆盖率,因为有时表达式变得复杂。因此,有几种不同的方法来报告决策覆盖范围。所有这些方法都涵盖了最重要的组合,非常类似于决策覆盖。这些方法的好处是增强了控制流的灵敏度。

我们可以找到决策覆盖的数量如下。

下面通过一个例子来理解它。考虑应用于决策覆盖技术的代码:

Test (int a)

{

If(a>4)

a=a*3

Print (a)

}

场景1:

a的值是7(a = 7),那么 -

Test (int a=7)

{

if (a>4)

a=a*3

print (a)

}

如果检查条件(a> 4),则此代码的结果为“True”。

当a的值为7时控制流程图如下 -

ed8256d46d2e6d7fff4447949fe96291.png

决策覆盖率的计算:

a3a9d81d45fc260dfb1555d46fbd4635.png

Decision Coverage = ½*100 (Only "True" is exercised)

=100/2

= 50

Decision Coverage is 50%

场景2:

a的值是3(a = 3)

Test (int a=3)

{

if (a>4)

a=a*3

print (a)

}

这段代码的结果是:“False”,因为检查条件(a> 4)。

86499e64c6d969f5d08fa177390301c1.png

决策覆盖率的计算:

a205deb506dccdc0b9ee5b95dacf764f.png

= ½*100 (仅在 "False" 时执行)

=100/2

= 50

Decision Coverage = 50%

决策覆盖范围的结果表:

测试用例

A的值

输出

决策覆盖范围

1

3

3

50%

2

7

21

50%

¥ 我要打赏

纠错/补充

收藏

加QQ群啦,易百教程官方技术学习群

注意:建议每个人选自己的技术方向加群,同一个QQ最多限加 3 个群。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值