Ответ
Allure Framework — это инструмент для создания интерактивных и наглядных отчётов о выполнении автотестов. Он агрегирует данные из популярных тестовых фреймворков (JUnit, TestNG, pytest и др.) и представляет их в виде веб-отчёта с детализацией по шагам, вложениям и метаданным.
Ключевые возможности:
- Аннотации для структурирования: Позволяют добавлять описание, разбивать тест на шаги, задавать важность и функциональность.
- Вложения (аттачи): К отчёту можно прикреплять скриншоты, логи, XML-данные и другие файлы для упрощения анализа падений.
- Группировка и фильтрация: Тесты группируются по наборам (suites), severity (критичность), story/feature (функциональность).
- Интеграция с CI/CD: Отчёты легко встраиваются в пайплайны (Jenkins, GitLab CI).
Пример настройки и использования с Maven и JUnit 5:
- Добавление плагина в
pom.xml:<plugin> <groupId>io.qameta.allure</groupId> <artifactId>allure-maven</artifactId> <version>2.10.0</version> </plugin> -
Использование аннотаций в тесте:
import io.qameta.allure.*; @Test @DisplayName("Проверка успешного логина") @Story("Авторизация") @Severity(SeverityLevel.BLOCKER) public void testSuccessfulLogin() { Allure.step("Открыть страницу логина"); // ... код шага Allure.step("Ввести валидные креденшелы"); // ... код шага Allure.attachment("Скриншот после логина", Files.readAllBytes(screenshotPath)); } - Генерация отчёта: После запуска тестов (
mvn test) отчёт генерируется командойmvn allure:serveи автоматически открывается в браузере.
Ответ 18+ 🔞
А, ну ты смотри, какой красавчик подъехал — Allure Framework, блядь! Это ж не просто отчёт, это целый театр с подробностями, где каждый проваленный тест — это не просто строчка в логе, а целая драма с аннотациями, скриншотами и прочей хуйнёй, чтобы даже менеджер, который в коде нихуя не шарит, мог посмотреть и сказать: «О, тут скриншотик, а тут логи, а тут, сука, всё сломалось!».
Что он умеет, этот красавчик:
- Аннотации, блядь: Ты можешь тест разбить на шаги, как в кулинарном рецепте — «взять ложку», «перемешать», «получить пиздюлей от продакшена». И всё это будет красиво в отчёте.
- Вот это вот всё прикрепить можно: Упал тест? Не просто «упал», а «упал, вот скриншот, вот логи, вот XML, разбирайся, долбоёб». Красота, ёпта!
- Разложить по полочкам: Группирует тесты по сьютам, по критичности, по фичам — хочешь, смотри только самые важные, хочешь — все подряд, как в помойке.
- В CI/CD встроится: Дженкинс, Гитлаб — ему похуй, везде приткнётся и отчёт нарисует.
Смотри, как это выглядит на практике, с Maven и JUnit 5, чтобы не быть, как тот Герасим, который только «Му-му» мычит:
-
В
pom.xmlэту хрень добавить надо:<plugin> <groupId>io.qameta.allure</groupId> <artifactId>allure-maven</artifactId> <version>2.10.0</version> </plugin>Без этого — нихуя не заработает, как без костылей.
-
А в тесте уже начинается магия, блядь:
import io.qameta.allure.*; @Test @DisplayName("Проверка успешного логина") // Чтоб не test1, а понятно было @Story("Авторизация") // К какой басне относится @Severity(SeverityLevel.BLOCKER) // Важность — если сломается, всё, пиздец, блокер! public void testSuccessfulLogin() { Allure.step("Открыть страницу логина"); // Шаг первый, ёбана // ... тут код, который открывает Allure.step("Ввести валидные креденшелы"); // Шаг второй // ... тут код, который вводит Allure.attachment("Скриншот после логина", Files.readAllBytes(screenshotPath)); // А вот и скриншотик, на тебе! } -
А потом, сука, самое сладкое: Запустил тесты (
mvn test), они там поработали, нагенерировали кучу JSON-ов в папочкуtarget/allure-results. А потом пишешьmvn allure:serve— и он тебе, этот хитрожопый фреймворк, локальный сервер поднимает и в браузере открывает отчёт такой красивый, интерактивный, что аж ебушки-воробушки! Всё видно, по чему кликать, где смотреть. Во, блядь, удобно!
Вот и весь сказ. Не просто «упало/не упало», а целая инспекция с доказательной базой. Чистая бюрократия, но полезная, ёпта.