【发布时间】:2014-11-12 08:42:37
【问题描述】:
SonarQube 像这样描述“条件”覆盖范围:
在包含一些布尔表达式的每一行代码中,条件覆盖率只回答以下问题:“是否每个布尔表达式都被评估为真和假?”。这是在单元测试执行期间遵循的流控制结构中可能分支的密度。
http://docs.codehaus.org/display/SONAR/Metric+definitions
嗯,但我怀疑他们的意思是“分支覆盖”:
如果 (A || B || C)
测试 A=true 和 B=true 产生 100%,无需检查最后一个表达式 (C)。也只测试了两个分支 - 整个表达式的真假,而不是单个表达式。对吗?
据我所知,条件覆盖应该检查表达式中的所有条件。
【问题讨论】: