Hybris Jacoco Sonar включает allwebtests к отчету о результате - PullRequest
0 голосов
/ 13 сентября 2018

Я пытаюсь интегрировать Jacoco в Hybris и отправить отчет на Sonar.Мне удалось добиться того, что Hybris отправляет отчет на Sonar, но в итоговый отчет не входит цель ant allwebtests .Вот acc-ant-sonar.xml , который я создал и поместил по следующему пути:

{HYBRIS_CONFIG_FOLDER} / настройка / 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 в этот файл, но Hybris не содержит такой цели.Итак, как мне включить отчет allwebtests в Jacoco, который будет отправлен на Sonar?

1 Ответ

0 голосов
/ 17 сентября 2018

Вы можете использовать те же цели для выполнения веб-тестов, что и не веб-тесты. Вам нужно только установить 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>
...