Smoke-тестирование - это быстрая проверка критически важных функций приложения после сборки, деплоя или обновления.
Его цель - убедиться, что система в целом работоспособна и готова к более глубокой проверке (например, регрессии или нагрузочному тестированию).
Зачем они нужны?
📍Экономия времени и ресурсов
Если базовые функции не работают, нет смысла тратить время на детальное тестирование.
Пример: После обновления интернет-магазина не работает кнопка «Купить» → smoke-тест выявит это за 2 минуты, а не через 5 часов.
В случае поддержки CI/CD - в непрерывной интеграции smoke-тесты автоматически запускаются после каждой сборки, чтобы отсечь нерабочие версии.
Пример: Разработчик залил код с ошибкой в авторизации → автоматический smoke-тест подсветит проблему.
📍Снижение рисков
Такие тесты гарантируют, что ключевые сценарии работают перед показом продукта заказчику или релизом.
Пример: Перед демо банковского приложения проверяют, что пользователь может войти в аккаунт и посмотреть баланс карты.
Что именно проверяют в smoke-тестах?
✔️ Минимальная работоспособность приложения
Запускается/устанавливается ли приложение?
Доступен ли сервер/базы данных?
Работает ли авторизация?
✔️ Ключевые пользовательские сценарии:
Создание/оплата заказа, переход между экранами, сохранение данных.
✔️ Интеграции:
АPI тесты - smoke-тест CRUD (создание → чтение → изменение → удаление).
Доступность внешних сервисов (например, платежи, карты, email).
Как можно проводить smoke-тестирование:
Использовать автоматизацию тестов - например, скрипты на Selenium, Playwright, Postman, которые проверяют основные сценарии за короткий промежуток времени.
Мануальные тесты (по чек-листу) - тестировщик быстро проходит по пунктам: «Запуск приложения → Вход → Добавление товара в корзину → Оплата товара».
Стоит отметить, что smoke-тесты не универсальны, потому что критичный функционал зависит от:
📌Архитектуры приложения - например, система использует внешние API (платежи, геолокация), их доступность включают в smoke-тесты.
📌Типа проекта и бизнес-критичных функций:
📱 Для мобильных -проверка установки, запуска, пушей
🏦 Для банков - транзакции, авторизация, история
🧬 Для медицинских - карточки пациентов, календарь
🎮 Для игр - загрузка уровней, сохранения, платежи
#qa #процессы
Как итог: Smoke-тесты - это «первая помощь» для проекта. Они отвечают на вопрос:
«Можно ли вообще тестировать эту версию?»
Нет? → сборка «нестабильная», а команда чинит базовые функции, не тратя время на глубокий анализ.
