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

«Каковы ключевые критерии готовности продукта к релизу?» — вопрос из категории Управление тестированием, который задают на 10% собеседований QA Тестировщик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

Решение о готовности к релизу принимается на основе выполнения ряда критериев, часто формализованных в чек-лист Definition of Ready (DoR) или Definition of Done (DoD).

Основные критерии:

  1. Успешное прохождение всех запланированных тестов.
    • Unit- и интеграционные тесты.
    • End-to-end (E2E) и регрессионные тесты.
    • Тесты производительности и безопасности (если применимо).
  2. Отсутствие открытых критических (Critical/Blocker) и высокоприоритетных (High) багов. Баги среднего и низкого приоритета могут быть приняты и отложены.
  3. Подтверждение готовности от всех заинтересованных сторон: разработчиков, QA, продукт-менеджера, иногда DevOps.
  4. Готовность документации: обновлены пользовательские руководства, релизные заметки (changelog), внутренняя документация.
  5. Готовность инфраструктуры и плана отката (rollback plan). Продовое окружение стабильно, есть четкий и протестированный сценарий отката на предыдущую стабильную версию.

Пример формальной проверки в коде (псевдокод):

def is_release_candidate_ready(build):
    criteria = {
        "tests_passed": build.test_passed_rate >= 99.5,
        "no_critical_bugs": build.open_critical_bugs_count == 0,
        "high_priority_bugs": build.open_high_priority_bugs_count <= 2,
        "docs_updated": build.docs_status == "APPROVED",
        "rollback_plan_exists": True
    }
    return all(criteria.values())