Добавить в корзинуПозвонить
Найти в Дзене
Вопрос? = Ответ!

Что такое Smoke test?

Представьте себе ситуацию: вы купили навороченный электрогриль, притащили его домой, включили в розетку и... тишина. Ни одна лампочка не загорелась, никакого запаха гари (в хорошем смысле) или тепла. Обидно, правда? Вот примерно так и работает проверка «первого запуска» в мире разработки ПО. Если вы когда-нибудь задавались вопросом, что такое Smoke test?, то приготовьтесь — сейчас разберем всё по полочкам, без лишнего официоза. Сама идея пришла к нам не из чистого айтишного кода, а от суровых водопроводчиков и инженеров-электронщиков. Когда они чинили систему труб или паяли плату, первым делом пускали дым или воду под давлением. Если из стыков не валят клубы серого дыма и не бьют фонтаны, значит, база в порядке, можно работать дальше. В программировании логика идентична. Говоря простым языком, это супер-быстрая проверка самых критичных функций программы. Это не тот случай, когда тестировщик дотошно проверяет, скругляются ли углы у каждой кнопки или правильно ли считается налог в тринад
Оглавление

Представьте себе ситуацию: вы купили навороченный электрогриль, притащили его домой, включили в розетку и... тишина. Ни одна лампочка не загорелась, никакого запаха гари (в хорошем смысле) или тепла. Обидно, правда? Вот примерно так и работает проверка «первого запуска» в мире разработки ПО. Если вы когда-нибудь задавались вопросом, что такое Smoke test?, то приготовьтесь — сейчас разберем всё по полочкам, без лишнего официоза.

Дымовая завеса: откуда пошло название?

Сама идея пришла к нам не из чистого айтишного кода, а от суровых водопроводчиков и инженеров-электронщиков. Когда они чинили систему труб или паяли плату, первым делом пускали дым или воду под давлением. Если из стыков не валят клубы серого дыма и не бьют фонтаны, значит, база в порядке, можно работать дальше. В программировании логика идентична.

Так всё же, что такое Smoke test?

Говоря простым языком, это супер-быстрая проверка самых критичных функций программы. Это не тот случай, когда тестировщик дотошно проверяет, скругляются ли углы у каждой кнопки или правильно ли считается налог в тринадцатом знаке после запятой. Нет, тут подход другой: «Оно вообще заводится?».

Если после сборки проекта ваше приложение падает при попытке авторизации — всё, закругляемся. Дымовое тестирование провалено, и отдавать такой билд на глубокое растерзание тестерам просто нет смысла. Зачем тратить время команды на поиск мелких багов, если главный экран даже не прогружается?

Почему это важно (и почему без этого — труба)

Честно говоря, многие новички пренебрегают этим этапом, считая его пустой тратой драгоценных минут. А зря! Давайте прикинем, какие плюшки дает понимание того, что такое Smoke test?, на практике:

  1. Экономия нервов. Разработчик сразу видит, не «сломал» ли он проект последним коммитом.
  2. Скорость. Такой тест пролетает за 5–15 минут, а пользы приносит на миллион.
  3. Автоматизация. «Дымок» идеально ложится на рельсы автотестов. Скрипт прогнал базу — и все свободны.

Кстати, используя это тестирование, вы страхуете себя от ситуации, когда вся команда сидит полдня без дела, потому что билд оказался «битым». Согласитесь, приятного мало?

Когда его проводить?

Обычно «дым пускают» каждый раз, когда в код вносятся изменения или прилетает новая сборка от разработчиков. Это своего рода входной билет в мир полноценного QA. Логика проста как дважды два: если билд прошел проверку, мы идем дальше. Если нет — возвращаем его «на кухню» довариваться.

Подводя итоги

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

В конечном счете, понимание того, что такое Smoke test?, отличает зрелый процесс разработки от хаотичного кодинга на коленке. Так что, друзья, не забывайте проверять свои системы на «задымленность», прежде чем пускаться во все тяжкие глубокого тестирования!