You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

关于布尔表达式(A&&B)||A的MC/DC测试用例数量及相关疑问

布尔表达式(A&&B)||A的MC/DC测试用例分析

首先明确MC/DC的核心规则:每个输入变量必须能独立影响最终决策结果——即存在至少一组测试用例,仅改变该变量的值、其余变量保持不变时,决策结果发生翻转。

表达式逻辑拆解

(A&&B)||A本质等价于A:

  • 当A=T时,无论B取T或F,(A&&B)的结果不影响最终||A的输出,决策始终为T;
  • 当A=F时,(A&&B)必然为F,最终||A的输出也为F。

由此可见,变量B是冗余输入,它的取值完全不会改变决策结果。

测试用例分析

你给出的2个测试用例已经满足MC/DC的强制要求:

  • 用例1:A=T, B=F → 决策T
  • 用例2:A=F, B=T → 决策F

这两组用例仅改变A的取值,决策结果从T翻转到F,完整覆盖了A对决策的独立影响。而B无论如何取值,都无法引发决策结果的翻转,因此MC/DC规则不需要为B额外设计测试用例。

关于加入与门真真组合的用例

如果你想加入A=T, B=T的测试用例(即与门的真真组合),这完全不违反MC/DC规则——这个用例只是补充覆盖了B=T的场景,但它并非MC/DC的必要用例。因为该用例与用例1相比,仅改变B的取值,决策结果并未发生翻转,无法体现B对决策的独立影响。

结论

  • 满足MC/DC要求的最小测试用例数为2个;
  • 可以额外加入A=T, B=T的测试用例,用于覆盖与门的真真组合,且不会违反MC/DC规则。

内容的提问来源于stack exchange,提问作者mohammed ahmed

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.08 11:31:03