Как сделать контроль качества прозрачным: Allure TestOps для помощи в обеспечении качества

Как сделать контроль качества прозрачным: Allure TestOps для помощи в обеспечении качества

21 февраля 2023 г.

Мы уже представили наши методы контроля качества И насколько мы заботимся о прозрачности всех процессов. Но как обеспечить эту прозрачность на всех уровнях разработки?

Сегодня у нас есть новая информация от Михаил Сидельников, ведущий специалист по контролю качества в PropellerAds, входящей в AdTech Holding. Михаил поделился лучшими практиками работы с инструментом Allure TestOps.

Почему команда выбрала его, какие инструменты она использовала раньше и когда Allure TestOps становится лучшим решением для рабочих процессов качественной помощи?

Почему прозрачность так важна?

Как бизнес, основанный на первоклассных технологиях, PropellerAds использует подход CI/CD. Он подразумевает постоянные релизы несколько раз в день, поэтому просто нельзя прерывать процесс из-за каких-то недоразумений или ошибок.

Как это работает?

  • Разработчик создает запрос на вытягивание
  • Команда контроля качества немедленно приступает к тестированию.
  • Результаты тестирования мгновенно появляются в Github, Slack и Allure TestOps.

Это непрерывный процесс — все автоматизировано, ручной работы почти нет. Результатом этого процесса должен быть качественный продукт, поэтому каждый шаг должен быть прозрачным.

Но как это обеспечить?

Михаил:

— «Проверка — основа качества. Но одиночества не любит — тест не интроверт! Он нуждается в семье и друзьях в своем роде, чтобы принести реальную ценность. И, как и всем в реальной жизни, тесту и его семье нужно комфортное жилье с удобной инфраструктурой и пространством для развития».

Так как же группа контроля качества PropellerAds решила «квартирный вопрос» для своих тестов?

Первые практики контроля качества в PropellerAD

Поначалу в PropellerAds даже не было полноценного отдела контроля качества: он был организован только в 2015 году. Потребовалось время, чтобы автоматизировать рабочие процессы и создать эффективную, вдохновленную команду.

По мере роста команды росли и ее требования! Количество тестов и микросервисов быстро росло, и важно было организовать их все. В противном случае с ними стало бы невозможно работать, интегрировать с различными CI/CD — и сохранять прозрачность в конце концов.

Реализация TestRail

Основатели команды контроля качества PropellerAds имеют многолетний опыт работы с TestRail. Таким образом, это стало самым очевидным решением. Кроме того, казалось, что он отвечает всем потребностям команды следующим образом:

* Необходимые функции: ведение кейса, историчность, тестовый запуск * Довольно приемлемая интеграция с Jira * Опыт команды по интеграции TestRail с CI/CD * Общий опыт работы команды с TestRail

Итак, решение принято.

Проблемы с TestRail

Поначалу все шло довольно гладко. И все же спустя некоторое время команда почувствовала, что TestRail — не лучший инструмент, отвечающий всем ее потребностям. В чем была проблема? Главное, что команда по-прежнему росла, и все процессы стали намного требовательнее.

Другими словами, все быстро масштабировалось:

* Команда; * Количество ручных дел * Количество ручных тестовых прогонов * Количество релизов

Михаил:

— Стало крайне сложно и неудобно сначала создавать кейсы в TestRail, а потом делать это в коде. Мы хотели видеть полностью прозрачное изображение в нашей системе управления тестированием.

Наконец, команда начала нуждаться в каком-то альтернативном рабочем процессе и инструментах. Список проблем становился все больше и больше, а самые болезненные моменты включали следующее:

* Новые проекты были плохо интегрированы * Не было поддержки новых кейсов или шагов: если вы что-то исправляли в коде, нужно было делать то же самое вручную в TestRail * Прозрачность и релевантность стали стремиться к нулю

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

Новые требования

Наконец стало очевидно, что команде нужно новое решение. Но сначала нужно было прояснить: чего не хватает команде и что ей нужно на данном этапе? После обсуждения группа контроля качества составила простой список требований.

n Вот оно:

  • Автоматическая загрузка результатов теста. Команда хотела видеть тесты в TMS сразу после их запуска, без использования API
  • Интеграция с Jira. Это снова было о прозрачности: наличие тестового статуса прямо в диспетчере задач — лучший способ сделать рабочие процессы максимально прозрачными.
  • Простая интеграция с тестовыми кодами: любые изменения должны отображаться в TMS без необходимости что-либо менять вручную
  • Тестовый запуск в CI/CD. Было бы полезно сделать это намного быстрее — и, в идеальном случае, запустить их прямо из TMS. В TestRail есть функция настройки пользовательского интерфейса, но это решение требовало постоянной поддержки.

Как Allure TestOps изменил процесс

Требования стали более чем очевидными, но они не помогли найти правильное решение. И вот команде PropellerAds QA посчастливилось встретить известного разработчика - Артема Ерошенко, который неожиданно дал простой и понятный совет:

<цитата>

Зачем использовать TestRail, если есть Allure TestOps?

Первая мысль была: а что такое Allure TestOps? п

Allure TestOps – это платформа для тестирования, позволяющая хранить тестовые наборы и управлять ими. Он основан на отчетах Allure Reports, хорошо знакомых большинству членов команды.

Михаил: n — Вот мы и подумали: свежий и модный инструмент — почему бы не попробовать?

И спойлер: получилось отлично. Процесс стал меняться в лучшую сторону — и в кратчайшие сроки. п

Какие же самые полезные функции Allure TestOps так сильно ускорили рабочий процесс?

Результаты тестирования

Если вы когда-нибудь пробовали TestRail, то знаете, что скачивать результаты тестов там сложно: много возни с API.

Allure TestOPS решает ту же проблему очень элегантно и просто. п

Если результаты ваших тестов подразумевают создание отчета Allure, ваши тесты уже есть в TestOps. Команда использует Allure довольно давно — а это значит, что платформа TestOps сохранила их тесты. п

Краткий гайд: чтобы добавить любую интеграцию, вам достаточно зайти в настройки TestOps, выбрать любой нужный вам продукт, а затем - настроить его в несколько кликов! Быстро и безболезненно, как здесь: n

Михаил:

 – Никаких скрытых камней: три поля, и интеграция завершена. С остальными инструментами работает так же: минимальные настройки. И наш любимый темный режим тоже здесь!

Если вам нужно интегрировать Teamcity или другие подобные инструменты, вы можете сделать это с помощью специальных плагинов. Требуется два щелчка мыши, чтобы настроить загрузку результатов в TestOps. Что еще более полезно, это происходит во время выполнения. Вот как это выглядит: снова элегантно и просто:

п

После того, как вы закончите настройку, вы можете запускать задания в своем CI/CD. И сразу после этого процесс становится в разы прозрачнее. Allure TestOps позволяет вам проверить существующее тестовое покрытие, понять, как часто вы запускаете те или иные тесты, понять, какие проекты стабильны, а какие нет, и даже просмотреть определенные тесты.

Общий процесс тестирования в Allure TestOps выглядит следующим образом:

  • Вы задаете конфигурацию сборки TeamCity один раз: указываете идентификатор проекта Allure и путь к результатам Allure в функции сборки
  • Вы запускаете конфигурацию Team City Build
  • Вы ждете результатов в Allure и все! п

Итак, после того, как вы закончите со всеми настройками, вам нужно сделать всего два простых шага — никаких JS, веб-серверов и API. Все настраивается через пользовательский интерфейс используемых вами инструментов.

Качество и статус

Оказалось, что у Allure TestOps есть плагин Jira, который позволяет посмотреть все тесты для конкретной задачи. Плагин включает пагинацию, поисковые фильтры и последние результаты этих тестов. п

Настройки такие же быстрые и простые, как и интерфейс:

Михаил:

Все результаты обновляются автоматически, и вы можете увидеть все обращения, созданные для этой конкретной задачи. Это было именно то, что нам было нужно, чтобы понять, что и как мы проверяем. Мы значительно повышаем нашу старую добрую прозрачность — и обеспечиваем лучшее понимание качества выпускаемых нами функций.

Код автотестов

У команды контроля качества PropellerAds есть множество автотестов: благодаря им она может гарантировать высочайшее качество продукта. Allure TestOps значительно упрощает этот важный момент. Он позволяет создавать необходимые аннотации, и каждая аннотация устанавливает метку для теста. В итоге метка появится в TestOps.

Существует большой список уже существующих аннотаций — и не только в Java. Вот пример:

Если вам не хватает готовых аннотаций, вы можете легко добавить свою: @LabelAnnotation(name = «любое имя»). Почти все данные TestOps работают через метки, и эти метки можно настраивать. Благодаря ему вы можете видеть различные древовидные карты и слои в списке всех существующих тестов, фильтровать и группировать свои кейсы.

Другие функции

Таким образом, все вопросы были решены благодаря TestOps. Помимо этих решенных проблем, мы также получили доступ к большему количеству новых функций. Вот они:

  • Allure позволяет просматривать историю тестовых запусков. Михаил говорит, что это была отличная функция: вы можете быстро проверить, когда и где был запущен тест и когда он начал давать сбои.
  • Планы тестирования. Теперь команда могла не только создавать, но и запускать эти тест-планы прямо из TestOps.
  • Удобные информационные панели со статистическими данными. Вы можете создать их самостоятельно или использовать готовые информационные панели.
  • Различные настройки для проектов. Они включают в себя удаление старых результатов тестирования, которые вам больше не нужны, настройку разных полей тестирования для ручных и автоматических случаев, а также запуск тестов прямо из Allure TestOps с различными параметрами.
  • И многие другие.

Михаил:

— Это лишь малая часть всего, что вы получаете с Allure TestOps. Хотите что-то новое или нашли ошибку? Создайте тикет об ошибке или спросите у разработчиков напрямую в Telegram-канале. Это действительно удобно! Или у них служба поддержки - эти ребята стараются ответить как можно быстрее - Хороший сервис.

Подводя итог: Allure TestOps против TestRail

Итак, была ли решена «квартирная проблема» наших тестов? Да, безусловно. Постоянно развивающийся, интуитивно понятный, с мгновенным доступом ко всем необходимым инструментам — Allure TestOps оказался самым правильным решением.

Но так ли уж плох TestRail?

n Михаил:

TestRail — хороший инструмент, но он лучше подходит для других нужд, чем у нас. n

Когда лучше использовать TestRail, а когда вам поможет Allure TestOps?

| ТестРейл | Allure TestOps | |----|----| | Вы не сильно зависите от процесса выпуска | У вас много релизов, и ваша работа основана на CI/CD | | Интеграция с другими инструментами не является вашим приоритетом | Вы стремитесь к прозрачности тестирования всех ваших инструментов | | У вас много ручных дел | Вы работаете в основном с автоматическими тестами |

В целом Allure TestOps оказался намного более эффективным для обеспечения прозрачности QA — на каждом этапе и уровне. И это то, что нам нужно в PropellerAds.


Основное изображение для этой статьи было создано с помощью генератора AI-изображений через подсказку "инженер смотрит на двигатель".


Оригинал
PREVIOUS ARTICLE
NEXT ARTICLE