We are using the SonarQube to analyse our SAP Hybris code. We have successfully generated Jacoco XMl reports but while importing it in sonarqube it gives 0% code coverage.
I have mentioned all the versions details which we are using:
Sonarqube : Developer Edition v9.9.1
Jacoco: 0.8.9 (Download Jacoco CLI and Agent on Server)
Java: 17.0.7
We have tried below steps:
Step 1: Download jacocoAgent.jar file
wget https://repo1.maven.org/maven2/org/jacoco/org.jacoco.agent/0.8.9/org.jacoco.agent-0.8.9-runtime.jar -O jacocoAgent.jar
Step 2: Run Ant Alltests
ant alltests \
-Dtestclasses.extensions=ext1,ext2,ext3,ext4 \
-Dtestclasses.reportdir=/tmp/alltests \
-Dstandalone.javaoptions="-Djava.locale.providers=COMPAT,CLDR -javaagent:/tmp/jacocoAgent.jar=destfile=/tmp/jacocoAlltests.exec"
Step 3: Run Ant Webtests
ant allwebtests \
-Dtestclasses.extensions=ext1,ext2,ext3,ext4 \
-Dtestclasses.reportdir=/tmp/allwebtests \
-Dstandalone.javaoptions="-Djava.locale.providers=COMPAT,CLDR -javaagent:/tmp/jacocoAgent.jar=destfile=/tmp/jacocoAllwebtests.exec"
Step 4: Download jacocoCli.jar file
wget https://repo1.maven.org/maven2/org/jacoco/org.jacoco.cli/0.8.6/org.jacoco.cli-0.8.6-nodeps.jar -O jacocoCli.jar
cd ${HYBRIS_HOME}/hybris/bin/platform
Step 5: Generate jacocXMl Report file
java -jar /tmp/jacocoCli.jar report \
/tmp/jacocoAlltests.exec \
/tmp/jacocoAllwebtests.exec \
--classfiles ${HYBRIS_HOME}/hybris/bin/modules/custom/ext1 \
--classfiles ${HYBRIS_HOME}/hybris/bin/modules/custom/ext2 \
--classfiles ${HYBRIS_HOME}/hybris/bin/modules/custom/ext3 \
--classfiles ${HYBRIS_HOME}/hybris/bin/modules
--xml /tmp/jacocoTestReport.xml
Step 6: Run SonarQube analysis
ant sonarcheck
-Dsonar.host.url= \
-Dsonar.login= \
-Dsonar.projectKey= \
-Dsonar.projectName="Custom Extensions" \
-Dsonar.projectVersion=1.0.0-SNAPSHOT \
-Dsonar.java.source=11 \
-Dsonar.extensions=ext1,ext2,ext3,ext4 \
-Dsonar.junit.reportPaths=/tmp/alltests,/tmp/allwebtests \
-Dsonar.test.exclusions= \
-Dsonar.coverage.jacoco.xmlReportPaths=/tmp/jacocoTestReport.xml
I would request to help us to understand what we are missing.