Раздел 2 Виды и направления тестирования

Раздел 2 Виды и направления тестирования

2.1. Упрощённая классификация тестирования

Тестирование можно классифицировать по очень большому количеству признаков, и практически в каждой серьёзной книге о тестировании автор показывает свой (безусловно имеющий право на существование) взгляд на этот вопрос.

Соответствующий материал достаточно объёмен и сложен, а глубокое понимание каждого пункта в классификации требует определённого опыта, потому мы разделим данную тему на две: сейчас мы рассмотрим самый простой, минимальный набор информации, необходимый начинающему тестировщику, а в следующей главе приведём подробную классификацию.

Используйте нижеприведённый список как очень краткую «шпаргалку для запоминания». Итак, тестирование можно классифицировать:

1.17.jpg

Рисунок 1 Упрощённая классификация тестирования.

По запуску кода на исполнение:

· Статическое тестирование — без запуска.

· Динамическое тестирование — с запуском.

 

По доступу к коду и архитектуре приложения:

· Метод белого ящика — доступ к коду есть.

· Метод чёрного ящика — доступа к коду нет.

· Метод серого ящика — к части кода доступ есть, к части — нет.

По степени автоматизации:

· Ручное тестирование — тест-кейсы выполняет человек.

· Автоматизированное тестирование — тест-кейсы частично или полностью выполняет специальное инструментальное средство.

По уровню детализации приложения (по уровню тестирования):

· Модульное (компонентное) тестирование — проверяются отдельные небольшие части приложения.

· Интеграционное тестирование — проверяется взаимодействие между несколькими частями приложения.

· Системное тестирование — приложение проверяется как единое целое.

По (убыванию) степени важности тестируемых функций (по уровню функционального тестирования):

· Дымовое тестирование  — проверка самой важной, самой ключевой функциональности, неработоспособность которой делает бессмысленной саму идею использования приложения.

· Тестирование критического пути — проверка функциональности, используемой типичными пользователями в типичной повседневной деятельности.

· Расширенное тестирование — проверка всей (остальной) функциональности, заявленной в требованиях.

По принципам работы с приложением:

· Позитивное тестирование — все действия с приложением выполняются строго по инструкции ни без каких недопустимых действий, некорректных данных и т.д. Можно образно сказать, что приложение исследуется в «тепличных условиях».

· Негативное тестирование — в работе с приложением выполняются (некорректные) операции и используются данные, потенциально приводящие к ошибкам (классика жанра — деление на ноль).

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

Но исторически так сложилось, что как минимум «тип тестирования» (testing type) и «вид тестирования» (testing kind) давно стали синонимами.