Блог

Триаж без повторяющихся ошибок в ТестОпс

2026-09-04 09:54
При триаже часто повторяется одна и та же история: разработчик открывает тест, читает, смотрит стак-трейс, через 5 минут понимает — «а, это та самая инфра-ошибка». Закрывает. Через час сюиту запускает тестировщик, открывает тест, читает, смотрит стак-трейс. Думает, вспоминает, закрывает.
Падения тестов от повторяющихся ошибок — постоянная нагрузка и постоянные издержки. Тест можно отправить в карантин, но тогда он перестаёт приносить полезную нагрузку, а проверять карантин — отдельные трудозатраты. Так или иначе, люди отвлекаются, приходится снова и снова менять контекст, и это съедает львиную долю рабочего дня.

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

Такая инфраструктура уже существует, хоть работает она пока на регулярных выражениях, а не на нейросетях. В самой простой форме это — категории в Allure Report (об этом подробнее здесь). По этому же принципу в платформе ТестОпс была создана фича дефектов, которая позволяет тестировщикам работать только с новыми падениями. В этом руководстве мы покажем, как выглядит триаж, при котором не приходится тратить время на старые ошибки.

Подготовка проекта

Чтобы начать работу, нужно создать проект в ТестОпс — а для него необходим репозиторий с тестами. Для этого руководства мы будем использовать демонстрационную сюиту с искусственно созданными ошибками. С готовым репозиторием сделайте следующее:


На этом подготовка завершена, и можно начинать разбор падений.

Отображение неразобранных результатов

В ТестОпс вся работа по триажу идёт во вкладке «Запуски»:
Щелкните по запуску, чтобы открыть его обзор. Там все неразобранные падения коротко перечислены в отдельном виджете:
Чтобы начать работу с тестом, щёлкните по нему. Откроется вкладка с подробными результатами:
Здесь отфильтрованы падения, не связанные с какой-то причиной. Именно это значит фильтр «Без резолюции»:

  • упавшие тесты,
  • которые не попали в карантин,
  • и не привязаны к какому-либо дефекту.

Но что такое дефекты и как они помогают сортировать результаты тестов?

Создание дефекта

Дефекты в ТестОпс — это известные причины падений, к которым система автоматически привязывает новые падения, читая стак-трейсы и сообщения об ошибках.

При триаже от системы чаще всего нужны следующие действия:

  • перезапустить тест, чтобы убедиться, что это не флаки
  • поместить тест в карантин, если сбой ложный и быстро тест не починить
  • связать результат падения с известной проблемой

Всё это есть на панели теста во вкладке «Результаты тестов», если запуск открыт (если нет, его нужно открыть снова). Щелкните по кнопке «Связать с дефектом»:
По клику откроется панель поиска дефекта. Для создания нового дефекта нужно ввести имя в поисковой строке — появится кнопка «Создать»:
Щелкните по ней, чтобы открыть панель создания дефекта:
Здесь можно связать дефект с задачами из баг-трекеров и создать правило автоматизации: это регулярное выражение, с помощью которого система автоматически обнаруживает дефекты по сообщениям об ошибках и стак-трейсам.

Дефект также можно было создать в разделе «Дефекты» — но если делать это через результаты тестов, то при создании правила автоматизации система показывает нужное сообщение об ошибке.

Итак, дефект создан, и в новых запусках система будет искать его автоматически. Но как быть с тем прогоном, в котором сейчас идёт работа?

Чтобы применить дефект в нём, нужно открыть страницу с запуском и щёлкнуть по кнопке «...». Откроется выпадающее меню с кнопкой «Искать дефекты» (запуск для этого должен быть открыт):
Нажмите «Искать дефекты», и система заново проанализирует все падения запуска, чтобы связать их с новым дефектом. В карточке дефекта появятся связанные с ним падения:

Проверка работы дефекта

Как проверить, правильно ли система связала падения с дефектами? На вкладке «Обзор» в запуске видны все обнаруженные в нём дефекты:
Щелкните по дефекту, чтобы открыть вкладку «Результаты тестов» со всеми связанными падениями:
Здесь применён фильтр по дефекту. Теперь можно пройти по каждому падению и решить, правильно ли оно связано с дефектом.

Коротко о главном

Триаж в ТестОпс настроен для максимального удобства тестировщика:
  • Система сама распределяет ошибки по известным причинам.
  • Неразобранные ошибки видны в виджете «Неразобранные результаты» во вкладке «Обзор» или в результатах тестов с включённым фильтром «Без резолюции».
  • На панели результатов тестов можно принять решение по каждой ошибке — перезапустить, отправить в карантин или связать с существующим дефектом.
  • При необходимости там же можно создать дефект.
  • Новый дефект применится автоматически в новых запусках или его можно одним кликом применить к уже существующим прогонам.
  • Чтобы проверить, правильно ли ошибки связаны с дефектами, достаточно применить фильтр дефекта в результатах тестов.
В результате время, которое занимает триаж, становится пропорционально не количеству падений, а количеству причин падений.