Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Ответы к экзамену 2007.doc
Скачиваний:
21
Добавлен:
01.03.2025
Размер:
379 Кб
Скачать
☆

25. Особенности структурного тестирования (белый ящик). Его достоинства и недостатки.

Структурное тестирование – отладка на основе текстов программ.

Известно: внутренняя структура программы.

Исследование: внутренние элементы программы и связи между ними.

Объект исследования: внутреннее поведение программы.

Тесты демонстрируют корректность построения всех элементов программы; правильность их взаимодействия.

Характеристика: степень покрытия логики программы.

Структурное тестирование основано на анализе управляющей структуры программы. При проведении тестирования формируются тестовые варианты, при которых

  • гарантируется проверка всех независимых маршрутов;

  • проходятся все ветви логических решений;

  • выполняются все циклы;

  • анализируется правильность внутренних структур данных.

Недостатки методов

  1. Количество маршрутов слишком велико. Пусть, например, цикл, выполняющийся k раз, содержит n ветвлений. Тогда количество маршрутов . Если n=5, k=2, то m = 1014, что при времени одного прогона, равном 1 мс, составит при круглосуточной работе 3170 лет.

  2. Исчерпывающее тестирование маршрутов не гарантирует соответствия программы исходным требованиям.

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

Достоинства методов – учитываются особенности программных ошибок.

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

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

  3. При записи алгоритма на языке программирования возможно внесение типовых ошибок, которые легко определяются.

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

26. Функциональное тестирование (черный ящик). Категории выявляемых ошибок.

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

Известно: функции программы.

Исследование: работа каждой функции на всей области определения.

Объект исследования: интерфейс.

Тесты демонстрируют

  • как выполняются функции программ;

  • как принимаются исходные данные;

  • как вырабатываются результаты;

  • как сохраняется целостность внешней информации.

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

Рассматриваются следующие категории ошибок:

  • некорректные или отсутствующие функции;

  • ошибки интерфейса;

  • ошибки в доступе к внешним данным (неверное понимание структуры данных);

  • ошибки характеристик (память, время и т.п.);

  • ошибки инициализации и завершения.

Основные задачи, стоящие при тестировании этими методами, следующие:

  • сокращение необходимого числа тестовых вариантов;

  • выявление классов ошибок.