【发布时间】:2020-06-01 05:26:19
【问题描述】:
我正在使用 Jacoco-Maven 插件进行 Scala 测试覆盖率,但是当我运行测试时,我在 Jacoco 的 Index.html 中看到单例对象被覆盖两次,其中一个给出正确的覆盖率,另一个给出错误的覆盖率数.
图片:
【问题讨论】:
标签: maven sonarqube code-coverage jacoco-maven-plugin test-coverage
我正在使用 Jacoco-Maven 插件进行 Scala 测试覆盖率,但是当我运行测试时,我在 Jacoco 的 Index.html 中看到单例对象被覆盖两次,其中一个给出正确的覆盖率,另一个给出错误的覆盖率数.
图片:
【问题讨论】:
标签: maven sonarqube code-coverage jacoco-maven-plugin test-coverage
Jacoco 检查已编译代码的覆盖率,而不是原始 Scala 代码。我相信在你编译的代码中有一个类的私有构造函数,它没有被任何测试覆盖,这会导致覆盖不足。您必须调查编译的代码以进行验证。不过,有一种方法可以解决这个问题:添加一条线索。
trail XConverter
object XConverter {
def doSomething() = {}
}
再次运行 jacoco 覆盖,您将看到赤字覆盖消失。这相当于在 Java 的接口中有静态方法,没有隐藏的构造函数。
【讨论】: