Каков порядок срочных действий команды при обнаружении критического бага в production?

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

Ответ

Обнаружение бага после релиза требует четкого инцидент-менеджмента для минимизации ущерба и будущих рисков.

План экстренного реагирования (Incident Response):

  1. Фиксация и оценка (Detection & Assessment):

    • Зафиксируйте баг в трекере (Jira, GitHub Issues) с максимальной детализацией: шаги воспроизведения, скриншоты/логи, окружение, данные пользователя (обезличенные).
    • Оцените влияние (Impact) и срочность (Urgency): Сколько пользователей затронуто? Какая бизнес-функция сломана? На основе этого определите критичность (Severity).
  2. Содержательные действия (Containment & Fix):

    • Для критичных багов: Рассмотрите возможность отката (rollback) до стабильной версии или выпуска экстренного патча (hotfix).
    • Для менее критичных: Может быть достаточно временного решения (feature toggle, выключение функционала) с планированием фикса в следующем регулярном релизе.
    • Коммуникация: Проинформируйте затронутых пользователей (через статус-страницу, email) о проблеме и ожидаемых сроках решения.
  3. Анализ первопричины и улучшения (Postmortem):

    • После стабилизации ситуации проведите разбор полетов (blameless postmortem).
    • Ответьте на вопросы: Почему баг пропустили? Сломалось ли что-то в процессе (тесты, ревью кода, деплой)?
    • Запланируйте действия по предотвращению повторения: добавить отсутствующий тест, улучшить мониторинг, изменить процесс.

Пример структуры постмортема:

## Postmortem: Сбой платежной системы 2023-10-26
*   **Краткое описание:** В 14:30 платежный шлюз вернул ошибку 500 для 30% запросов.
*   **Коренная причина (Root Cause):** Истечение SSL-сертификата на одном из внутренних микросервисов.
*   **Действия по исправлению:** Обновление сертификата, развертывание hotfix-патча.
*   **Предотвращение в будущем:**
    1.  Внедрить автоматическое оповещение об истечении сертификатов за 30 дней.
    2.  Добавить интеграционный тест, проверяющий handshake с платежным шлюзом в CI/CD.

Ключевая цель — не просто исправить баг, а укрепить систему и процессы, чтобы подобное не повторялось.