声纳 - 整体覆盖范围

Pav*_*eet 6 metrics code-coverage sonarqube

Sonar给出了整体覆盖的值,它是线路和分支覆盖的组合.我不确定这个指标有多重要.整体覆盖的价值意味着什么?它如何比线和分支覆盖更好?任何的意见都将会有帮助.

RCr*_*oss 5

从声纳的文档:

它是行覆盖和条件覆盖的混合。它的目标是为以下问题提供更准确的答案:单元测试覆盖了多少源代码?

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)
Run Code Online (Sandbox Code Playgroud)

资料来源:https : //docs.sonarqube.org/display/SONAR/Metric+Definitions#MetricDefinitions-Tests


小智 2

以下是总体覆盖范围的计算方式:https://docs.sonarqube.org/display/SONAR/Metric+Definitions#MetricDefinitions-Tests

如果分支覆盖率低于线路覆盖率(因此低于总体覆盖率),则意味着您的单元测试测试的是主要情况,但不是真正的极端情况。