Статическое тестирование против динамического: в чем разница?

Содержание:

Anonim

Что такое статическое тестирование?

Статическое тестирование - это тип тестирования программного обеспечения, при котором приложение тестируется без выполнения кода. Ручные или автоматические проверки кода, документов требований и дизайна документов выполняются для обнаружения ошибок. Основная цель статического тестирования - улучшить качество программных приложений за счет поиска ошибок на ранних этапах процесса разработки программного обеспечения.

Статическое тестирование включает ручную или автоматическую проверку документов. Этот обзор выполняется на начальном этапе тестирования, чтобы выявить дефект на ранней стадии STLC. Он изучает рабочие документы и предоставляет комментарии к обзору. Его также называют тестированием без выполнения или проверочным тестированием.

Примеры рабочих документов-

  • Технические требования
  • Проектный документ
  • Исходный код
  • Планы испытаний
  • Тестовые кейсы
  • Сценарии тестирования
  • Справка или пользовательский документ
  • Содержание веб-страницы

Что такое динамическое тестирование?

При динамическом тестировании выполняется код. Он проверяет функциональное поведение программной системы, использование памяти / процессора и общую производительность системы. Отсюда и название «Динамический».

Основная цель этого тестирования - подтвердить, что программный продукт работает в соответствии с бизнес-требованиями. Это тестирование также называется техникой выполнения или проверочным тестированием.

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

КЛЮЧЕВАЯ РАЗНИЦА

  • Статическое тестирование было выполнено без выполнения программы, тогда как динамическое тестирование выполняется путем выполнения программы.
  • Статическое тестирование проверяет код, документы требований и проектную документацию на предмет ошибок, тогда как динамическое тестирование проверяет функциональное поведение программной системы, использование памяти / ЦП и общую производительность системы.
  • Статическое тестирование предназначено для предотвращения дефектов, а динамическое тестирование - для поиска и исправления дефектов.
  • Статическое тестирование выполняет процесс проверки, а динамическое тестирование - процесс проверки.
  • Статическое тестирование выполняется перед компиляцией, тогда как динамическое тестирование выполняется после компиляции.
  • Методы статического тестирования - это структурное покрытие и покрытие утверждений, тогда как методы динамического тестирования - это анализ граничных значений и разделение на эквивалентность.

Статические методы тестирования:

  • Неофициальные обзоры: это один из типов обзоров, которые не следуют никаким процедурам для поиска ошибок в документе. При использовании этого метода вы просто просматриваете документ и даете неофициальные комментарии к нему.
  • Технические обзоры: команда, состоящая из ваших коллег, изучает техническую спецификацию программного продукта и проверяет, подходит ли он для проекта. Они стараются найти любые неточности в используемых спецификациях и стандартах. Этот обзор в основном сосредоточен на технической документации, связанной с программным обеспечением, такой как стратегия тестирования, план тестирования и документы со спецификациями требований.
  • Пошаговое руководство: автор рабочего продукта объясняет продукт своей команде. Участники могут задавать вопросы, если таковые имеются. Встречу ведет автор. Писец записывает комментарии к обзору
  • Инспекция: Основная цель - выявление дефектов, встречу проводит обученный модератор. Этот обзор является формальным типом обзора, при котором проводится строгий процесс поиска дефектов. У проверяющих есть контрольный список для проверки рабочих продуктов, они фиксируют дефект и информируют участников об исправлении этих ошибок.
  • Статический обзор кода: это систематический обзор исходного кода программного обеспечения без выполнения кода. Он проверяет синтаксис кода, стандарты кодирования, оптимизацию кода и т. Д. Это также называется тестированием методом белого ящика. Этот обзор может быть выполнен в любой момент во время разработки.

Методы динамического тестирования:

  • Модульное тестирование: в рамках модульного тестирования разработчики тестируют отдельные модули или модули. Он предполагает тестирование исходного кода разработчиками.
  • Интеграционное тестирование: отдельные модули группируются и тестируются разработчиками. Цель состоит в том, чтобы определить, какие модули работают должным образом после интеграции.
  • Тестирование системы: тестирование системы выполняется для всей системы путем проверки того, соответствует ли система или приложение документу со спецификацией требований.

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

Разница между статическим и динамическим тестированием:

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

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

Тестирование проводилось без выполнения программы. Тестирование осуществляется путем выполнения программы.
Это тестирование выполняет процесс проверки Динамическое тестирование выполняет процесс проверки
Статическое тестирование - это предотвращение дефектов Динамическое тестирование - это поиск и устранение дефектов.
Статическое тестирование дает оценку кода и документации Динамическое тестирование выявляет ошибки / узкие места в программной системе.
Статическое тестирование включает в себя контрольный список и процесс, которому необходимо следовать Динамическое тестирование включает в себя тестовые примеры для выполнения
Это тестирование можно провести перед компиляцией Динамическое тестирование выполняется после компиляции
Статическое тестирование охватывает структурное тестирование и тестирование покрытия операторов. Методы динамического тестирования - это анализ граничных значений и разделение эквивалентности.
Стоимость поиска и устранения дефектов меньше Стоимость поиска и устранения дефектов высока
Возврат инвестиций будет высоким, поскольку этот процесс задействован на ранней стадии. Возврат инвестиций будет низким, так как этот процесс включает в себя после фазы разработки.
Больше отзывов, комментарии очень рекомендуются для хорошего качества Для хорошего качества настоятельно рекомендуется больше дефектов.
Требуется множество встреч Сравнительно требует меньшего количества встреч