Найти тему

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

Оглавление

Привет Друзья! В данной статье, Мы разберем статическое и динамическое тестирование, когда они применяются и в чем между ними разница.

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

По критерию запуска программы (исполняется ли программный код) выделяют 2 вида тестирования: статическое и динамическое.

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

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

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

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

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

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

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

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

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

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

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

Пришло время прощаться, подписывайтесь на канал, ставьте лайк и до новых встреч!