logo
Ответы Госы_3

58. Структурное тестирование программного обеспечения

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

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

Недостатки тестирования "белого ящика" :

1. Количество независимых маршрутов может быть очень большая.

2. Полное тестирование маршрутов не гарантирует соответствия программы исходным требованиям к ней.

3. В программе могут быть пропущены некоторые маршруты.

4. Нельзя обнаружить ошибки, появление которых зависит от данных.

Преимущества тестирования "белого ящика" связаны с тем, что принцип "белого ящика" позволяет учесть особенности программных ошибок :

1. Количество ошибок минимально в "центре" и максимально на "периферии" программы.

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

3. При записи алгоритма ПЗ в виде текста на языке программирования возможное внесение типичных ошибок трансляции (синтаксических и семантических).

4. Некоторые результаты в программе зависят не от выходных данных, а от внутренних состояний программы.

Каждая из этих причин является аргументом для проведения тестирования по принципу "белого ящика". Тесты "черного ящика" не смогут реагировать на ошибки таких типов.