如何在詹金斯的声纳中获得JaCoCo的报道?

时间:2012-01-17 23:00:18

标签: jenkins sonarqube jacoco

我按照here的说明进行了操作 我不是在使用Maven。

我的Jenkins职位输出说: 12:32:33.951 INFO传感器JaCoCoSensor ... 12:32:33.961 INFO项目覆盖率设置为0%,因为没有转储JaCoCo执行数据:/var/lib/jenkins/workspace/SeqGen/SeqGen/jacoco.exec 12:32:35.152 INFO传感器JaCoCoSensor完成:1201 ms

以下是我的属性:

project.home=SeqGen
sonar.projectKey=com.skyboximaging:seqgen
sonar.projectName="SeqGen"
sonar.projectVersion=1.0
sonar.dynamicAnalysis=true
sources=src/java
tests=test/java
binaries=classes
sonar.jacoco.reportPath=jacoco.exec
sonar.jacoco.antTargets=test-with-coverage

在Sonar服务器上,我设置了常规设置>代码覆盖率>代码覆盖插件到jacoco

我对http://docs.codehaus.org/display/SONAR/Code+coverage+plugins的文件感到非常困惑。我对这句话感到特别困惑:     “在声纳分析期间,Sonar Jacoco插件将注意将Jacoco代理连接到JVM并启动单元测试。”

据我所知,我的Ant目标没有被调用。 Sonar Jacoco插件如何知道在哪里找到我的build.xml?

我做错了什么?

3 个答案:

答案 0 :(得分:5)

他们刚刚发布了您需要的内容:https://wiki.jenkins-ci.org/display/JENKINS/JaCoCo+Plugin

答案 1 :(得分:3)

为下一个花费数小时试图找出为什么不起作用的可怜的灵魂提供答案。显然此功能已被删除:

Remove "sonar.jacoco.antTargets" property and related classes in the plugin

答案 2 :(得分:1)

一种可能性是junit的ant任务名称与属性中指定的名称不匹配。

您已指定

sonar.jacoco.antTargets=test-with-coverage

根据documentation,应该有一个名称完全相同的蚂蚁目标。同样在这个目标中,junit也应该设置为fork。