当前位置: 首页 > 知识库问答 >
问题:

使用jacoco插件的SonarQube覆盖率显示为零,但可以看到单元测试的数量

萧德庸
2023-03-14

我已经在SonarQube中配置了一个项目,并且使用JaCoCo插件运行分析,以可视化单元测试覆盖率。

测试在Jenkins中成功运行,报告可以在Jenkin工作区中看到。

然而,声纳仪表板显示覆盖率为0%,但在声纳仪表盘上仍然可以看到单元测试的数量。我尝试在命令行中使用以下属性。这些属性也在SonarQube配置中配置。

-Dsonar.junit.reportsPath=target/surefire-reports  -Dsonar.coverage.jacoco.xmlReportPaths=target/site/jacoco/jacoco.xml 

共有1个答案

赵景曜
2023-03-14

你配置了雅各科准备剂吗?我面临着同样的问题,发现我错过了这个配置。

这方面的有用链接可能是https://docs.sonarqube.org/display/SONARQUBE45/JaCoCo插件。

或者通过pom.xml:

<build>
    <plugins>
        <plugin>
            <groupId>org.jacoco</groupId>
            <artifactId>jacoco-maven-plugin</artifactId>
            <version>0.8.0</version>
            <configuration>
                <append>true</append>
            </configuration>
            <executions>
                <execution>
                    <id>prepare-agent</id>
                    <goals>
                        <goal>prepare-agent</goal>
                    </goals>
                </execution>
            </executions>
        </plugin>
    </plugins>
</build>

关于您的报告路径:

你使用哪个版本的声纳曲?

sonar.junit.reportsPath

自版本4.11和

sonar.junit.reportPaths

应改用。

如何创建 xml 报告文件?

 类似资料:
  • 我可以在声纳获得单位测试覆盖率通过使用Jacoco工具的代码覆盖率,并使用其报告在声纳属性文件为'sonar.jacoco.report路径=.../Reports/report.exec'。如何通过使用RAD的默认插件获得SONAR中的单元测试覆盖率,该插件以. coveragedata、. Analysis和. html格式生成报告?

  • 我看到詹金斯插件中的代码覆盖率为零。我在客户端服务器模式下使用 Jacoco 0.8.7。客户端是詹金斯,服务器(此处存在jaco代理jar)是一个VM。当我使用旧版本的jaco 0.7.4时,这并没有发生。 Jenkins CI日志- Jenkins CI插件配置是这样的。使用ant和maven组合来转储exec文件。

  • 我正在将ANT构建转换为Maven。我不用声纳。 在Maven中,Jacoco似乎并没有报告单元测试本身的覆盖率,而ANT报告。我也一直在尝试为我的Maven build获得这个,但是我没有找到任何东西。 似乎我应该添加一个

  • 尝试查看声纳上的单元测试代码覆盖率。我正在使用Jacoco代码覆盖率,并且当我在eclipse中执行我的代码时,能够获得我的项目的代码覆盖率。但是,在 Jenkins 中运行时,我收到以下消息和警告,因为没有要运行的测试,没有要编译的源代码 我可以在声纳上报告一些代码覆盖率,但对于单元测试,它会显示。声纳如何显示单元测试的覆盖率?还有,我如何消除警告消息? 附加我的肯定和雅各插件以及杰本金斯控制台

  • 当我的单元测试通过Emma被“覆盖”时,我试图让Sonar IT代码覆盖为我工作。 我的情况: (1)我有大量使用JMockit的单元测试。删除JMockit不是一个选项。我想获得这些测试的单元测试覆盖报告。 (2)我进行了集成测试,简单地用不同的输入场景运行应用程序的核心服务器端部分(这是一个Spring web应用程序)。我想要它的代码覆盖报告。 对于第(1)部分,我选择使用Emma进行单元测