Ответ
Ретест (Re-test) — это точечная проверка, направленная на подтверждение того, что конкретный ранее обнаруженный дефект был успешно исправлен. Это проверка одного сценария.
Регрессионное тестирование (Regression Testing) — это широкая проверка, цель которой — убедиться, что последние изменения в коде (исправление бага, новая функциональность, рефакторинг) не привели к появлению новых дефектов в уже протестированных частях системы.
Сравнение в таблице:
| Критерий | Ретест | Регрессионное тестирование |
|---|---|---|
| Цель | Подтвердить исправление конкретного дефекта | Убедиться, что изменения не сломали существующий функционал |
| Объем | Узкий (один или несколько связанных тест-кейсов) | Широкий (затронутые модули или вся система) |
| Объект | Исправленный баг | Измененный код и связанные с ним области |
| Автоматизация | Чаще выполняется вручную | Часто автоматизировано (набор регрессионных тестов) |
| Когда выполняется | После получения фикса от разработчика | После сборки, перед выпуском версии, после значительных изменений |
Пример:
В форме регистрации был баг: поле email принимало адрес без символа @.
- Ретест: Тестировщик проверяет только это поле, вводя валидные и невалидные email, чтобы убедиться, что валидация теперь работает.
- Регрессия: После этого фикса запускается набор тестов для всей формы регистрации (поля имени, пароля, кнопки отправки), а также для связанных функций (логин, восстановление пароля), чтобы убедиться, что исправление не повлияло на них.