tестирование dot com
Шрифт:
Тонкий момент. Здесь мы проверяем две вещи:
данному классу
1. Наличие скачка от верхнего предела предьщущего
(если предшествующий класса к нижнему пределу нашего класса.
класс имеется):
Это делается для следующей ситуации. Допустим,
199,99
программист напечатал 100,00 вместо 200,00: ЕСЛИ
сумма > 100,00 И сумма < 499,99,
ТО скидка = сумма/100 х 2. Если сделана такая
ошибка, то она не будет обнаружена
тестом б, ни тестом е.
2. Логическое "И", так как если бы у нас было "ИЛИ":
ЕСЛИ сумма > 200,00 ИЛИ сумма < 499,99,
ТО скидка = сумма/100 х 2, то к данному классу
принадлежало бы любое в принципе возможное
значение
Скидка не равна 2% от 199,99
д. Затем тестируется
ЕСЛИ сумма > 200,00 И сумма < 499,99,
нижний предел класса,
ТО скидка = сумма/100 х 2
непосредственно
следующего
1. Наличие скачка от верхнего предела нашего класса
за данным классом
к нижнему пределу следующего за ним класса. Это
(если следующий
делается для следующей ситуации. Допустим,
класс имеется):
программист напечатал 599,99 вместо 499,99: ЕСЛИ
500,00
сумма > 200 И сумма < 599,99, ТО скидка =
сумма/100 х 2
Нигилистический настрой и практическая методология
201
Если сделана такая ошибка, то она не будет
обнаружена ни тестом а, ни тестом б, ни тестом в,
ни тестом г.
2. Проверяется логическое "И", так как если бы у
нас было "ИЛИ":
ЕСЛИ сумма > 200,00 ИЛИ сумма < 499,99,
ТО скидка = сумма/100 х 2, то к данному
классу принадлежало бы любое в принципе
возможное значение
Скидка не равна 2% от 500,00
Замечу, что для удобства в понимании мы производили тестиро-
вание класса 2 изолированно от его собратьев.
И теперь, поняв и разобравшись, давайте рассмотрим, как нам про-
тестировать все эквивалентные классы данного спека:
Класс
Значение
Ожидаемая
ставка скидки, %
Класс 1
0
0
100,00
199,99
Класс 2
200,00
2
315,11
499,99
Класс 3
500,00
3
659,23
999,99
Класс 4
1000,00
4
3265,26
4999,99
Класс 5
5000,00
5
5075,00
Итого 14
ний. Неплохо. Очень даже неплохо!
На сером фоне 5 значений ввода, которые мы использовачи для
изолированного тестирования нашего любимого кяасса 2. Прошу
отметить следующую вещь: теперь, когда мы тестируем класс 2
202
Тестирование Дот Ком. Часть 3
вместе с окружающими его собратьями, для класса 2 доста-
точно 3 тест-кейсов, так как случаи г. (199,99) и д. (500,00)
покрываются при тестировании класса 1 и класса 3 соответ-
ственно.
Мы рассмотрели самый сложный вариант пограничного тестиро-
вания, когда мы проверяли эквивалентные классы, включающие
множества значений. Зато теперь, пройдя огонь, воду и медные
трубы, нам ничего не стоит разобраться в более простом случае,
когда эквивалентный класс содержит только одно значение.
Пример
Возьмем индекс, который должен быть равен 6 цифрам (Индекс_эл 005 из
табл. 1, матричной раскладки поля "Индекс"). Применяем метод
тестирования пограничных значений:
а. 6
б. 6
в. 6
г. 5
Д. 7
Таким образом, у нас есть:
•
один позитивный тест 6 и
•
два негативных теста 5 и 7.
Мы применяем метод
• как обособленно (тестирование скидок),
так и
• в сочетании с другими методами генерирования и отбора
тестов (использование пограничных значений на матрич
ной раскладке поля "Индекс").
Идея о возможности обособленного или интегрированного