简体   繁体   中英

How to get JaCoCo coverage with Sonar in Jenkins?

I followed the instructions here
I am NOT using Maven.

My Jenkins job output says: 12:32:33.951 INFO Sensor JaCoCoSensor... 12:32:33.961 INFO Project coverage is set to 0% as no JaCoCo execution data has been dumped: /var/lib/jenkins/workspace/SeqGen/SeqGen/jacoco.exec 12:32:35.152 INFO Sensor JaCoCoSensor done: 1201 ms

Here are my properties:

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

On the Sonar server, I set General Settings > Code Coverage > Code coverage plugin to jacoco

I am very confused by the documentation at http://docs.codehaus.org/display/SONAR/Code+coverage+plugins I am particularly puzzled by this sentence: "During Sonar analysis, the Sonar Jacoco plugin will take care to attach the Jacoco agent to the JVM and to launch the unit tests."

As far as I can tell, my Ant target is not getting invoked. How does the Sonar Jacoco plugin know where to find my build.xml?

What am I doing wrong?

他们刚刚发布了你需要的东西: https//wiki.jenkins-ci.org/display/JENKINS/JaCoCo+Plugin

Providing an answer for the next poor soul who spends hours trying to find out why this doesn't work. Apparently this feature has been removed:

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

One possibility is that the name of your ant task for junit does not match the name specified in the properties.

You have specified

sonar.jacoco.antTargets=test-with-coverage

As per the documentation , there should be an ant target with exactly the same name. Also in this target, junit should be set to fork as well.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM