Страницы

Поиск по вопросам

суббота, 11 января 2020 г.

Что такое smoke test и с чем его едят?

#linux #shell #freebsd #test_automation


Что такое smoke test? Гугл дал только краткую формулировку, а хотелось бы с конкретными
примерами, литературой и т. д. Как можно запустить данные тесты ( какие команды в shell'е
) в разных unix подобных ос для разных утилит. Насколько я понимаю, для каждой программы
есть определенный набор команд ( tool -h или -version ), и проверив работоспособность
такого manpage можно сказать, что данная утилита прошла smoke test или нет.
    


Ответы

Ответ 1



какие команды в shell'е Проще всего: if tool -h then echo "Прошли smoke test" else echo "Не прошли smoke test" if tool --version then echo "Прошли smoke test" else echo "Не прошли smoke test" Но не факт, что все разработчики tool достаточно добросовестны и снабдили свой tool обработкой этих опций.

Ответ 2



Только проверку того, что тулза скомпилировалась - сложно назвать smoke-test. Smoke-test должен поверхностно протестировать наличие и корректную работу в тривиальных случаях всех самых важных функций тестируемой системы. Основная задача - охватить как можно больше функциональности за кратчайшее время. Никаких сложных кейсов. Цель - выявление проблем со сборкой перед её скармливанием более глубоким методам тестирования, экономия времени, очистка истории сборок от случайных ошибок. Дымовое тестирование имеет смысл размещать не на серверах CI, а у конкретных разработчиков либо на хуки системы контроля версий на development сервере. Его, в принципе, можно не автоматизировать(хотя тогда есть риск его пропустить). Разработчик может просто самостоятельно пробежаться по всем(не только по тем, в которые он вносил изменения) важным узлам билда вручную - это тоже вполне себе smoke-тестирование По поводу утилит, вы используете привычные вам методы тестирования, различие только в наборе тестов - вы идёте не в глубину, а в ширину.

Ответ 3



Само выражение smoke test - пришло из электроники. Собрали вы новое устройство, включили его в розетку, а оно громко бабахнуло и выпустило белый дым - значит smoke test не пройден. В программировании smoke test обозначает достаточно быстрый тест самой важной функциональности. Какой именно, зависит от программы. Например для интернет браузера будет достаточно открыть какой-нибудь https://google.com

Комментариев нет:

Отправить комментарий