Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции сем. 1.doc
Скачиваний:
9
Добавлен:
13.11.2019
Размер:
2.03 Mб
Скачать

Методы тестирования

Существует два метода тестирования:

  • функциональное тестирование или метод «черного ящика»,

  • структурное тестирование или метод «белого ящика».

Функциональное тестирование

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

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

В формулировке задачи два вида условий.

  • то, что известно (входные условия),

  • то, что не известно, т.е. цель задачи (выходные условия).

Классы эквивалентности как метод снижения количества тестов

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

Выделение условий - нетривиальная задача.

Тесты объединяются в эквивалентные классы на основе входных и выходных условий.

Типы входных и выходных условий:

  • условие, определяющее диапазон,

  • условие, определяющее множество значений,

  • условие «может быть», «должно быть».

Выбор значений для тестов

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

Задача. Если в одномерном числовом массиве, состоящем из N элементов, минимальный элемент положителен, то элементы, расположенные между минимальным и максимальны, расположить в обратном порядке.

Формулировка условий

Таблица 1. Формулировка условий

Исходные

Противоположные

1

N>0

2

N<=0

3

N>0 и минимальный элемент положителен.

4

N>0 и минимальный элемент не положителен.

5

N>0 и минимальный элемент положителен и максимальный и минимальный элементы расположены в массиве не рядом.

6

N>0 и минимальный элемент положителен и максимальный и минимальный элементы расположены в массиве рядом.

Условие 1 можно объединить с условиями 3, 4, 5,6. Объединим условие 1 с условием 5.

Условие 3 можно объединить с условиями 5 и 6. Объединим условие 3 с условием 5.

Функциональные тесты

Таблица 2. Функциональные тесты

Вход

Выход

2

N=0

Сообщение о том, что задача не имеет решений

4

N=4, Массив {-2, -5, -12,-1}

Массив {-2, -5, -12,-1}

5

N=4, Массив {3, 4, 7,23}

Массив {3, 7, 4,23}

6

N=4, Массив {3, 23 4,7}

Массив {3, 23 4,7}

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

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

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

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