如何使用 jacoco 获取 hybris 到 sonarqube 中单元测试的代码覆盖率
How to get the code coverage for unit tests in hybris to sonarqube using jacoco
如何将 hybris 项目的单元测试结果捕获到 jacoco.exec 并发布到 sonarqube
要将代码覆盖率详细信息放入 jacoco.exec,我们可以使用以下步骤
1.新建一个xml文件(jacoco.xml)作为ant的构建文件。(新文件创建后,我们不想篡改hybris的build.xml平台)
2.将以下组件添加到新创建的 jacoco.xml
<project name="jacoco_rpt_pim" xmlns:jacoco="antlib:org.jacoco.ant">
<taskdef uri="antlib:org.jacoco.ant" resource="org/jacoco/ant/antlib.xml">
<classpath path="<path>/jacocoant.jar"/>
</taskdef>
<target name="jacocoalltests" description="runs allstests with jacoco attached">
<jacoco:agent property="agentvmparam"
append="true"
output="file"
destfile="jacoco.exec"
/>
<property name="testclasses.extensions" value="agcobackoffice"/>
<ant dir="<PLATFORM_HOME>" target="unittests" inheritrefs="false">
<property name="standalone.javaoptions" value="${agentvmparam}"/>
</ant>
</target>
</project>
- 现在调用 jacocoalltests 目标,它将调用单元测试以获取代码覆盖率报告。
- 此外,提供报告到声纳的路径,将有助于在声纳中获得代码覆盖率。
如何将 hybris 项目的单元测试结果捕获到 jacoco.exec 并发布到 sonarqube
要将代码覆盖率详细信息放入 jacoco.exec,我们可以使用以下步骤 1.新建一个xml文件(jacoco.xml)作为ant的构建文件。(新文件创建后,我们不想篡改hybris的build.xml平台) 2.将以下组件添加到新创建的 jacoco.xml
<project name="jacoco_rpt_pim" xmlns:jacoco="antlib:org.jacoco.ant">
<taskdef uri="antlib:org.jacoco.ant" resource="org/jacoco/ant/antlib.xml">
<classpath path="<path>/jacocoant.jar"/>
</taskdef>
<target name="jacocoalltests" description="runs allstests with jacoco attached">
<jacoco:agent property="agentvmparam"
append="true"
output="file"
destfile="jacoco.exec"
/>
<property name="testclasses.extensions" value="agcobackoffice"/>
<ant dir="<PLATFORM_HOME>" target="unittests" inheritrefs="false">
<property name="standalone.javaoptions" value="${agentvmparam}"/>
</ant>
</target>
</project>
- 现在调用 jacocoalltests 目标,它将调用单元测试以获取代码覆盖率报告。
- 此外,提供报告到声纳的路径,将有助于在声纳中获得代码覆盖率。