首页/开发/软件测试速查/代码覆盖率类型:语句、分支、条件与 MC/DC
测试基础与分层67 条

代码覆盖率类型:语句、分支、条件与 MC/DC

不同覆盖准则的严格程度不同:语句覆盖最弱、判定与条件组合覆盖更强、MC/DC 兼顾强度与用例数量,常用于安全关键领域。

软件测试速查开发更新于 2026-10-12

覆盖类型

准则要求
语句覆盖每条可执行语句至少执行一次
判定(分支)覆盖每个判定的真假两条路径都执行
条件覆盖每个原子条件的真假都被覆盖
MC/DC每个条件独立影响判定结果至少一次

工具侧配置示例

工具侧配置示例
# Python
coverage run -m pytest && coverage report -m
# Java(JaCoCo 在 CI 中生成报告)
mvn test jacoco:report
准则越强需要越多用例;安全相关模块常按行业标准要求选择 MC/DC 级别。

易错点

  • 把「分支覆盖」当成「条件覆盖」混用报告口径
  • 对简单 getter 也要求 MC/DC,成本与收益失衡

数据来源与参考

  • JaCoCo 官方文档(覆盖计数器说明)
  • DO-178C 中的 MC/DC 要求(公开资料)
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌