Allure Report с использованием Jenkins отображает неверные данные - PullRequest
0 голосов
/ 21 июня 2019

Я использую Java, Maven и TestNG.Я хотел бы добавить Allure для отчетов в Jenkins.

Я добавил следующую конфигурацию в pom.xml:

Зависимость:

<!-- https://mvnrepository.com/artifact/io.qameta.allure/allure-testng -->
<dependency>
    <groupId>io.qameta.allure</groupId>
    <artifactId>allure-testng</artifactId>
    <version>2.12.1</version>
</dependency>

Профиль:

<profile>
    <id>UI</id>
    <build>
        <pluginManagement>
            <plugins>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-surefire-plugin</artifactId>
                    <version>3.0.0-M3</version>
                    <configuration>
                        <suiteXmlFiles>
                            <suiteXmlFile>ui.xml</suiteXmlFile>
                        </suiteXmlFiles>
                        <argLine>
                            -javaagent:"${settings.localRepository}/org/aspectj/aspectjweaver/${aspectj.version}/aspectjweaver-${aspectj.version}.jar"
                        </argLine>
                    </configuration>
                    <dependencies>
                        <dependency>
                            <groupId>org.aspectj</groupId>
                            <artifactId>aspectjweaver</artifactId>
                            <version>${aspectj.version}</version>
                        </dependency>
                    </dependencies>
                </plugin>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-compiler-plugin</artifactId>
                    <version>3.8.1</version>
                </plugin>
                <plugin>
                    <groupId>io.qameta.allure</groupId>
                    <artifactId>allure-maven</artifactId>
                    <version>LATEST_VERSION</version>
                    <configuration>
                        <reportVersion>2.4.1</reportVersion>
                        <reportDirectory>target/allure-results</reportDirectory>
                    </configuration>
                </plugin>
            </plugins>
        </pluginManagement>
    </build>
</profile>

Когда я запускаю тесты локально, используя команду:

clean test -PUI -f pom.xml

Большинство тестов пройдено.

[INFO] Results:
[INFO] 
[INFO] 
[ERROR] Tests run: 25, Failures: 6, Errors: 0, Skipped: 9
[INFO] 
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 13:39 min
[INFO] Finished at: 2019-06-21T11:30:09+03:00
[INFO] Final Memory: 23M/259M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:3.0.0-M3:test (default-test) on project company: There are test failures.

Однако «allure-results» создается в корнепроекта, но у меня есть конфиг для "target / allure-results".При локальном запуске тестов с использованием не Maven, а непосредственно TestNG все тесты пройдены.

Я установил плагин Allure в Jenkins, добавил конфигурацию в задание Jenkins: enter image description here Однако после задания JenkinsЗакончив, я вижу, что в консольном выводе некоторые тесты пройдены, но показано, что количество пройденных / запущенных / неуспешных тестов равно 0. И в Allure почти все тесты провалились странным образом - раньше был неудачный тест, но тест был пройден.

[INFO] Results:
[INFO] 
[INFO] Tests run: 0, Failures: 0, Errors: 0, Skipped: 0
[INFO] 
[ERROR] There are test failures.
[JENKINS] Recording test results
[WARNING] Attempt to (de-)serialize anonymous class org.jfrog.hudson.maven2.MavenDependenciesRecorder$1; see: https://jenkins.io/redirect/serialization-of-anonymous-classes/
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 09:57 min
[INFO] Finished at: 2019-06-21T07:43:30+00:00
[INFO] Final Memory: 30M/313M
[INFO] ------------------------------------------------------------------------
Waiting for Jenkins to finish collecting data
[JENKINS] Archiving /var/lib/jenkins/workspace/tests.env.test/ui-test/pom.xml to com.company/company/1.0-SNAPSHOT/company-1.0-SNAPSHOT.pom
channel stopped
[ui-test] $ /var/lib/jenkins/tools/ru.yandex.qatools.allure.jenkins.tools.AllureCommandlineInstallation/allure/bin/allure generate -c -o /var/lib/jenkins/workspace/tests.env.test/ui-test/allure-report
Report successfully generated to /var/lib/jenkins/workspace/tests.env.test/ui-test/allure-report
Allure report was successfully generated.
Creating artifact for the build.
Artifact was added to the build.
Build step 'Allure Report' changed build result to UNSTABLE
Finished: UNSTABLE

1 Ответ

1 голос
/ 21 июня 2019

По умолчанию файлы результатов Allure хранятся в корневом каталоге проекта.Чтобы изменить местоположение, создайте файл allure.properties в каталоге тестовых ресурсов (src/test/resources) со следующим содержимым:

allure.results.directory=target/allure-results

Подробнее см. В документации https://docs.qameta.io/allure/#_configuration

...