В разработке программного обеспечения (ПО) важно различать виды тестирования, чтобы обеспечить высокое качество продукта. Двое из этих видов — смоук-тестирование и санити-тестирование — часто вызывают вопросы относительно их различий и применения.
💡 В этой статье:
Подробно рассматриваем оба подхода, их цели, задачи и условия использования.
После каждой новой сборки или обновления системы проводится дымовое тестирование. Например, при добавлении новой функции команда тестирования проверяет, что основные функции приложения работают корректно и не нарушены. Это позволяет выявлять критические дефекты на ранних этапах разработки, обеспечивая стабильность и надежность продукта.
Санити-тестирование проводится после внесения небольших изменений или исправлений в код. Например, после исправления бага команда тестирования выполняет санити-тесты, чтобы убедиться, что проблема решена и система работает стабильно.
Начальные проверки охватывают только базовые функции — например, запуск приложения, авторизацию, переход по основным страницам или доступность ключевых компонентов интерфейса — они нужны, чтобы убедиться, что система в целом запускается и не «падает» сразу после сборки. Проверки стабильности касаются лишь отдельных компонентов, изменённых в последнем коммите, — будь то логика, багфиксы или элементы интерфейса.
Частота и объём зависят от практик команды. Например, в CI-сценариях smoke-запуски выполняются автоматически при каждом коммите, а sanity-наборы — только при ручном триггере или изменении критичных компонентов. Но оба подхода работают быстрее, если хорошо настроены фильтры и запускаются выборочно, без всей тестовой базы.
Чёткое разделение ролей смоук- и санити-тестирования помогает быстро находить критические ошибки и оперативно проверять исправления. Правильно используя оба подхода, команда сокращает риски выпуска нестабильного продукта и ускоряет выход релизов.
Долгие циклы тестирования тормозят релизы, а ложные сбои крадут время команды. В экосистеме ТестОпс это решается так: теги, фильтры и селективные запуски позволяют проверять только ключевые сценарии, существенно ускоряя процесс.
Смоук- и санити-тесты не исключают друг друга. Смоук проверяет, запускается ли система и работают ли основные функции. Санити помогает быстро убедиться, что конкретное исправление не вызвало побочных эффектов. Используйте оба подхода в связке: так вы быстрее найдёте критические ошибки и подтвердите стабильность перед релизом.
📚 Попробуйте в работе
Узнайте больше о возможностях настройки CI-интеграции в системе управления тестированием ТестОпс: