Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Технологии разработки ПО. Лабораторный практикум

.pdf
Скачиваний:
0
Добавлен:
08.09.2026
Размер:
2 Мб
Скачать
Таблица 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
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]