Jacoco eclipse插件和SonarQube中的代码覆盖率百分比值不同

时间:2014-08-19 05:53:27

标签: java eclipse code-coverage sonarqube jacoco

我有一个Java项目。根据Jacoco eclipse插件(EclEmma Java Code Coverage 2.3.1.201405111647),该项目的代码覆盖率为22.3%。我生成.exec报告并将其提供给SonarQube并使用声纳跑步者进行分析。因此,SonarQube网络界面上显示的代码覆盖率为20.2%。包级别的覆盖值也与Jacoco的eclipse插件所显示的不同。怎么可能? Isn' SonarQube是否从Jacoco生成的.exec报告中获取值?

1 个答案:

答案 0 :(得分:1)

Jacoco基于字节码分析。 exec文件与类文件组合以获取最终的代码覆盖率值。我的问题是Eclipse编译器为Java生成的字节码(用于Jacoco eclipse插件)和由Javac生成的字节码(在声纳运行器分析期间)是不同的。因此,两种工具生成的代码覆盖率值都不同。