Алекс Смит: Тестирование ПО с Нуля до Специалиста
January 26

3.5 Классификация по запуску кода на исполнение и по исполнителю

Тестирование не всегда предполагает взаимодействие с работающим приложением. Отсюда и классификация тестирования по запуску кода на исполнение.

Классификация по запуску кода на исполнение

Статическое тестирование

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

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

В рамках этого подхода тестированию могут подвергаться и проверка их на актуальность:

  • Документы (требования, тест-кейсы, описания архитектуры приложения, схемы баз данных и т.д.). К примеру, у нас появился новый функционал и часть тест-кейсов стала не актуальной, необходимо вносить в них корректировки
  • Графические прототипы (например, эскизы пользовательского интерфейса). Интерфейс нашего продукта может регулярно меняться, добавляться новые поля, кнопки и т.д., необходимо так же корректировать и эскизы нашего интерфейса
  • Код приложения (что часто выполняется самими программистами в рамках аудита кода (code review), являющегося специфической вариацией взаимного просмотра в применении к исходному коду). Код приложения также можно проверять с использованием техник тестирования на основе структур кода.
  • Параметры (настройки) среды исполнения приложения.
  • Подготовленные тестовые данные.

Динамическое тестирование

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

Запускаться на исполнение может как код всего приложения целиком (системное тестирование), так и код нескольких взаимосвязанных частей (интеграционное тестирование), отдельных частей и даже отдельные участки кода.

Основная идея этого вида тестирования состоит в том, что проверяется реальное поведение (части) приложения.

Проще говоря, динамическое тестирование выполняется путем фактического использования приложения и определения того, работает ли функциональность так, как ожидается.

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

Классификация в зависимости от исполнителей:

Альфа-тестирование

Альфа-тестирование — объектом данного тестирования является ранняя версия программного продукта. Может выполняться внутри организации-разработчика с возможным частичным привлечением конечных пользователей.

То есть тестирование членами команды разработки или, к примеру привлечение сотрудников со стороны Заказчика.

Бета-тестирование

Бета-тестирование — тестирование программного обеспечения, выпускаемое для ограниченного количества пользователей. Главная цель — получить отзывы клиентов о продукте и внести соответствующие изменения.

Например, в производстве видео игр, часто выпускают бета-версию игры на рынок, чтоб пользователи испытали и оценили ее. Я уже приводил Вам данный пример, когда рассказывал о пользовательском тестировании.