Было задание добавить Allure репорт к тесту. Было прошарено множество ресурсов по внедрению Allure в проект.
Проблема заключается в том, что при запуске mvn clean test
и дальнейшим mvn site
отчёт не создается, выдавая следующую ошибку:
[ERROR] Input directory should be not absolute for aggregate goal.
[WARNING] Allure report was skipped because there is no results directories found.
Здесь были подобные темы, но все предложенные варианты мне не помогли. Скорее всего, где-то косяк с pom.
Мой pom.xml
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.andersenlab.ponamorev.firsttest</groupId>
<artifactId>firsttest</artifactId>
<version>1.0-SNAPSHOT</version>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.7.0</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
<encoding>UTF-8</encoding>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.20.1</version>
<configuration>
<argLine>
-javaagent:${settings.localRepository}\org\aspectj\aspectjweaver\${aspectj.version}\aspectjweaver-${aspectj.version}.jar
</argLine>
<properties>
<property>
<name>listener</name>
<value>ru.yandex.qatools.allure.AllureRunListener</value>
</property>
</properties>
<systemProperties>
<property>
<name>allure.results.directory</name>
<value>${project.build.directory}\allure-results</value>
</property>
</systemProperties>
</configuration>
<dependencies>
<dependency>
<groupId>org.aspectj</groupId>
<artifactId>aspectjweaver</artifactId>
<version>${aspectj.version}</version>
</dependency>
</dependencies>
</plugin>
</plugins>
</build>
<reporting>
<excludeDefaults>true</excludeDefaults>
<plugins>
<plugin>
<groupId>io.qameta.allure</groupId>
<artifactId>allure-maven</artifactId>
<version>${allure.maven.version}</version>
<configuration>
<resultsDirectory>${project.build.directory}\allure-results</resultsDirectory>
<reportDireectory>${project.build.directory}\allure-report</reportDireectory>
</configuration>
</plugin>
</plugins>
</reporting>
<properties>
<allure.version>1.5.4</allure.version>
<aspectj.version>1.8.13</aspectj.version>
<allure.maven.version>2.9</allure.maven.version>
</properties>
<dependencies>
<dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
<version>23.6-jre</version>
</dependency>
<dependency>
<groupId>com.google.code.gson</groupId>
<artifactId>gson</artifactId>
<version>2.8.2</version>
</dependency>
<dependency>
<groupId>net.thucydides</groupId>
<artifactId>thucydides-core</artifactId>
<version>0.9.275</version>
</dependency>
<dependency>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-java</artifactId>
<version>2.46.0</version>
</dependency>
<dependency>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-chrome-driver</artifactId>
<version>3.8.1</version>
</dependency>
<dependency>
<groupId>org.seleniumhq.selenium.core</groupId>
<artifactId>selenium-core</artifactId>
<version>1.0.1</version>
</dependency>
<dependency>
<groupId>org.seleniumhq.webdriver</groupId>
<artifactId>webdriver-chrome</artifactId>
<version>0.9.7376</version>
</dependency>
<dependency>
<groupId>ru.yandex.qatools.allure</groupId>
<artifactId>allure-junit-adaptor</artifactId>
<version>${allure.version}</version>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
</dependency>
<dependency>
<groupId>io.qameta.allure</groupId>
<artifactId>allure-maven</artifactId>
<version>${allure.maven.version}</version>
</dependency>
<dependency>
<groupId>io.qameta.allure</groupId>
<artifactId>allure-junit4</artifactId>
<version>2.0-BETA21</version>
</dependency>
</dependencies>
</project>
Выхлоп после mvn site
[INFO] Scanning for projects...
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] Building firsttest 1.0-SNAPSHOT
[INFO] ------------------------------------------------------------------------
[INFO]
[INFO] --- maven-site-plugin:3.3:site (default-site) @ firsttest ---
[INFO] configuring report plugin io.qameta.allure:allure-maven:2.9
[WARNING] No project URL defined - decoration links will not be relativized!
[INFO] Rendering site with org.apache.maven.skins:maven-default-skin:jar:1.0 skin.
[INFO] Skipped "Allure" report, file "allure-maven.html" already exists for the English version.
[INFO] Skipped "Allure" report, file "allure-maven.html" already exists for the English version.
[INFO] Skipped "Allure" report, file "allure-maven.html" already exists for the English version.
[INFO] Generating "Allure" report --- allure-maven:2.9
[INFO] Allure installation directory C:\git_repos\firsttestnumber2/.allure
[INFO] Try to finding out allure 2.0.1
[INFO] Generate Allure report (aggregate) with version 2.0.1
[INFO] Generate Allure report to C:\git_repos\firsttestnumber2\target\site/allure-maven-plugin
[ERROR] Input directory should be not absolute for aggregate goal.
[WARNING] Allure report was skipped because there is no results directories found.
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 8.085 s
[INFO] Finished at: 2018-02-07T11:49:33+03:00
[INFO] Final Memory: 21M/71M
[INFO] ------------------------------------------------------------------------
Среда: IntellijIDEA 2017.3.3 Ultimate Edition
BabyRoot
(Vasily)
07.Февраль.2018 13:25:07
#2
А вы определитесь какой Аллюр хотите, старый или новый.
И в зависимости от этого - отредактируйте зависимости, а то у вас там всё собрано.
Для нового - Allure Framework
Удалил этот фрагмент
<dependency>
<groupId>ru.yandex.qatools.allure</groupId>
<artifactId>allure-junit-adaptor</artifactId>
<version>${allure.version}</version>
</dependency>
Добавил эти фрагменты
<dependency>
<groupId>io.qameta.allure</groupId>
<artifactId>allure-rest-assured</artifactId>
<version>2.0-BETA21</version>
</dependency>
<configuration>
<testFailureIgnore>false</testFailureIgnore>
...
</configuration>
Изменил проперти листнера
<property>
<name>listener</name>
<value>io.qameta.allure.junit4.AllureJunit4</value>
</property>
И убрал <allure.version>1.5.4</allure.version>
, потому что оно нигде не используется
В примере больше ничего не добавлено
Но allure-results по-прежнему не появляется, ошибка та же
Хелп) Я не понимаю, целый день бьюсь
<properties>
<compiler.version>1.8</compiler.version>
<aspectj.version>1.8.10</aspectj.version>
<allure.junit.version>2.0-BETA21</allure.junit.version>
</properties>
<build>
<testSourceDirectory>src/main/java</testSourceDirectory>
<plugins>
<plugin>
<groupId>io.qameta.allure</groupId>
<artifactId>allure-maven</artifactId>
<version>2.9</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.6.1</version>
<configuration>
<encoding>UTF-8</encoding>
<source>${compiler.version}</source>
<target>${compiler.version}</target>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.20</version>
<configuration>
<testFailureIgnore>false</testFailureIgnore>
<parallel>classes</parallel>
<perCoreThreadCount>false</perCoreThreadCount>
<argLine>
-javaagent:"${settings.localRepository}/org/aspectj/aspectjweaver/${aspectj.version}/aspectjweaver-${aspectj.version}.jar"
</argLine>
<properties>
<property>
<name>listener</name>
<value>io.qameta.allure.junit4.AllureJunit4</value>
</property>
</properties>
<systemProperties>
<property>
<name>allure.results.directory</name>
<value>${project.build.directory}/allure-results</value>
</property>
</systemProperties>
</configuration>
<dependencies>
<dependency>
<groupId>org.aspectj</groupId>
<artifactId>aspectjweaver</artifactId>
<version>${aspectj.version}</version>
</dependency>
</dependencies>
</plugin>
</plugins>
</build>
и в dependencies
<dependency>
<groupId>io.qameta.allure</groupId>
<artifactId>allure-junit4</artifactId>
<version>${allure.junit.version}</version>
</dependency>
<dependency>
<groupId>io.qameta.allure</groupId>
<artifactId>allure-java-migration</artifactId>
<version>${allure.junit.version}</version>
</dependency>
все работает без проблем
Такая же проблема, Maven+TestNG +Allure. После выполнения тестов, нет папки target/allure-results. Запускаю в идеи.
4.0.0
<groupId>hm.work</groupId>
<artifactId>pleasework</artifactId>
<version>1.0-SNAPSHOT</version>
<dependencies>
<!-- https://mvnrepository.com/artifact/org.seleniumhq.selenium/selenium-java -->
<dependency>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-java</artifactId>
<version>2.53.1</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.testng/testng -->
<dependency>
<groupId>org.testng</groupId>
<artifactId>testng</artifactId>
<version>6.13.1</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>io.qameta.allure</groupId>
<artifactId>allure-testng</artifactId>
<version>2.0-BETA14</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-simple</artifactId>
<version>1.7.21</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.hamcrest</groupId>
<artifactId>hamcrest-all</artifactId>
<version>1.3</version>
<scope>test</scope>
</dependency>
</dependencies>
<properties>
<aspectj.version>1.8.10</aspectj.version>
</properties>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.18.1</version>
<configuration>
<testFailureIgnore>true</testFailureIgnore>
<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>
</plugins>
</build>
<reporting>
<excludeDefaults>true</excludeDefaults>
<plugins>
<plugin>
<groupId>io.qameta.allure</groupId>
<artifactId>allure-maven</artifactId>
<version>2.9</version>
</plugin>
</plugins>
</reporting>
С гитхаб скачал пример, он работает верно. Однако, сравнить и найти проблему не вышло, плиз хелп гайз.
сори гайз за беспокойство, решение простое, надо было добавить файл allure.properties и в нем указать путь…
Пока что без изменений
Складывается ощущение, будто какого-то файла конфигурации не хватает
Сообщение поменялось на
[ERROR] Directory C:\git_repos\testproject\target\allure-results not found.
Команда mvn site
теперь делает какие-то репорты зависимостей, а создать отчёт я пытаюсь через mvn allure:serve
.
Taras
(Taras)
12.Февраль.2018 16:50:47
#9
mvn allure:report аля репорт плагин вместо maven site plugin пробовали настроить ?
Буду благодарен, если немного поподробнее расскажете, что необходимо сделать
Никакого site плагина я не писал
Всё сугубо с примеров и исходников
На данный момент мой pom выглядит вот так:
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.andersenlab.ponamorev.testproject</groupId>
<artifactId>testproject</artifactId>
<version>1.0-SNAPSHOT</version>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<allure.version>2.0-BETA21</allure.version>
<aspectj.version>1.8.13</aspectj.version>
<junit.version>4.12</junit.version>
<project.build.source>1.8</project.build.source>
</properties>
<dependencies>
<dependency>
<groupId>io.qameta.allure</groupId>
<artifactId>allure-junit4</artifactId>
<version>${allure.version}</version>
<scope>test</scope>
<exclusions>
<exclusion>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-java</artifactId>
<version>3.9.1</version>
</dependency>
<dependency>
<groupId>net.thucydides</groupId>
<artifactId>thucydides-core</artifactId>
<version>0.9.275</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>${junit.version}</version>
</dependency>
<dependency>
<groupId>io.qameta.allure</groupId>
<artifactId>allure-java-commons</artifactId>
<version>${allure.version}</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-simple</artifactId>
<version>1.8.0-beta1</version>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.7.0</version>
<configuration>
<target>${project.build.source}</target>
<source>${project.build.source}</source>
<encoding>${project.build.sourceEncoding}</encoding>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.20.1</version>
<configuration>
<testFailureIgnore>false</testFailureIgnore>
<argLine>
-javaagent:${settings.localRepository}/org/aspectj/aspectjweaver/${aspectj.version}/aspectjweaver-${aspectj.version}.jar
</argLine>
<systemProperties>
<property>
<name>allure.results.directory</name>
<value>${basedir}/target/allure-results</value>
</property>
</systemProperties>
<properties>
<property>
<name>listener</name>
<value>io.qameta.allure.junit4.AllureJunit4</value>
</property>
</properties>
</configuration>
<dependencies>
<dependency>
<groupId>org.aspectj</groupId>
<artifactId>aspectjweaver</artifactId>
<version>${aspectj.version}</version>
</dependency>
</dependencies>
</plugin>
<plugin>
<groupId>io.qameta.allure</groupId>
<artifactId>allure-maven</artifactId>
<version>2.9</version>
<configuration>
<propertiesFilePath>src/test/resources/allure.properties</propertiesFilePath>
<reportVersion>2.5.0</reportVersion>
<reportDirectory>${basedir}/target/allure-report</reportDirectory>
<resultsDirectory>${basedir}/target/allure-results</resultsDirectory>
</configuration>
</plugin>
</plugins>
</build>
<reporting>
<plugins>
<plugin>
<groupId>io.qameta.allure</groupId>
<artifactId>allure-maven</artifactId>
<version>2.9</version>
<configuration>
<propertiesFilePath>src/test/resources/allure.properties</propertiesFilePath>
<reportVersion>2.5.0</reportVersion>
<reportDirectory>${basedir}/target/allure-report</reportDirectory>
<resultsDirectory>${basedir}/target/allure-results</resultsDirectory>
</configuration>
</plugin>
</plugins>
</reporting>
</project>
Taras
(Taras)
13.Февраль.2018 14:20:22
#11
ето site plugin , попробуй добавить Allure plugin на уровне с а не
Mafaka13
(Aleksei)
16.Март.2018 13:16:10
#12
ru.yandex.qatools.allure
allure-maven-plugin
${allure.version}
allure-results
попробуй добавить это
Riccio
(Sergey)
25.Сентябрь.2018 12:36:21
#13
А можете чутка подробнее? Где его взять и куда конкретно положить?