白盒测试之六种覆盖方法区分

本文深入解析软件测试中的关键策略,包括语句覆盖、条件覆盖、判定覆盖、条件组合覆盖及路径覆盖等,通过实例帮助理解不同覆盖类型的测试用例设计。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  1. 语句覆盖:要求每一条语句都被执行。
  2. 条件覆盖:要求判定表达式的每个条件的值的真假分支都被执行。
  3. 判定覆盖(分支覆盖):要求判定表达式的值的真假分支都被执行。

条件覆盖跟判定覆盖的区别:
举个例子:
判定表达式:a > 3 and b > 0
用判定覆盖设计的测试用例:

  1. a = 5, b = 1 (判定表达式的值为“真”)
  2. a = 0, b = 1 (判定表达式的值为“假”)

注意:这里并不需要管b的取值,就已经满足判定覆盖的条件了。
用条件覆盖设计的测试用例:

  1. a = 5, b = 1 (条件a > 3为真, 条件b > 0为真)
  2. a = 5, b = -1 (条件a > 3为真, 条件b > 0为假)
  3. a = -5, b = 1 (条件a > 3为假, 条件b > 0为真)
  4. a = -5, b = -1(条件a > 3为假, 条件b > 0为假)
  1. 判定-条件覆盖:判定覆盖各条件覆盖交叉,针对于判定中的条件取值
    在这里插入图片描述
  2. 组合覆盖(条件组合覆盖):判定-条件覆盖的加强版,每个判定中的各个条件的各种可能组合都至少出现一次。显然,满足条件组合覆盖的测试用例一定是满足判定覆盖、条件覆盖和判定条件覆盖的。
    在这里插入图片描述
    6.路径覆盖:可以覆盖程序中所有可能的执行路径,相当于每一条执行流都要走一遍
    在这里插入图片描述
    到这里也许你会对路径覆盖跟语句覆盖的测试用例产生疑惑,下面给出一个例子进行辨析
    在这里插入图片描述
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值