Ответ
Процесс перепроверки (ретеста) бага обычно включает несколько участников:
- Разработчик — после внесения исправления проверяет, что код работает корректно в его локальном окружении, и переводит статус бага в «Fixed» или «Ready for Test».
- QA-инженер (первоначальный автор баг-репорта) — проводит основную проверку на тестовом окружении, чтобы убедиться, что проблема полностью устранена и не появились регрессии.
Почему такая последовательность важна?
- Разработчик устраняет причину на уровне кода.
- QA проверяет результат на уровне пользователя и системы.
Дополнительные сценарии:
- Кросс-чек (Cross-check): Критичные баги может перепроверять другой тестировщик для исключения предвзятости и «эффекта привыкания».
- Автоматизированный ретест: Если для бага написан автоматизированный тест, он может быть запущен в CI/CD для первоначальной проверки.
Итоговое решение о закрытии бага всегда принимает QA-инженер на основании успешного ретеста.
Ответ 18+ 🔞
А, слушай, вот эта вся движуха с перепроверкой багов — это ж целый цирк с конями, ей-богу! Ну ладно, щас разложу по полочкам, как оно на самом деле происходит, а не как в этих ваших сухих мануалах.
Представь картину: разработчик, наш кодер-герой, наконец-то выковырял из кода эту ебучую проблему. Он у себя локально всё потестил, вроде летает. И с чувством выполненного долга хлопает багу статус «Fixed». А сам думает: «Ну всё, ёпта, отъебались».
СТОП, МУДАК! — кричит ему здравый смысл. Это только начало пиздеца, простите, процесса!
Потому что на сцену выходит QA-инженер, тот самый, кто изначально и нашёл эту дичь. Его задача — не просто ткнуть кнопку и сказать «ага, работает». Его святая обязанность — устроить на тестовом стенде такую баню, чтобы мало не показалось. Нужно убедиться не только в том, что баг умер, но и что он, сука, не прихватил с собой на тот свет пол-приложения. Вдруг пока чинили одно, в другом месте ебнуло? Регрессии — это наше всё!
А теперь, блядь, почему так, а не иначе? Всё просто, как три копейки:
- Разработчик — он как хирург. Он залез внутрь, вырезал гангрену (баг) и зашил. У себя в операционной (локальном окружении) всё стерильно и красиво.
- QA — это как санитарный врач. Он приходит в палату к больному (на тестовое окружение) и проверяет: пациент-то жив? А соседи по палате не заразились? А может, после операции у него жопа отвалилась, которую не оперировали? Он смотрит на систему глазами того самого юзера, который в жизни в консоль не залезал.
Но и это ещё не всё, друзья! Бывают случаи, когда включают тяжёлую артиллерию:
- Кросс-чек (Cross-check): Самый эпичный цирк. Когда баг такой важности, что его первоначальному автору уже доверия — ноль ебать. Глаз «замылился», мог что-то упустить. Тогда зовут другого тестировщика, свежий взгляд, который ещё не ненавидит этот функционал всеми фибрами души. Исключаем предвзятость и «эффект привыкания», а то сам знаешь — десятый раз кликаешь и уже не замечаешь, что кнопка на два пикселя съехала.
- Автоматизированный ретест: Вот это уже красота, если, конечно, автотесты написаны. Нашли баг — написали под него тест, который этот баг ловит. Починили — запустили этот тест в CI/CD. Если он зелёный, можно выдохнуть (но не до конца!). Автомат — он хороший подсобный рабочий, но мозгов у него, как у табуретки.
И вот, кульминация! Итоговое решение — закрывать баг или нет — это ВСЕГДА за QA-инженером. Только он, проведя свой адский ритуал проверки, может сказать: «Да, хуй с горы, всё чисто, можно в прод». Или: «Ой, бля, разработчик-мудак, тут же регрессия на ровном месте! Возвращаю в работу, иди, исправляй, пока я тебе клавиатуру об голову не разбил!».
Вот так вот, коротко и без соплей. Кажется, всё ясно?