В этом небольшом руководстве мы рассмотрим такой распространенный вид тестирования программного обеспечения, как санитарное тестирование (sanity testing).
Так же как и дымовое тестирование (smoke testing), санитарное тестирование считается одним из самых запутанных понятий в области тестирования ПО. Поэтому о нем очень часто спрашивают на собеседованиях QA-специалистов. В этой статье мы постараемся охватить различные аспекты и преимущества санитарного тестирования, а также привести подробные примеры.
Давайте начнем с определения.
Друзья, поддержите нас вступлением в наш телеграм канал QaRocks. Там много туториалов, задач по автоматизации и книг по QA.
Содержание:
- Определение санитарного тестирования
- Пример санитарного тестирования
- Ключевые особенности санитарного тестирования
- Преимущества санитарного тестирования
Определение санитарного тестирования
Sanity-тестирование – это разновидность регрессионного тестирования. Оно проводится с целью подтверждения того, что изменения, внесенные в код, не нарушили основной функциональности системы. Чаще всего, при исправлении багов, изменения в коде небольшие, и наша цель – проверить, что баги исправлены, а также убедиться в работоспособности критического функционала приложения.
Как и при регрессионном тестировании, в санитарном мы проверяем, не повлияло ли исправление кода на работу главной функциональности приложения. Но при этом затрачиваем меньше времени и выполняем меньше тест-кейсов, концентрируясь только на отдельных ключевых элементах.
Итак, в результате:
- Мы проводим тестирование после внесения исправления (обычно минорного фикса)
- Мы проверяем ограниченную, но критически важную часть функциональности
- А затем принимаем решение, готов ли билд к развертыванию на продакшн или нет
Пример санитарного тестирования
Для примера рассмотрим простое веб-приложение. Предположим, что все функции приложения работают нормально, но в модуле регистрации возникли ошибки с API капчи. После решения этой проблемы, нет смысла проводить полное тестирование всех модулей приложения.
Вместо этого достаточно протестировать только модуль регистрации. Если он работает корректно, то мы можем считать билд готовым для продакшна. Такой метод успешно применяется в условиях дефицита времени.
Ключевые особенности санитарного тестирования
1. Разновидность регрессионного тестирования. Санитарное тестирование является разновидностью регрессионного, направленного на проверку более узкого функционала приложения.
2. Узкий и глубокий подход. Мы тщательно, глубоко проверяем ограниченную функциональность.
3. Нет документации. Чаще всего sanity-тесты не документируются и нам не нужно иметь четко определенный набор тест-кейсов.
4. Не автоматизировано. Обычно sanity-тесты не автоматизируются и выполняются только вручную.
Преимущества санитарного тестирования
- Это помогает быстро выявить проблемы в основной функциональности. Таким образом, можно быстро проверить стабильность приложения и оперативно сообщить о любых проблемах и устранить их.
- Поскольку документация не требуется, эти тесты могут быть проведены за меньшее время по сравнению с другими формальными тестами.
- В случае обнаружения проблем во время санитарного тестирования, сборка отклоняется. Это позволяет сэкономить много времени и ресурсов, которые в противном случае были бы направлены на выполнение долгих регрессионных тестов.
Смотри также: “Чем отличаются санитарное и дымовое тестирование”.
Перевод статьи «Sanity Testing».