Требования
Требования не создаются в DoQA. Они загружаются из внешнего трекера и живут в пространстве как локальные копии: ключ, заголовок, статус в трекере и ссылка на исходный тикет. Раздел отвечает на два вопроса: какие требования покрыты тестами, а какие нет — и где тесты устарели после того, как требование изменили.
Источником требований может быть Jira Server или YouTrack. Пока администратор не настроил коннектор требований, раздел пуст.
Проверка = тест-кейс или чек-лист
В этом разделе «проверка» — это тест-кейс или чек-лист. Они равноправны: оба можно привязать к требованию, оба считаются в покрытии и оба попадают в матрицу покрытия.
Как открыть
Откройте пространство и выберите «Требования» в боковом меню. Кнопка «Матрица покрытия» в шапке ведёт на отдельную страницу — матрицу покрытия.
Что показывает список
| Колонка | Что в ней |
|---|---|
| «Ключ» | Ключ тикета в трекере. Рядом — значок трекера; клик по ключу открывает тикет в трекере. |
| «Заголовок» | Заголовок требования, как он записан в трекере. |
| «Статус в трекере» | Статус тикета. DoQA его не меняет — только показывает. |
| «Покрытие» | Одно из пяти состояний, см. ниже. |
| «Проверки» | Число связанных проверок и полоса с разбивкой по последним результатам. Наведите курсор — увидите, сколько из них кейсов и сколько чек-листов. |
| «Актуализация» | Сколько связей уже актуализировано из скольких. Колонка появляется, только когда в списке есть требования с пометкой «Требуется актуализация». |
Внизу списка — счётчик «Показано N из M». Следующая страница подгружается по мере прокрутки.
Раскрытие строки
Клик по строке раскрывает панель связанных проверок. Для каждой проверки видно её ID, тип (кейс или чек-лист), дату привязки, последний результат прогона и кнопку отвязки. Клик по проверке открывает её в DoQA, клик средней кнопкой мыши — в новой вкладке браузера.
Здесь же кнопки «Добавить кейс» и «Добавить чек-лист». У архивных требований этих кнопок нет.
Если связей ещё нет, панель показывает «Нет связанных проверок. Привяжите кейс или чек-лист, чтобы появилось покрытие.»
Состояния покрытия
| Состояние | Когда возникает |
|---|---|
| «Нет тестов» | С требованием не связана ни одна проверка. |
| «Не прогонялись» | Связи есть, но ни у одной проверки нет засчитанного результата прогона. |
| «Все прошли» | У всех связанных проверок последний результат — «Пройден». |
| «Не все прошли» | Есть проверки с результатом «Провален», «Сломан», «Заблокирован» или «Пропущен» — либо часть проверок вообще не прогонялась. |
| «Требуется актуализация» | Хотя бы одна связь помечена как требующая актуализации. |
Три правила, которые объясняют неожиданные значения в колонке:
- «Требуется актуализация» перебивает всё остальное. Пока пометка висит хотя бы на одной связи, требование показывает именно это состояние, даже если все тесты пройдены.
- Последним результатом считается последний прогон, в котором статус проверки был реально выставлен. Если проверку добавили в новый прогон, но ещё не прошли (статус не проставлен), DoQA берёт результат из предыдущего прогона, а не считает, что прогона не было.
- Прогоны, сделанные до подтверждения актуализации, не засчитываются. После того как вы нажали «Актуализировано», старый результат перестаёт учитываться, и требование возвращается в «Не прогонялись» — пока проверку не прогонят заново.
Метрики: Покрытие и Успешность
В шапке списка — два показателя.
- «Покрытие» — доля требований, у которых есть хотя бы одна связанная проверка: (все требования − требования в состоянии «Нет тестов») ÷ все требования. Подпись в интерфейсе: «Процент требований, к которым привязаны тест-кейсы или чек-листы. Показывает полноту тестового покрытия.»
- «Успешность» — доля покрытых требований в состоянии «Все прошли», от числа покрытых. Знаменатель здесь — покрытые требования, а не все.
Из-за разных знаменателей цифры расходятся: если из 100 требований покрыто 20 и все 20 в состоянии «Все прошли», «Покрытие» покажет 20%, а «Успешность» — 100%. Это не ошибка.
Обе метрики и счётчики на чипсах состояний считаются по всем активным требованиям пространства. Поиск, фильтр «Связь» и выбранный чипс на них не влияют, архивные записи в них не входят. Если требований нет (или нет покрытых), вместо процента стоит прочерк.
Срезы и фильтры
Список делится на три вкладки.
- «Все требования» — активные требования, загруженные из трекера.
- «Архивные записи» — требования, которых больше нет в выгрузке трекера: удалённые или ушедшие из-под фильтра коннектора. DoQA их не удаляет, а гасит, чтобы не потерять связи и историю; в списке они отображаются зачёркнутым заголовком. Фильтров у этой вкладки нет. Пустое состояние — «Архивных записей нет».
- «Несвязанные проверки» — обратный срез: не требования, а проверки без единой связи. Подпись в интерфейсе: «Ручные проверки (кейсы и чек-листы) без единого связанного требования — кандидаты на привязку». Для каждой строки доступны «Открыть» (в новой вкладке) и «Привязать требование». Есть свой поиск (по названию или ID проверки) и фильтр «Тип» — «Все», «Кейсы», «Чек-листы».
Фильтры вкладки «Все требования»:
- строка поиска — ищет по ключу и заголовку требования;
- фильтр «Связь» — «Все», «Связанные», «Несвязанные»;
- чипсы состояний покрытия со счётчиками. Клик по чипсу оставляет в списке только требования в этом состоянии, повторный клик снимает фильтр.
Когда фильтры активны, рядом появляется «Сбросить фильтры». Выбранный срез и фильтры остаются в адресе страницы — ссылку можно отправить коллеге.
Связывание требований с проверками
Связь двусторонняя. При её создании DoQA дописывает ID проверки в поле тикета в трекере — какое именно поле, задаёт администратор в настройке «Поле для ID кейсов» коннектора. Связь M:N: одну проверку можно привязать к нескольким требованиям и наоборот.
Привязать можно из четырёх мест.
- Из списка требований. Раскройте строку и нажмите «Добавить кейс» или «Добавить чек-лист». Откроется тот же диалог выбора, что и при добавлении в прогон, — можно выбрать сразу набор. Результат: «Привязано проверок: N». Если всё выбранное уже было привязано — «Новых привязок нет — выбранные проверки уже были привязаны».
- Из карточки тест-кейса или чек-листа. Секция «Требования» → «Привязать требование» → поиск по ключу или заголовку, можно отметить несколько требований сразу.
- Из среза «Несвязанные проверки». Кнопка «Привязать требование» в строке проверки.
- Отвязка. Кнопка с разорванной связью в панели связанных проверок или в секции «Требования» карточки. DoQA спросит подтверждение и предупредит, что проверка перестанет учитываться в покрытии требования.
Удаление проверки и связь
Помещение тест-кейса или чек-листа в корзину связь не разрывает — она переживает восстановление. Связь рвётся только при окончательном удалении; тогда же DoQA переписывает список ID в поле тикета.
Актуализация: что делать, когда требование изменилось
Это основной сценарий раздела. Он работает так.
- Аналитик в трекере переводит требование в статус, сопоставленный состоянию «Требуется актуализация». Это единственное состояние, которое DoQA читает из трекера, а не пишет в него.
- DoQA получает вебхук (или узнаёт об изменении при обновлении из трекера), помечает все связанные проверки, и требование переходит в «Требуется актуализация». Ответственные за связанные тест-кейсы и чек-листы получают уведомление.
- Пока пометка висит, DoQA не пишет вычисленный статус покрытия в трекер. В «Ленте операций» такие записи помечены как «Заморожено до актуализации».
- Тестировщик правит проверку и подтверждает актуализацию — кнопкой «Актуализировано» в карточке кейса или чек-листа, либо «Актуализировать» / «Актуализировать все» в панели связанных проверок.
- После подтверждения проставляется дата актуализации. Прогоны, сделанные до неё, перестают учитываться: требование покажет «Не прогонялись», пока проверку не прогонят заново.
Пометку снимает только человек. Правка тест-кейса сама по себе её не снимает.
Прогресс виден в колонке «Актуализация» списка («сколько актуализировано из скольких») и в шапке раскрытой панели: «N из M тестов требуют актуализации», а после подтверждения всех — «Все тесты актуализированы».
Генерация тестов с помощью ИИ
DoQA может забрать текст требования из трекера и создать по нему тестовую документацию.
Кнопка «Сгенерировать тесты с помощью ИИ» находится в панели связанных проверок и показывается, только пока у требования нет ни одной связи.
В диалоге «Генерация тестов с помощью ИИ» выберите:
- «Вид тестовой документации» — «Тест-кейс», «Чек-лист» или «Набор тест-кейсов».
- «Папка для сохранения» — существующая папка или новая, её можно создать прямо в диалоге кнопкой «Создать папку».
Нажмите «Сгенерировать». Генерация асинхронная: в строке требования крутится индикатор, панель показывает «ИИ создаёт тестовую документацию…» и предупреждает, что это может занять несколько минут. Со страницы можно уйти. По завершении появится «Тестовая документация сгенерирована», а созданные проверки будут автоматически привязаны к требованию.
Кнопки не будет, если:
- требование архивное;
- коннектор выключен или требование загружено не той интеграцией, которая указана в коннекторе сейчас;
- у вас нет доступа к AI-функциям.
Генерация расходует AI-коины, как и остальные AI-функции; при ошибке списание возвращается. Подробнее — в настройках ИИ.
Создать прогон из требования
Нажмите «…» в строке требования и выберите «Создать прогон». В прогон попадут все связанные с требованием проверки — и тест-кейсы, и чек-листы одним смешанным набором. Откроется обычная форма создания прогона; после создания DoQA сразу перейдёт на страницу нового прогона.
Пункт неактивен, если с требованием не связана ни одна проверка.
Обновление из трекера
Кнопка «Обновить из трекера» в шапке списка запускает синхронизацию: DoQA перечитывает требования по фильтру коннектора, обновляет заголовки и статусы, добавляет новые и гасит те, которых в выгрузке больше нет. По завершении — «Требования обновлены из трекера».
Пока коннектор не настроен, кнопка заблокирована.
Вебхуки доставляют изменения сами — ручное обновление нужно, когда вебхук не настроен или события были пропущены.
Если требований нет
- «Требований пока нет» и «Настройте коннектор трекера, чтобы загрузить требования» — коннектор ещё не настроен. Кнопка «Настроить коннектор» ведёт в настройки пространства; она видна тем, у кого есть доступ к настройкам.
- «Требований пока нет» и подсказка про проверку фильтра (JQL или проект) в настройках коннектора — коннектор настроен, но выгрузка пуста. Скорее всего, фильтр коннектора не выбирает ни одного тикета.
- «Не удалось загрузить требования» и «Трекер недоступен или вернул ошибку» — проблема на стороне трекера или подключения. Состояние подключения видно на вкладке «Коннектор требований», подробности — в «Ленте операций».