Тестирование белого / черного ящика: статическое или динамическое? - PullRequest
2 голосов
/ 28 апреля 2011

Вот что я понимаю:

Динамическое тестирование - это тестирование, которое выполняется во время работы системы.Статическое тестирование выполняется, когда система не работает.

Тестирование черного ящика фокусируется на функциональности и выполняется без знания внутренней работы программы.Тестирование White-Box ищет проблемы в самом коде.

Меня интересует, справедливо ли говорить, что все тесты Black-Box являются статическими?Справедливо ли также сказать, что некоторые тесты White-Box являются статическими (например, проверка исходного кода), а некоторые динамическими (тестирование веток / путей)?

Ответы [ 6 ]

2 голосов
/ 15 июня 2012

Справедливо ли сказать, что все тесты Black Box являются статическими?

Нет. Тестирование черного ящика обычно динамично. Фактически, когда мы думаем о тестировании программного обеспечения, мы обычно думаем о людях, выполняющих код и записывающих проблемы, которые они обнаруживают. Это классическое динамическое тестирование черного ящика.

Однако есть статическое тестирование черного ящика. Когда вы проверяете спецификацию или требования на наличие ошибок, это статическое тестирование черного ящика. Вот некоторые приемы

  • Читайте спецификацию, как будто вы клиент - что-то не имеет смысла?

  • Сравните спецификацию с рекомендациями отрасли или компании - есть ли нарушения?

Прочитайте требования, чтобы убедиться, что каждый из них:

  • Корректное

  • реализуемое

  • Необходимый

  • Приоритетность

  • Однозначный

  • Изменяемые

  • Complete

  • Проверяемость

Если какой-либо из них был нарушен, вы обнаружили ошибку в требованиях и сэкономили массу времени и денег.

1 голос
/ 28 апреля 2011

Я не могу вспомнить ни одной ситуации, в которой тестирование черного ящика является статическим.

Черный ящик / Белый ящик относится к знаниям тестировщика о внутренней работе тестируемой системы (SUT).

Статический / Динамический относится к состоянию тестируемой системы (работает / динамический, или остановлен / статический).

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

Тестирование белого ящика может проводиться динамически (например, тестеры безопасности со знанием внутренней работы системы, выполняющей тестирование на проникновение) или статически, например, запускать такие инструменты, как AppScan, FxCop, JavaCop и т. Д., Выявляя нарушения правил и потенциальные уязвимости в исходном коде.

0 голосов
/ 01 июня 2018

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

Тестирование черного ящика - это метод тестирования, который игнорирует внутренний механизм системы и фокусируется на выводе, генерируемом при любом вводе и выполнении системы.Тестирование белого ящика - это метод тестирования, который учитывает внутренний механизм системы.

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

Пример: модульное тестирование - это тип динамического тестирования (Функциональныйтип тестирования), и оно подпадает под класс тестирования белого ящика.

Системное тестирование - это тип динамического тестирования (тип функционального тестирования), и оно подпадает под класс тестирования черного ящика.

Интеграционное тестирование - это тип динамического тестирования (тип функционального тестирования), и оно может проходить как тестирование белого ящика, так и тестирование черного ящика.

см. Это: https://www.codeproject.com/Tips/351122/What-is-software-testing-What-are-the-different-ty

0 голосов
/ 10 октября 2013

Это Иерархия

тестирование белого ящика и черного ящика сверху тестирование белого ящика делится на CFA и DFA DFA означает анализ потока данных, который разбивается на статический DFA и динамический DFA

0 голосов
/ 16 мая 2013

Справедливо ли говорить, что все тесты Black Box являются статическими?

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

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

0 голосов
/ 28 апреля 2011

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

...