Что такое smoke-тестирование?

Когда говорят о тестировании в ИТ, подразумевают процесс поиска ошибок, длящийся недели, а то и месяцы. Существует быстрое тестирование — это так называемое smoke-тестирование (smoke testing, «дымовое тестирование»). Коротко: это предварительное тестирование самых важных функций.

Происхождение. Почему дымовое тестирование так называется

Есть несколько версий:

  • Из-за того, что проверка начинается «пока аппарат еще дымится», то есть устройство только что собрано (то есть, только что закончена пайка).
  • Терминология водопроводчиков. Водопроводчики проверяли герметичность труб, запуская туда дым. Если в трубе была дыра, ее находили по струйке дыма.
  • Наиболее правдоподобная версия: термин инженеров-электротехников. Когда на электрическую цепь впервые подавалось питание, она могла дымиться если пайка была небрежной, или если в устройстве были дефекты.

Когда применяется

Предназначение дымового тестирования: проверка важнейших функций приложения. Простой и быстрый метод проверки приложения на ранней стадии разработки. 

В терминологии QA, это предварительное тестирование приложения после билда, но перед релизом, отвечающее на вопрос работает ли приложение в целом?

Смок-тестирование по предназначению похоже на санитарное тестирование, но санитарное тестирование более узкое, обычно проверяет какую-то одну проблемную функцию, а не все приложение.

Зачем нужно в жизненном цикле

Если смотреть интегрально, с точки зрения QA и CI-CD-пайплайна, то смок-тестирование — это о том как проверить, что остальные виды тестирования уже валидные, то есть можно идти дальше. Ведь если билд падает при установке, или если половина страниц сайта не грузится, то нет смысла продолжать тестирование, пока такие крупные дефекты не уберут.

Дымовое тестирование
Дымовое тестирование

Может быть и ручным, и автоматизированным

Ручное смок-тестирование — это процесс проверки ключевых функций на явные дефекты. Чаще всего этим и ограничиваются, особенно если приложение небольшое.

Автоматизированное смок-тестирование — пишутся скрипты, проверяющие ключевые функции. Иногда это бывает целесообразно, если действия стандартные и повторяемые.

Может быть и гибридное тестирование: сочетание ручного и автоматизированного.

Конкретные этапы смок-тестирования зависят от приложения — далее.

Примеры smoke-тестирования

Итак, цель «дымного тестирования» — убедиться, что приложение уже рабочее, функциональности уже достаточно, чтобы идти дальше, к следующим этапам тестирования/разработки. Теперь поговорим о том, на что смотрят во время smoke-testing «стандартного приложения»:

  • Какие главные функции пользователь использует — работают ли они?
  • Какие «поддерживающие» функции он использует? (то есть тоже необходимые, вроде входа в свой аккаунт)
  • Работает ли навигация?
  • Приложение может  читать/записывать данные без проблем?

Например такие грубые дефекты не должно пропустить смок-тестирование:

Пример 1: пользователь не может вылогиниться из приложения.

Пример 2: на странице логина не срабатывает кнопка “Submit” перехода к следующей странице, несмотря на корректные логин/пароль.

***

В некоторых книгах по QA встречаются более академически правильные названия smoke-тестов: входные тесты (intake tests, термин одобряет ISTQB); тесты верификации билда (build verification tests, BVT-тесты); или тестирование сборки

***

Контрольные вопросы, которые нужно знать для собеседования / junior QA Interview Questions & Answers: smoke testing

Что входит в смок-тестирование?

Смок-тестирование проверяет общую пригодность приложения. Приложение должно запуститься и продемонстрировать работоспособность своих базовых функций.

Какие дефекты являются целью смок-тестирования?

Легко находимые критические и блокирующие дефекты.

Когда проводится смок-тест? На каком этапе нужно проводить смок-тестирование?

Смок-тестирование выполняется при каждой новой сборке (новой версии). Пишется минимальный набор тест-кейсов для критически важного функционала, с уточнением серьезности и приоритета.

Зачем нужно Smoke тестирование?

Цель такого тестирования – проверить, что после очередной сборки программного продукта нет явных, грубых дефектов, «блокирующих дальнейший путь». 

Почему называется smoke testing?

Это странное название происходит из истории XX века, а именно: крайне несовершенных электрических приборов того времени. Если при включении электроприбора был виден дым (или был запах горелой проводки) – прибор еще нерабочий.

Что такое sanity-тестирование? Это не то же, что smoke-тестирование? В чем разница между дымовым тестированием и санитарным?

Смок-тестирование проверяет критически важный функционал приложения; а санитарное тестирование проверяет отдельный модуль приложения. 

(Более правильно “санитарное тестирование” называется “тестированием согласованности”, но термин “санитарное” уже прижился у российских тестировщиков).

Простыми словами, смок-тестирование — это как бы тестирование «вширь и всего», а санити-тестирование это как бы «вглубь и одного модуля». Смок-тесты должны быстро «покрыть» критический функционал в сжатые сроки, а санити-тесты — для тщательной проверки «подозреваемой» функции.

Расположите известные вам типы тестов в порядке их выполнения:

QA-тесты стандартно выполняются в таком порядке: юнит-тесты, интеграционные, санити-тесты, смок-тесты, функциональные тесты.

Как связаны смок-тесты и регрессионные?

Смок-тесты с теоретической точки зрения являются подмножеством регрессионных.

Кто проводит smoke-тестирование? Разработчики или тестировщики?

По ситуации. Чаще это делают тестировщики, но лучше это получается у разработчиков )

Отлично! А нарисуете схему смок-тестирования?

схема smoke тестирования

Какой была ваша первая зарплата в QA и как вы искали первую работу?

Мега обсуждение в нашем телеграм-канале о поиске первой работы. Обмен опытом и мнения.

3 КОММЕНТАРИИ

Подписаться
Уведомить о
guest

3 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии
Soregashi
Soregashi
1 год назад

Проверяется ли новый функционал билда во время смок тестов?

Testing
Testing
1 год назад
Ответить на  Soregashi

Да, так как при выкладке нового билда происходит проверка основного функционала на работосмопосбность.

kekus
kekus
8 месяцев назад
Ответить на  Testing

работосмопосбность

ea43ce81-6cb2-479d-8c2e-fadd443af6f6.png

Мы в Telegram

Наш официальный канал
Полезные материалы и тесты
Готовимся к собеседованию
Project- и Product-менеджмент

? Популярное

? Telegram-обсуждения

Наши подписчики обсуждают, как искали первую работу в QA. Некоторые ищут ее прямо сейчас.
Наши подписчики рассказывают о том, как не бояться задавать тупые вопросы и чувствовать себя уверенно в новой команде.
Обсуждаем, куда лучше податься - в менеджмент или по технической ветке?
Говорим о конфликтных ситуациях в команде и о том, как их избежать
$1100*
медианная зарплата в QA в июне 2023

*по результатам опроса QA-инженеров в нашем телеграм-канале

Собеседование

19%*
IT-специалистов переехало или приняло решение о переезде из России по состоянию на конец марта 2022

*по результатам опроса в нашем телеграм-канале

live

Обсуждают сейчас