3.5 Классификация по запуску кода на исполнение и по исполнителю
Тестирование не всегда предполагает взаимодействие с работающим приложением. Отсюда и классификация тестирования по запуску кода на исполнение.
Классификация по запуску кода на исполнение
Статическое тестирование
Статическое тестирование — тестирование без запуска кода на исполнение.
Это процесс обнаружения и устранения ошибок и дефектов в различных сопроводительных документах (например, требованиях к программному обеспечению).
В рамках этого подхода тестированию могут подвергаться и проверка их на актуальность:
- Документы (требования, тест-кейсы, описания архитектуры приложения, схемы баз данных и т.д.). К примеру, у нас появился новый функционал и часть тест-кейсов стала не актуальной, необходимо вносить в них корректировки
- Графические прототипы (например, эскизы пользовательского интерфейса). Интерфейс нашего продукта может регулярно меняться, добавляться новые поля, кнопки и т.д., необходимо так же корректировать и эскизы нашего интерфейса
- Код приложения (что часто выполняется самими программистами в рамках аудита кода (code review), являющегося специфической вариацией взаимного просмотра в применении к исходному коду). Код приложения также можно проверять с использованием техник тестирования на основе структур кода.
- Параметры (настройки) среды исполнения приложения.
- Подготовленные тестовые данные.
Динамическое тестирование
Динамическое тестирование — тестирование проводится на работающей системе, не может быть осуществлено без запуска программного кода приложения.
Запускаться на исполнение может как код всего приложения целиком (системное тестирование), так и код нескольких взаимосвязанных частей (интеграционное тестирование), отдельных частей и даже отдельные участки кода.
Основная идея этого вида тестирования состоит в том, что проверяется реальное поведение (части) приложения.
Проще говоря, динамическое тестирование выполняется путем фактического использования приложения и определения того, работает ли функциональность так, как ожидается.
То есть любое тестирование, в котором мы начинаем взаимодействовать с приложением, является динамическим. Например, проверка авторизации на сайте, запуск приложения, совершение какого либо действия в компьютерной игре и многое другое. Наша задача — посмотреть, как продукт реагирует на наши действия. Для этого мы вводим все необходимые условия и смотрим результат.
Классификация в зависимости от исполнителей:
Альфа-тестирование
Альфа-тестирование — объектом данного тестирования является ранняя версия программного продукта. Может выполняться внутри организации-разработчика с возможным частичным привлечением конечных пользователей.
То есть тестирование членами команды разработки или, к примеру привлечение сотрудников со стороны Заказчика.
Бета-тестирование
Бета-тестирование — тестирование программного обеспечения, выпускаемое для ограниченного количества пользователей. Главная цель — получить отзывы клиентов о продукте и внести соответствующие изменения.
Например, в производстве видео игр, часто выпускают бета-версию игры на рынок, чтоб пользователи испытали и оценили ее. Я уже приводил Вам данный пример, когда рассказывал о пользовательском тестировании.