Привет, Хабр! Я Александр Зырянов, проектный менеджер TestY TMS. В этой статье не будет традиционного среза о фичах из нового релиза, ведь TestY 2.1.1 еще не выложили в open source. Вместо него я принес интересный пользовательский кейс, который упростит поиск и изменение тестов в системе: расскажу, как устроены фильтры и массовые операции. А в конце статьи анонсирую обновления, что ждали многие.

Фильтры

В TestY пользователи создают, редактируют и удаляют тест-кейсы, собирают их в планы и добавляют результаты. Чтобы быстро найти тестовый кейс, нужна подходящая функциональность, ведь сложно представить ситуацию, в которой пользователь вручную ищет тест среди тысяч других.

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

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

Массовые операции

Изменять много информации удобнее блоками, а не по одной строчке, особенно в TMS. Мы выяснили, что пользователи хотят удалять или выносить тесты из плана, переносить их между наборами, если изменилась структура, добавлять лейблы, проставлять статусы. Так появились массовые операции, над которыми мы работаем до сих пор — дорабатываем функциональность на основе запросов от пользователей. Останавливаться в развитии фильтров и для массовых операций не собираемся — об этом обязательно расскажем подробнее в наших статьях на Хабре или в будущих письмах рассылки.

Что за рассылка?

Летом мы запустили email-рассылку для QA-инженеров. В письмах мы — команда TestY TMS — рассказываем о разработке системы и показываем юзкейсы, которые вы можете применить в работе. А другие QA-инженеры YADRO делятся опытом тестирования в разных направлениях: от телекома до разработки СХД. Рассылка приходит раз в месяц. Пишите в комментариях или в личные сообщения, если хотите попасть в базу подписчиков.

Как мы пользуемся фильтрами и массовыми операциями

Сохраняем фильтры

Я стараюсь лишний раз не повторять операции, поэтому сохраняю фильтры. Для каждого проекта по умолчанию задаю три фильтра: To Go, Failed/Blocked, Not Started. Выбираю именно их, потому что мне важно знать, сколько осталось работы, какую часть из оставшихся тестов мы не можем проходить прямо сейчас и сколько из них потенциально могут увеличить сроки тестирования. Что означают фильтры:

  • To go — сколько осталось.

  • Failed/Blocked — не можем проходить.

  • Not Started — не проходили, может быть, упадет.

А почему просто не смотреть в статистику, если фильтрация осуществляется по статусам?

Мы в TestY уверены: гораздо удобнее, когда в таблице или в дереве с результатами находятся только те тесты, которые соответствуют заданным условиям. Это сокращает время на поиск.

Изменяем статус сразу нескольких тестов

Самый ходовой пример массовых операций в контексте вышесказанного — это массовое изменение статуса тестов. К слову, это было самой запрашиваемой и самой интересной в разработке операцией.

Представим, что часть тестов относится к тестированию определенной фичи, которая называется «самая лучшая фича в мире». В ходе тестирования мы находим блокирующий баг, без фикса которого нет смысла проходить оставшиеся тесты на эту фичу. Вместо того, чтобы добавлять статус Blocked ко всем тестам в соответствующем плане, мы фильтруемся по статусу Untested и массово добавляем нужный статус.

Если тест был заблокирован, когда-нибудь он разблокируется. Перевод в статус Retest тоже осуществляется массовой операцией, только фильтруемся мы теперь не по Untested, а по Blocked.

Конечно, пример достаточно условный, потому что чаще всего для Blocked в разных тестах есть разные причины и баг зачастую не один. Более сложные вещи можно делать комбинацией подходов. Например, добавлять причину блокировки в Label, потом переводить по нему в Retest, а сам Label удалять. Эти фичи уже есть в TestY TMS.

С последнего релиза TestY, который мы выложили в open source, прошло три месяца, в ближайшее время выйдет версия 2.1.1.

Заглянем в будущее

В версии 2.1.1 мы переработали таблицы и заменили их на самостоятельно разработанный компонент. Теперь в табличных представлениях можно изменять порядок и ширину столбцов. Добавили интеграционное меню для навигации из TestY в плагины или в другую внешнюю систему. А еще по многочисленным просьбам пользователей разработали два общих плагина, которые можно использовать без доработок или доделать под свои нужды.

Новое меню

Интеграционное меню расположили на странице Test Plans. Внутри — ссылки на внешние источники, которые нужно настроить в администрировании проекта, на вкладку Integrations. Здесь пользователь может добавить ссылку, указать, для чего она используется, и ввести имя ссылки, которое в дальнейшем будет отображаться в меню.

Как выглядит интеграция в интерфейсе
Как выглядит интеграция в интерфейсе

Плагины

Вместе с версией 2.1.1 мы поделимся с сообществом двумя плагинами: Defects report и Test Plan Exporter.

Defects report позволяет в одном месте увидеть все дефекты, связанные с выполнением тестов в рамках тестирования проекта. Чтобы увидеть список дефектов, пользователю нужно:

  • выбрать проект из доступных ему в TestY;

  • выбрать один или более атрибутов, которые используют для указания связанных дефектов;

  • выбрать тестовый план или планы.

Также пользователю доступен поиск по получившейся выборке.

Test Plan Exporter — название настолько же говорящее, как и в случае с отчетом о дефектах. С помощью этого плагина пользователь может сгенерировать два PDF-документа: тестовый план и отчет о тестировании. Для этого нужно:

  • выбрать проект;

  • выбрать тип документа;

  • выбрать тестовый план или планы, которые должны быть добавлены в экспорт;

  • указать в свободной форме заключение о проведенном тестировании для отчета о тестировании (опционально).

Получившийся документ включает тесты из выбранных тест-планов. Отчет о тестировании также содержит сводную статистику прохождения плана и информацию о последних добавленных результатах.

Какие плагины вы бы хотели видеть в TestY? Пишите в комментариях.

Комментарии (0)


  1. JerryI
    18.09.2025 11:34

    Когда пишете такое, вставляйте в начала один параграф про "что за и зачем нужно?"


    1. azyryanov13 Автор
      18.09.2025 11:34

      Вы про статью или про рассылку? Если про статью, мы всегда делаем саммари в первом абзаце (текущая статья не исключение).