Удаленка для jenkins+selenide+selenoid+allure+docker спецов на 2-3 часа в день. 100% remote! Присоединиться к проекту

Allure генерирует пустой отчет после выполнения теста (java+Testng+Maven)

java
testng
webdriver
Теги: #<Tag:0x00007fedb69b56a8> #<Tag:0x00007fedb69b5568> #<Tag:0x00007fedb69b5310>

(Олександр Зань) #1

Всем привет, коллеги!
Столкнулся со следующей проблемой при подключении отчетов Allure.
После выполнения тестов (mvn test site) у меня генерируется файл “index.html”. В нем есть шаблон отчета Allure, но отчет пуст (http://shot.qip.ru/00Q8St-1pgTu2CRh/)

Настраивал через pom.xml следующим образом:

  <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-surefire-plugin</artifactId>
                <version>2.20.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>1.8.10</version>
                    </dependency>
                </dependencies>
            </plugin>

......
 <reporting>
        <excludeDefaults>true</excludeDefaults>
        <plugins>
            <plugin>
                <groupId>io.qameta.allure</groupId>
                <artifactId>allure-maven</artifactId>
                <version>2.8</version>
            </plugin>
        </plugins>
    </reporting>
.....
  <!-- https://mvnrepository.com/artifact/org.slf4j/slf4j-simple -->
      <dependency>
          <groupId>org.slf4j</groupId>
          <artifactId>slf4j-simple</artifactId>
          <version>1.7.24</version>
          <scope>test</scope>
      </dependency>

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

В логах получаю сообщение об успешной генерации отчета
[INFO] Can’t find information about categories.
[INFO] Generate report to D:…\target\site\allure-maven-plugin
Report successfully generated to D:…\target\site\allure-maven-plugin
[INFO] Report generated successfully.
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------

Скорей всего ошибка лежит в настройке, но не могу локализовать и устранить.


(Sergey Korol) #2

А можете скинуть линк на источник, где описана подобная конфигурация? Просто интересно, откуда люди этого нахватались…


(Олександр Зань) #3

Отсюда брал

Перекопал много источников. Не знаю какой работающий верно, поэтому взял этот.
Если у вы у вас под рукой есть гайд для правильной конфигурации отчетов используя мои фреймворки - буду признателен


(Sergey Korol) #4

Между нами говоря, подобные сэмпловые проекты, как правило, устаревают.
Особенно опасно, когда README на 3 месяца старше pom файла. :slight_smile:

Вот все же интересно на них взглянуть… Поскольку вся официальная документация доступна просто под носом.

Про плагины тоже желательно читать прежде, чем использовать. Говорят, там команды генерации могли поменяться. Да и секция расположения плагина… :wink:


(Олександр Зань) #5

По части источников:
http://perfect-test.com/index.php/ru/technologies-menu-rus/other-technologies-menu-rus/20-not-categorised-technologies-rus




Везде получал какую-то ошибку, поэтому начинал искать дальше. Пришел к этому варианту, где ошибок не было :slight_smile:

Также делал как указано в https://docs.qameta.io/allure/2.0/#_testng. Выполнял команду allure serve target/allure-results, а в ответ получал сообщение об отсутствии такой команды…


(Sergey Korol) #6

А вы уверены, что ваши результаты появляются в target? Если мне не изменяет память, allure-results по дефолту появляется в руте проекта, если только вы не переопределите путь посредством пропертей.

Возвращаясь к правильности ввода команд, на странице плагина ведь четко указано:

mvn allure:report
mvn allure:serve

Ну и собственно раздел TestNG описывался с учетом запуска без плагина. А следовательно, чтобы заработала команда:

allure serve

вам необходимо скачать последнюю версию allure commandline (архивом или при помощи package manager), и убедиться что бинарник находится в system path.

Так что вначале определитесь, как вы хотите генерировать репорт: посредством maven или command-line. Ну а дальше - изучайте документацию: какие именно команды для выбранного вами кейса следует применять.