|
This post has NOT been accepted by the mailing list yet.
Hi All,
I have followed these online samples on using sonar with ant and jacoco. https://github.com/SonarSource/sonar-examples/tree/master/projects/code-coverage/ut/ut-ant-multimodule-jacoco-runTests https://github.com/SonarSource/sonar-examples/tree/master/projects/code-coverage/ut/ut-ant-jacoco-runTests After updating the relevant sonar config parameters in the sample projects, the "sonar all" is working and sending over different metrics to sonar server. But when I use the same configuration in our project with needed changes, the code coverage is not being captured. I have spent couple of days on this and unable to figure the issue. Any help is greatly appreciated. Here are more details: Attaching the build.xml for a single ant module in our project with needed changes. Also attached is the partial output I got after running "sonar all" on this module. I am just focusing on single module coverage before going to multi module project. Besides other differences, the key differences in our project code from the samples are: Some of the properties are already defined in parent build.properties file and hence I commented them out in the current modules build.xml The compile, run-tests, init targets are also commented out as our project take care of these using different targets publish, test, etc in the parents build-commons.xml. I made sure that the javac target has fork="true" debug="true" artibutes set in the parent build file. I am running this from a 32 bit ubuntu vm $ ant -version Apache Ant version 1.8.1 compiled on October 13 2010 One other different that should not make a difference is the name spacing. In the sample project, the src and test java files are right below the src and test folders. Like you expect we have a long list of name spaces in btw src and the actual file path is something like in ${basedir}/com/x/y/z/myjavafile.java. This is also true with test sources and the resulting class files structure. I also specified sonar.jacoco.reportPath as in: <property name="sonar.jacoco.reportPath" value="jacoco.exec" /> Otherwise the default location the tool looks for the jacoco.exec is ${basedir}/target/ folder. We use ./build/ folder for our build files. I am consistently getting this message "INFO o.s.p.j.JaCoCoPlugin - Project coverage is set to 0% as no JaCoCo execution data has been dumped: ${basedir}/jacoco.exec" All other metrics are being collected fine except for code coverage numbers. Also, <property name="sonar.jacoco.antTargets" value="run-tests" /> property seems to be not getting honored for my project as I don't see the junit xml file in the reports/junit directory. Let me know if any other configuration details are needed. Thanks for your help!!! Pavan code-coverage-files.zip |
| Powered by Nabble | Edit this page |
