Разница между smoke-тестированием и sanity-тестированием заключается в целях и масштабах проверки: 13
- Основная цель smoke-тестирования — подтверждение общей стабильности приложения, проверка того, что все критически важные функции работают на базовом уровне. 13
- Основная цель sanity-тестирования — проверка функциональности конкретных изменений или исправлений багов, чтобы убедиться, что они работают так, как ожидалось. 23
Некоторые другие отличия:
- Масштаб проверки: при smoke-тестировании проверяется вся система целиком, при sanity-тестировании — только определённый компонент системы. 1
- Стабильность сборки: smoke-тестирование может проводиться как на стабильных, так и на нестабильных сборках, sanity-тестирование обычно проводится на относительно стабильных сборках. 1
- Подход к выполнению: smoke-тестирование часто автоматизируется и интегрируется в конвейеры CI/CD, sanity-тестирование обычно выполняется вручную. 23
- Документация и структура: smoke-тестирование обычно хорошо документировано и структурировано, с определёнными тест-кейсами, которые выполняются последовательно для каждой сборки. 3 Sanity-тестирование часто менее формальное и структурированное, с тест-кейсами, которые создаются или модифицируются на основе проверяемых изменений. 3
- Кто выполняет тесты: smoke-тестирование могут проводить разработчики, тестировщики или автоматизированные системы, sanity-тестирование обычно выполняют специалисты по контролю качества или тестировщики. 3
Smoke-тестирование и sanity-тестирование не взаимоисключающие подходы, а части одной стратегии. 5