Привет, Хабр! Меня зовут Шкердин Данила, я QA Automation‑инженер в МТС Digital. В этой статье хочу рассказать о личном опыте прикручивания механики уведомлений к Allure в Telegram и не только. Allure — популярный инструмент для генерации отчетов о тестировании. Но каким бы приятным не был интерфейс Allure, наблюдать его в течении получаса, пока идет launch, никому не нравится. Задач у QA‑инженера всегда много, поэтому было бы удобно прикрутить к нашему любимому инструменту механизм уведомлений, чтобы вернуться к нему, когда придет время. Такая мысль посетила меня уже давно, и вот пришло время это сделать. Для получения мгновенных уведомлений о статусе тестов существует проект Allure‑notifications. Этот плагин позволяет автоматически отправлять уведомления о запуске тестов в выбранный вами канал Telegram/Slack/Skype/Email. Как я понял из общения с коллегами QA, о этом инструменте мало кто слышал, а те, кто слышал — не пробовали его. Давайте это исправим. получать краткую выжимку по каждому прогону тестов; не ждать окончания рана; в удобном мессенджере — чтобы можно было переслать команде; с привычной диаграммой — чтобы глянул и всё понятно; со ссылкой для детального ознакомления; чтобы из CI работало. отдельный чат для бота и QA, куда приходят уведомления, потом пересылаем команде при необходимости; Телеграмм бот (отдельный для каждого проекта); отчеты приходят как регулярные, так и по триггерам в репозитории; если тесты упали — идем в Allure разбираться, если нет — радуемся и отдыхаем идем заниматься другими делами. https://github.com/qa-guru/allure-notifications Все происходит в 3 этапа: Выполнение тестов; Генерация отчета (должен содержать summary.json); Непосредственно формирование контента уведомления и его отправка Если первые два шага вам не очень интересны, то можете сразу их пропустить и перейти к третьему, но для общего понимания рекомендую ознакомиться со всеми этапами. (Очевидно) выполнение тестов Мы используем Python3 + pytest. Как у вас на проекте — не имеет значения, так как тут главное вот что — на выходе должны получиться артефакты вроде этих: Для этого мы используем плагин allure-pytest. В команде выше аргумент --alluredir указывает на папку, куда все эти файлики сложить. Следующий шаг – необходимо сгенерировать отчет. Тут вам понадобится Allure Command Line Tool. Что в переводе означает "возьми артефакты из allure-results и сгенерируй из них отчет в allure-report". На этом шаге нам важно получить summary.json, так как на его основе будет происходить генерация диаграммы и текста уведомления Так выглядит сам файл:  Тут все просто – скачали и выполнили .jar, получили уведомление. Вот как‑то так. В результате получим уведомление в Телеграмм как на примере выше. Все просто — нужен бот, который будет отправлять нам сообщение в TG, и немного поколдовать над конфигом. Поехали: Первым делом создадим бота с помощью BotFather и получим его токен. Если знаете как это делать — смело пропускайте, нет — разворачивайте спойлер. Написать https://telegram.me/BotFather Он спросит у вас имя и ник для бота По окончании пришлет токен вида: 123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11 Готово  Итак, у нас есть бот и мы знаем его токен. Для того, чтобы получить от него отчет с помощью allure-notifications просто вставим токен в конфиг. Вот пример config.json Далее необходимо добавить бота в чат, куда вы хотите получать уведомления и сделать его админом. Внутри allure‑notifications используется api.telegram.org — API Телеграмма. Согласно API нам нужен chat_id, чтобы отправить туда сообщение от имени бота. Узнать его очень просто — после добавления бота сформируйте ссылку и перейдите по ней: https://api.telegram.org/botСЮДА_ПОДСТАВЬТЕ ТОКЕН/getUpdates Обратите внимание, что перед токеном должно быть слово bot. Затем напишите в чат с ботом любое сообщение и обновите страницу. Вы увидите ответ в формате json. Оттуда нам нужно взять только значение поля result > message > chat > id. Пример: Для проверки можно дернуть запрос через cURL: В config.json можно добавить конфигурацию прокси. Лично мне это было важно, так как отправка сообщений происходит из корпоративной сети на внешнее API. Для этого нужно, открыть доступ на прокси для api.telegram.org. Теперь подставим id чата в наш конфиг и можно тестировать: Ура, все получилось! Итак, я рассказал вам, как настроить уведомления о выполнении автотестов с помощью allure-notifications в привычный Telegram. Аналогично происходит настройка уведомлений на email/slack/skype — посмотреть подробнее можно в оригинальном репозитории. Спасибо за уделенное статье время, надеюсь мой опыт вам пригодится. Если у вас есть вопросы замечания или же вы хотите поделится своими историями о тюнинге Allure — пишите комментарии!