【问题标题】:Sonar Overall Coverage ignores a module声纳整体覆盖忽略一个模块
【发布时间】:2014-01-18 04:49:33
【问题描述】:

我有一个带有模块 ABCD 的项目。 所有这些模块中都有单元测试。

但是,模块 A 中(目前)没有集成测试。

  • IT 覆盖率(考虑到所有模块)约为 15%。
  • UT 覆盖率(考虑到所有模块)约为 35%。
  • IT 覆盖率小部件中的总体覆盖率(出于某种原因仅考虑了具有 IT 的模块,即 BCD)大约为 70%。

根据official Sonar docs,整体覆盖应该是IT和UT的组合覆盖,即整体覆盖

上述70%的整体覆盖率显然违反了这个条件。 由于整体覆盖率仅考虑模块BCD(它们的整体覆盖率大约为 70%),因此计算的覆盖率是正确的(对于这 3 个模块)。

我如何告诉 Sonar 在计算整体覆盖率时考虑所有模块(也包括那些没有集成测试的模块),以便我有一个有意义的整体覆盖率指标?

【问题讨论】:

    标签: unit-testing integration-testing code-coverage sonarqube jacoco


    【解决方案1】:

    这是一个已知问题。欢迎关注并投票给http://jira.codehaus.org/browse/SONARJAVA-114

    【讨论】:

    • 作为一种解决方法,我们在没有集成测试的模块中添加了一个虚拟集成测试(它什么都不做)。现在可以正确显示整体覆盖范围。
    猜你喜欢
    • 2015-05-15
    • 2016-02-25
    • 2018-07-04
    • 2020-01-21
    • 1970-01-01
    • 1970-01-01
    • 2013-10-13
    • 2014-10-03
    • 1970-01-01
    相关资源
    最近更新 更多