Как стать автором
Обновить

Allure отчет для 2 браузеров

Ожидает приглашения

Allure отчет для 2 браузеров



Столкнулся с проблемой, что Allure не поддерживает мульти браузерный отчет из коробки.
Первым делом пошел гуглить. На форумах не нашел решения.
Тогда появилась мысль как это могло бы работать.
Способ нашел не самый изящный, но простой и рабочий.
Кратко какие инструменты и фреймворки у меня были. Java, Maven, Selenium, Jinut 4. В качестве CI/CD инструмента Teamcity.

Первым делом нужно добавить в помник следующий код

<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-resources-plugin</artifactId>
<version>2.6</version>
<executions>
<execution>
<id>copy-resources</id>
<phase>process-test-resources</phase>
<goals>
<goal>copy-resources</goal>
</goals>
<configuration>
<outputDirectory>${basedir}/target/CHROME/allure-results</outputDirectory> <resources>
<resource>
<directory>${basedir}/target/allure-results</directory>
<includes>
<include>*</include>
</includes>
</resource>
</resources>
</configuration>
</execution>
</executions> </plugin>

С помощью данного кода будет происходить копирование файлов папки allure-result в папку target/CHROME/allure-results
Происходить копирование, в моем случаи, будет в фазу <phase>process-test-resources</phase>


Дальше нужно произвести настройки в CI/CD инструменте.

Пайплайн в CI/CD следующий
1) mvn clean

2) Execute API tests

3) set browser CHROME (переменную окружения делаем Chrome, потом дергаю её в коде, тем самым задаю в каком браузере выполнять тесты)

4) Execute tests CHROME

5) Chrome collect report (На данном этапе происходит копирование файлов из папки allure-results в папку target/CHROME/allure-results/
Это происходит mvn командой

process-test-resources

то есть я запускаю фазу, которую написал в помники.

6) set browser MS EDGE (Изменяю переменную на EDGE)

7) Execute tests EDGE (EDGE перезаписывает данные о прогоне в хроме в папке allure-results.)

8) Allure Report edge

9) Allure report CHROME

После прогона, я создаю 2 отчета, для каждого браузера.
(Api тесты попадут в оба отчета, так как не перезаписываются во время прогона в EDGE, если этого не нужно можно сделать clean перед прогоном в edge)

ВАЖНО! правильно настроить шаги с отчетами.
Чтобы все работало один отчет должен публиковаться как архив, другой как простой отчет это делается настройкой "Publish mode"
Так же надо не забыть указать правильные Result directory, те что прописаны в помники

На данном этапе после прогона мы получи папку с отчетом allure-report и zip архив allure-report

,,
,,

Остается настроить только переменные для красивых табов в отчете


Для TeamCity настройка происходит в Administrtion/Root project/Report Tabs

Настроить нужно 2 переменные. У меня они "build report tab". но думаю можно настроить и на уровне проекта

Полную инструкцию по настройке таб можно найти по ссылке ниже, если моей будет недостаточно.
https://www.jetbrains.com/help/teamcity/including-third-party-reports-in-the-build-results.html

Если что-то написал не так, не пинайте. Мой первый пост.
Надеюсь статья кому-нибудь поможет.

Теги:
Хабы:
Данная статья не подлежит комментированию, поскольку её автор ещё не является полноправным участником сообщества. Вы сможете связаться с автором только после того, как он получит приглашение от кого-либо из участников сообщества. До этого момента его username будет скрыт псевдонимом.