Sonar给出了整体覆盖的值,它是线和分支覆盖的组合。我不确定这个指标有多重要。整体覆盖的价值意味着什么?它如何比线和分支覆盖更好?任何的意见都将会有帮助。
答案 0 :(得分:4)
来自Sonar的文档:
这是线路覆盖和条件覆盖的混合。它的目标是 为以下问题提供更准确的答案:如何 大部分源代码都已经过单元测试了吗?
Coverage = (CT + CF + LC)/(2*B + EL)
where
CT = conditions that have been evaluated to 'true' at least once
CF = conditions that have been evaluated to 'false' at least once
LC = covered lines = lines_to_cover - uncovered_lines
B = total number of conditions
EL = total number of executable lines (lines_to_cover)
来源:https://docs.sonarqube.org/display/SONAR/Metric+Definitions#MetricDefinitions-Tests
答案 1 :(得分:3)
以下是计算整体覆盖范围的方法:https://docs.sonarqube.org/display/SONAR/Metric+Definitions#MetricDefinitions-Tests
如果分支覆盖范围低于线路覆盖范围(因此低于整体覆盖范围),则意味着您的单元测试主要情况但不是真正的极端情况。