Добавил:
ivanov666
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:Технологии разработки ПО. Лабораторный практикум
.pdf
Таблица 6.1
Номер Входной параметр Допустимые классы Недопустимые классы
Тестовые наборы формируют таким образом, чтобы максимально компактно сгруппировать допустимые классы, при этом
только одно значение в наборе может принадлежать недопустимому классу.
6.2.2. Методика граничных значений
Граничными называют значения на границах классов эк-
вивалентности или около них. Большую часть ошибок можно
обнаружить, анализируя именно граничные значения.
Правила применения методики следующие.
1. Если входной параметр x может принимать значения на
отрезке n…m, то тесты должны быть построены:
– для значений n и m;
– для значений чуть меньших n и чуть больших m.
2. Если входной параметр x может принимать значение из
множества {n, m, p}, то тесты должны быть построены:
– для проверки минимального значения (n);
– для проверки максимального значения (p);
– для значений чуть меньших n и чуть больших p.
3. Если входными параметрами являются упорядоченные
множества (массивы, линейные списки, последовательные файлы), то тесты строятся для первого и последнего элементов этого множества, а также для элементов с индексами на 1 меньше
первого и на 1 больше последнего.
Определив граничные значения для всех входных параметров, получают перечень допустимых и недопустимых значений и заносят их в табл. 6.2.
Номер
Входной
параметр
Допустимые граничные
значения
51
Таблица 6.2
Недопустимые граничные
значения

Тестовые наборы формируют с тем же условием, что и при
эквивалентном разбиении: максимально группируя допустимые значения и выбирая не больше одного недопустимого значения на тест.
6.2.3. Методика причин-следствий
Граф причинно-следственных связей – использующее алгебру логики описание взаимосвязи причин и следствий в виде
графа, где каждый узел может находиться только в одном из
двух состояний: 1 (истина, true) или 0 (ложь, false).
Причиной называют узел графа, соответствующий входному условию или классу эквивалентности.
Следствием называют узел графа, соответствующий действию или выходному условию.
Методика формирования тестовых вариантов включает в
себя следующие шаги.
1. Для каждого модуля перечисляют причины и следствия,
каждой причине и следствию назначают уникальный идентификатор. Причины обозначают символами c
волами e
.
i
2. Используя базовые символы, приведенные на рис. 6.2,
путем соединения причин и вытекающих из них следствий
строится граф причинно-следственных связей:
а) тождество – если причина c истинна, то и следствие e ис-
тинно, и наоборот, если ложна причина, то ложно и следствие;
б) функция «не» – если причина c истинна, то и следствие e
ложно, и наоборот, если ложна причина, то следствие истинно;
в) функция «или» – следствие e истинно, если истинна одна
хотя бы одна из причин c
или c2, в противном случае следствие
1
ложно;
г) функция «и» – следствие e истинно, если истинны обе
причины c
и c2, в противном случае следствие ложно;
1
д) ограничение «исключает» – истинность одной из причин
или c2 исключает истинность другой;
c
1
е) ограничение «включает» – как минимум одна из причин
, c2 или c3 должна быть истинной;
c
1
ж) ограничение «только одно» – одна и только одна при-
чина c
, или c2 истинна;
1
52
, следствия – сим-
i

з) ограничение «требует» – если причина c1 истинна, то и
причина c
и) ограничение «скрывает» – если следствие e
то следствие e
должна быть истинной;
2
истинно,
1
должно стать ложным.
2
Рис. 6.2. Символы графа причинно-следственных связей
3. Граф причинно-следственных связей преобразуют в таблицу решений (табл. 6.3), строки в которой соответствуют причинам и следствиям графа, а столбцы – решениям (уникальным
комбинациям состояний причин), приводящим каждое из следствий в истинное состояние.
Таблица 6.3
Решения
Причины 1 2 3 4 5 …
c
1
c
2
…
Следствия
e
1
e
2
…
53

4. Для каждого столбца таблицы решений формируют тестовый вариант таким образом, чтобы значения входных параметров соответствовали состояниям соответствующих причин.
6.3. Порядок выполнения работы
1. Получить у преподавателя свой вариант задания.
2. Написать программу, решающую поставленную задачу,
не проверяя корректность ее работы.
3. Выделить входные и выходные параметры.
4. Входные параметры разбить на классы эквивалентности, заполнить табл. 6.1.
5. Определить граничные значения входных параметров,
заполнить табл. 6.2.
6. Построить граф причинно-следственных связей, заполнить табл. 6.3.
7. По данным из табл. 6.1, 6.2 и 6.3 сформировать тестовые варианты, заполняя первые три столбца табл. 6.4.
Таблица 6.4
Номер
Входные данные
и условия запуска
Ожидаемый
результат
Полученный
результат
Вывод
8. Осуществить прогон программы по всем тестам, заполняя правую часть табл. 6.4.
9. Оформить отчет о выполненной работе.
6.4. Пример выполнения работы
Протестируем форму расчета стоимости года обучения в коммерческом вузе. Правила расчета звучат в техническом задании
следующим образом:
«К обучению на платной основе допускаются лица, достиг-
шие 18-летнего возраста. Срок обучения составляет 5 лет.
Стоимость обучения на первом курсе – 40 000 рублей в год,
на последующих курсах – 20 000 рублей в год. Пенсионерам
(мужчинам старше 60 лет и женщинам старше 55 лет) –
скидка 50 %».
54

Внешний вид формы приведен на рис. 6.3.
Рис. 6.3. Форма расчета стоимости года обучения
Поля для ввода данных представляют собой простые текстовые поля (TextBox), результат расчета выводится во всплывающем диалоговом окне при нажатии на кнопку «рассчитать».
Введем обозначения для входных и выходных параметров
(табл. 6.5).
Таблица 6.5
Номер Обозначение Тип параметра Тип данных Описание
1 age Входной Целое число Возраст
2 sex Входной Строка Пол
3 year Входной Целое число Год обучения
(курс)
4 cost Выходной Целое число Стоимость
обучения
Тестовые варианты будем формировать по трем описанным
выше методикам.
6.4.1. Эквивалентное разбиение
Анализ требований показывает, что диапазон значений параметра age имеет особые точки: 18, 55 и 60. Разобьем числовую ось по этим точкам на диапазоны и обозначим знаком «+»
значения и диапазоны, а знаком «–» – недопустимые (рис. 6.4).
55

Рис. 6.4. Диапазоны эквивалентности параметра age
Формируются четыре класса эквивалентности:
– недопустимый: age < 18;
– допустимый: 18 ≤ age < 55;
– допустимый: 55 ≤ age < 60;
– допустимый: age ≥ 60.
Параметр sex может принимать значения: «М», «Ж», «Мужской», «Женский». Следовательно, классы эквивалентности
формируются по правилу для множества:
– допустимый: sex ∈ {М,Ж,Мужской,Женский};
– недопустимый: sex ∉ {М,Ж,Мужской,Женский}.
Параметр year может принимать значения от 1 до 5 включительно, разбивая числовую ось на три диапазона (рис. 6.5).
Рис. 6.5. Диапазоны эквивалентности параметра year
Формируются три класса эквивалентности:
– недопустимый: year < 1;
– допустимый: 1 ≤ year ≤ 5;
– недопустимый: year > 5.
Для формирования таблицы тестов выберем конкретные
значения из каждого класса (табл. 6.6).
Таблица 6.6
Номер
теста
1 5 «М» 2 Некорректный возраст
2 25 «П» 3 Некорректный пол
3 57 «Женский» 0 Некорректный курс
4 75 «Мужской» 10 Некорректный курс
5 19 «Ж» 1 cost = 4000
Входные данные
age sex year
56
Ожидаемый результат

Окончание табл. 6.6
Номер
теста
6 58 «М» 2 cost = 2000
7 65 «Женский» 5 cost = 1000
Входные данные
age sex year
Ожидаемый результат
6.4.2. Граничные значения
Согласно правилам применения методики для параметра
age тесты должны быть построены для граничных значений
допустимых классов (18, 55, 60), для значений чуть меньше
минимальных границ (17, 54), а также для значений чуть больше максимальных границ (56, 61). Расположим все значения
на числовой оси и расставим знаки допустимости (рис. 6.6).
Рис. 6.6. Граничные значения параметра age
Для параметра sex множество значений не является ни числовым, ни упорядоченным, поэтому при построении тестов будем брать любое допустимое значение.
Для параметра year тесты должны быть построены для граничных значений (1, 5) и для значений чуть меньше нижней
и чуть больше верхней границы (0, 6). Отобразим значения
на числовой оси (рис. 6.7).
Рис. 6.7. Граничные значения параметра year
Сформируем таблицу тестов (табл. 6.7).
Таблица 6.7
Номер
теста
1 17 «М» 1 Некорректный возраст
2 18 «Мужской» 0 Некорректный курс
Входные данные
age sex year
57
Ожидаемый результат

Окончание табл. 6.7
Номер
теста
3 54 «Женский» 6 Некорректный курс
4 18 «М» 1 cost = 4000
5 54 «Ж» 1 cost = 4000
6 55 «М» 5 cost = 2000
7 56 «Женский» 5 cost = 1000
8 60 «Мужской» 1 cost = 2000
9 61 «М» 5 cost = 1000
Входные данные
age sex year
Ожидаемый результат
6.4.3. Причинно-следственные связи
Перечислим причины (входные условия) c и следствия (выходные значения) e для формы расчета стоимости обучения
(табл. 6.8).
Таблица 6.8
Причины
с
1
18 ≤ age <
<55
с
55 ≤ age <
< 60
e
1
2
cost = 40 000 cost = 20 000 cost = 10 000
с
3
с
4
с
5
с
6
с
7
age ≥ 60 sex = «М» sex = «Ж» year = 1 1 < year ≤
≤5
Следствия
e
2
e
3
Построим граф причинно-следственных связей (рис. 6.8).
В ходе построения графа потребовалось добавить несколько промежуточных причин, имеющих свой логический смысл
(табл. 6.9).
Таблица 6.9
Промежуточные причины
с
8
с
9
с
10
с
11
с
12
с
13
Со второго по пятый годы, со скидкой
55 лет и старше
Мужчина-пенсионер
Женщина-пенсионер
Первый год, без скидки
Пенсионер
58

Рис. 6.8. Граф причинно-следственных связей расчета стои-
мости обучения
Заполним таблицы решений (табл. 6.10) и тестовых вариантов (табл. 6.11).
Таблица 6.10
Решения
Причины 1 2 3 4 5 6 7 8
c
1
c
2
c
3
c
4
c
5
c
6
c
7
Следствия
e
1
e
2
e
3
1 1 0 0 0 0 0 0
0 0 1 0 0 1 0 0
0 0 0 1 1 0 1 1
- - 0 0 1 0 0 1
- - 1 1 0 1 1 0
0 1 0 0 0 1 1 1
1 0 1 1 1 0 0 0
1 0 0 0 0 0 0 0
0 1 1 1 1 0 0 0
0 0 0 0 0 1 1 1
59

Таблица 6.11
Номер
теста
1 18 «М» 2 cost = 40 000
2 25 «Ж» 1 cost = 20 000
3 55 «Ж» 3 cost = 20 000
4 60 «Ж» 4 cost = 20 000
5 61 «М» 5 cost = 20 000
6 57 «Ж» 1 cost = 10 000
7 70 «Ж» 1 cost = 10 000
8 75 «М» 1 cost = 10 000
Входные данные
age sex year
Ожидаемый результат
6.5. Вопросы для самоконтроля
1. Что такое класс эквивалентности?
2. Каковы правила формирования классов эквивалентности?
3. Почему значения вблизи границ классов эквивалентно-
сти имеют важное значение для тестирования?
4. Какое минимальное количество тестов должно быть сформировано по методике эквивалентного разбиения для тестирования модуля, принимающего два входных параметра, каждый
из которых имеет по одному допустимому и по одному недопустимому классам эквивалентности?
5. В каких состояниях могут находиться узлы графа причинно-следственных связей?
60
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]
