Разница между дымовым, санитарным, регрессионным и повторным тестированиями заключается в их целях и задачах:
- Дымовое тестирование (Smoke Testing) — короткий цикл тестов, который подтверждает, что приложение нормально запускается и выполняет свои функции после сборки кода. 13 Цель — проверить «стабильность» системы в целом. 2
- Санитарное тестирование (Sanity Testing) — узконаправленное тестирование, которое доказывает, что конкретная функция работает согласно заявленным в спецификации требованиям. 3 Используется для определения работоспособности определённой части приложения после изменений, произведённых в ней или окружающей среде. 3 Является подмножеством регрессионного тестирования. 3
- Регрессионное тестирование (Regression Testing) — вид тестирования, который проверяет, что внесённые изменения не повлияли на работу функционала, разработанного ранее. 1 Цель — убедиться, что свежие изменения в коде не оказали побочных эффектов на устоявшуюся работающую функциональность. 2
- Повторное тестирование (Re-testing) — тестирование, во время которого исполняются тестовые сценарии, выявившие ошибки во время последнего запуска, для подтверждения успешности исправления этих ошибок. 3
Граница между этими понятиями весьма условная, и выбор вида тестирования зависит от конкретных требований проекта. 2