Hybris Jacoco Sonar包括所有测试结果报告

问题描述 投票:0回答:1

我正在尝试将Jacoco整合到Hybrisand并将报告发送给Sonar。我设法实现了HybrisSonar发送报告,但它不包括结果报告中的ant allwebtests目标。这是我创建的acc-ant-sonar.xml,并放在以下路径中:

{} HYBRIS_CONFIG_FOLDER /customize/ext-accelerator/acceleratorservices/resources/acceleratorservices/ant/acc-ant-sonar.xml

<project name="acc.ant.sonar" xmlns:jacoco="antlib:org.jacoco.ant">
    <taskdef uri="antlib:org.jacoco.ant" resource="org/jacoco/ant/antlib.xml">
        <classpath path="${ext.acceleratorservices.path}/lib/jacocoant.jar"/>
    </taskdef>


    <target name="jacocoalltests" description="runs allstests with jacoco attached">

        <jacoco:agent property="agentvmparam"
                      append="true"
                      output="file"
                      destfile="${HYBRIS_LOG_DIR}/junit/jacoco.exec"
                />

        <property name="testclasses.packages" value="${testclasses.packages}"/>
        <ant dir="${platformhome}" target="alltests" inheritrefs="false">
            <property name="standalone.javaoptions" value="${agentvmparam} ${standalone.javaoptions}"/>
        </ant>
    </target>

    <target name="jacocounittests" description="runs allstests with jacoco attached">

        <jacoco:agent property="agentvmparam"
                      destfile="${HYBRIS_LOG_DIR}/junit/jacoco.exec"
        />

        <property name="testclasses.packages" value="${testclasses.packages}"/>
        <ant dir="${platformhome}" target="unittests" inheritrefs="false">
            <property name="standalone.javaoptions" value="${agentvmparam} ${standalone.javaoptions}"/>
        </ant>
    </target>

    <target name="jacocointegrationtests" description="runs allstests with jacoco attached">

        <jacoco:agent property="agentvmparam"
                      destfile="${HYBRIS_LOG_DIR}/junit/jacoco-it.exec"
        />

        <property name="testclasses.packages" value="${testclasses.packages}"/>
        <ant dir="${platformhome}" target="integrationtests" inheritrefs="false">
            <property name="standalone.javaoptions" value="${agentvmparam} ${standalone.javaoptions}"/>
        </ant>
    </target>

</project>

我想在此文件中添加目标jacocoallwebtests,但Hybrisdoes不包含此类目标。那么,我怎么能把所有的webtests包括在Jacoco报告中哪些将被发送到Sonar

ant sonarqube jacoco hybris
1个回答
1
投票

您可以使用相同的目标来执行Web测试作为非Web测试。你只需要将testclasses.web设置为true。 jacocoallwebtests的示例:

<target name="jacocoallwebtests" description="runs allwebtests with jacoco attached">
    <jacoco:agent property="agentvmparam"
                  append="true"
                  output="file"
                  destfile="${HYBRIS_LOG_DIR}/junit/jacoco.exec" />
    <property name="testclasses.packages" value="${testclasses.packages}"/>
    <property name="testclasses.web" value="true"/>
    <ant dir="${platformhome}" target="alltests" inheritrefs="false">
         <property name="standalone.javaoptions"
                   value="${agentvmparam} ${standalone.javaoptions}" />
    </ant>
</target>
© www.soinside.com 2019 - 2024. All rights reserved.