В любом продукте есть критически важный функционал, без которого бизнес просто не выживет. Например, невозможность оформить заказ или отправить заявку на товар или услугу через сайт может остановить деятельность компании. Вот почему на этапе получения каждого релиза вы должны быть уверены: ключевой функционал работает без сбоев.
Для этого тестировщики проводят смок-тесты: быструю оценку работоспособности критически важного функционала сайта. В статье рассказываем, как такие тесты устроены, чем отличаются от регрессионного тестирования и какую роль играет в них учет особенностей клиента.
Как проходит smoke-тестирование?
Смоук-тесты инженеры по тестированию обычно проводят на тестовой среде во время релиза, а затем на продакшене, когда релиз туда уходит, то есть в финале проекта. Это быстрый скрининг основного функционала продукта, который включает:
- Минимальный набор тестов — это проверка работоспособности основной и критической функциональности системы, например, корзины и каталога в интернет-магазине;
- Четкие критерии прохождения — обычно это «работает/не работает»: если тесты проходят успешно, команда переходит к более детальному тестированию, а если нет, то процесс останавливают для исправления выявленных дефектов.
То есть в отличие от других тестов, smoke-тестирование позволяет провести быструю проверку работоспособности основного функционала продукта после его разработки или обновления. Часто после такой проверки проводят более детальную — проверяют сами задачи и остальной связанный функционал.
Почему смоук-тестирование — это важно?
Смок-тестирование зачастую является подготовительным этапом перед более сложными тестами, но и само по себе оно позволяет:
- Удостовериться, что критически важный функционал не сломался и работает исправно;
- Сэкономить время — благодаря смоук-тестам команда может быть уверена, что ключевые функции приложения работают после каждого изменения кода;
- Повысить уровень уверенности в стабильности — регулярные smoke-тесты помогают убедиться в стабильности приложения перед началом более детального тестирования;
- Повысить эффективность — команда не тратит время на дальнейшее тестирование, если базовая функциональность не работает.
Любые баги на сайте приводят к потере денег и ухудшению репутации компании. Поэтому чем раньше удастся их обнаружить, тем дешевле их исправить, и смоук-тесты работают в первую очередь на эту задачу.
Как адаптировать smoke-тестирование под особенности бизнеса?
Перед началом любого smoke-теста инженеры по тестированию составляют чек-лист критического функционала. В идеале он должен быть согласован с владельцем бизнеса.
Универсальных шаблонов для smoke-тестов, которые подходили бы ко всем сайтам, не существует, даже если это сайты одной тематики. Каждый проект имеет свои особенности, и для эффективного составления смок-тестов необходимо предварительно анализировать конкретные требования и функционал данного продукта. Также важно периодически пересматривать и обновлять смок-тесты, чтобы они оставались актуальными. Без регулярной корректировки их эффективность может значительно снизиться, особенно в условиях изменения бизнес-логики или появления новых функций.
Рассмотрим для примера нашего клиента — интернет-магазин «Конфаэль». Определение критически важного функционала начинается с анализа сайта. Если есть возможность, лучше дополнительно запросить аналитику у клиента и посмотреть, на что он обращает внимание.
Вот что можно включить в смок-тест для этого сайта:
- Функционал возможности приобретение товара на сайте
- Вход в личный кабинет
- Работоспособность и удобство использования промокодов (этот магазин делает на них особый упор)
- Отображение разных типов товаров и возможность добавлять их в корзину, с торговыми предложениями и без
- Работоспособность различных форм обратной связи
Для корпоративного сайта будет другой набор тестов (например, для сайта компании Evraz Steel Box):
- Работу в «Готовых проектах» кнопок «Заказать здание», «Скачать КП», «Выбрать дополнительные услуги»
- Работу 3D-конфигуратора расчета стоимости
- Работа калькулятора расчет стоимости
- Различные формы обратной связи на сайте и появление заявки в админке
Заключение
Нельзя полностью исключить вероятность того, что в какой-то функционал на сайте закрался баг. Однако смоук-тесты позволяют минимизировать этот риск, чтобы бизнес не остановился и не начал нести существенные убытки после релиза.