Что вы будете делать, если разработчик отказывается исправлять заведенный вами баг?

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

Ответ

В этой ситуации я действую по принципу конструктивного диалога и эскалации на основе данных, а не мнений.

Алгоритм действий:

  1. Уточнение причины: Вежливо прошу разработчика пояснить причину отказа. Частые причины: "не воспроизводится", "не является багом по ТЗ", "низкий приоритет", "это фича".
  2. Подготовка доказательной базы:
    • Воспроизводимость: Перепроверяю баг, записываю четкие шаги, добавляю видео/скриншоты, логи, данные об окружении.
    • Соответствие требованиям: Сверяю описание проблемы с ТЗ, пользовательскими историями или дизайн-макетами. Если баг нарушает документацию — прикладываю ссылки.
    • Оценка влияния: Четко описываю бизнес-риск: кого и как баг затрагивает (например, "блокирует покупку для 10% пользователей").
  3. Повторное обсуждение: Предоставляю разработчику обновленную информацию. Часто этого достаточно для разрешения спора.
  4. Эскалация: Если разногласия остаются, привлекаю третью сторону для принятия решения — тимлида, проджект-менеджера или продакт-оунера. Их задача — расставить приоритеты на основе бизнес-ценности.

Пример структурированного комментария в задаче:

**Проблема:** При нажатии кнопки "Сохранить" в форме X возникает ошибка 500.
**Шаги воспроизведения:**
1. Залогиньтесь как пользователь Y.
2. Перейдите на страницу Z.
3. Заполните поле "Имя" значением "Test'Name" (с апострофом).
4. Нажмите "Сохранить".
**Ожидаемо:** Данные сохраняются (как указано в ТЗ v1.2, п. 4.5).
**Фактически:** Ошибка "Internal Server Error" (скриншот и лог приложены).
**Влияние:** Пользователи не могут сохранить профиль, если в имени есть апостроф.
**Предложение:** Исправить санитизацию входных данных для поля "Имя".

Если после эскалации принимается решение не чинить баг, я фиксирую это решение в задаче и, при необходимости, в документации (например, как известное ограничение).