В каком документе фиксируются критерии завершения тестирования?

Ответ

Ключевые критерии завершения (exit criteria) тестирования формально определяются в Плане тестирования (Test Plan). Это основной документ, который согласуется со всеми заинтересованными сторонами (менеджмент, разработка, продукт).

Типичные критерии, прописанные в плане:

  1. Критерии покрытия:

    • Достигнуто 100% покрытие тестами всех утвержденных требований (requirements coverage).
    • Достигнут целевой процент покрытия кода (code coverage), например, 80% для модульных тестов.
  2. Критерии выполнения тестов:

    • Выполнены 100% тест-кейсы высокого приоритета (Smoke, Sanity, Critical Path).
    • Выполнено X% от общего числа запланированных тест-кейсов (например, 95%).
  3. Критерии качества (дефекты):

    • Все дефекты с приоритетом Blocker (P0) и Critical (P1) исправлены и перепроверены.
    • Количество открытых дефектов с приоритетами Major (P2) и ниже не превышает согласованного лимита и не блокирует релиз.
    • Все найденные дефекты задокументированы в баг-трекере.
  4. Процессуальные и бизнес-критерии:

    • Подписана Матрица приемки (Acceptance Criteria Matrix) или Отчет о приемке (Acceptance Report).
    • Проведен и успешно пройден Demo или Showcase для стейкхолдеров.
    • Выполнены нефункциональные требования (производительность, безопасность), если применимо.

Пример раздела в Test Plan:

### 5. Exit Criteria
- Все требования из Sprint Backlog покрыты тест-кейсами.
- 100% smoke-тестов выполнены успешно.
- 0 открытых багов с приоритетом P0 или P1.
- Product Owner подписал Acceptance Report.

Ответ 18+ 🔞

Ага, вот эта тема про «когда уже можно прекращать эту вакханалию и выпускать продукт на волю». Формально, конечно, всё прописано в Плане тестирования, этот документ — как свод законов для всей команды, его все подписывают, а потом на него же и ссылаются, когда начинается: «А можно уже?».

Ну, смотри, обычно там прописывают вот такие пункты, чтобы всем было понятно, когда пора кричать «Ура!» или, наоборот, «Ёпта, ещё недельку».

1. Критерии «натыкали тестов, как ёжиков в лесу»:

  • Все утверждённые требования должны быть покрыты тестами на все сто, блядь, процентов. Ни одна фича не должна ускользнуть.
  • Должен быть достигнут какой-то магический процент покрытия самого кода. Типа, «ребята-разработчики, покажите нам 80% покрытия юнит-тестами, а то мы вам не верим».

2. Критерии «мы всё перепробовали, руки уже отваливаются»:

  • Все самые важные тесты — дымовые, проверки здравого смысла, главные сценарии — должны быть пройдены на 100%. Это святое.
  • И в целом, от общего запланированного объёма тестов должно быть выполнено, ну, скажем, 95%. Оставшиеся 5% — это обычно какая-нибудь экзотика, на которую всем уже похуй.

3. Критерии «с багами разобрались или договорились»:

  • Все дефекты уровня «всё рухнуло, пиздец» (Blocker) и «очень больно, но дышим» (Critical) — должны быть не просто исправлены, а ещё и перепроверены. Чтобы не вышло, как в том анекдоте: «починили — не включается».
  • Количество открытых багов уровня «можно жить, но неприятно» (Major) и ниже не должно превышать какую-то договорённую цифру. И они не должны мешать релизу. То есть, если баг — это опечатка в сообщении об ошибке на 47-м экране, а релиз — завтра, то, ядрёна вошь, иногда можно и так выпустить.
  • И, само собой, все найденные косяки должны быть не на салфетке записаны, а в нормальной системе учёта. Чтобы потом не было: «А кто говорил, что тут кнопка кривая?».

4. Критерии «бумажки подписаны, начальство довольно»:

  • Product Owner или кто там у вас главный по продукту должен подписать бумажку, что он принимает работу. Это называется «Матрица приемки». Без этой подписи — доверия ебать ноль.
  • Должен быть успешно проведён показ финального результата стейкхолдерам (Demo). Чтобы все сказали «о, круто!», а не «ни хуя себе, это мы два месяца делали?».
  • Если были требования «не про то, как работает, а как хорошо работает» (производительность, безопасность) — они тоже должны быть выполнены. А то получится быстрый, но дырявый как решето софт.

Вот как это примерно выглядит в том самом плане, в разделе «Давай, закругляйся»:

### 5. Exit Criteria (Точка, где можно сказать «Всё, пиздец, заканчиваем!»)
- Все требования из Sprint Backlog покрыты тест-кейсами.
- 100% smoke-тестов выполнены успешно.
- 0 открытых багов с приоритетом P0 или P1.
- Product Owner подписал Acceptance Report.

Вот примерно так, чувак. Всё это нужно, чтобы не получилось, как с тем Герасимом — взял да и утопил всё в конце спринта, потому что совесть замучила, а договориться ни с кем не смог.