Тестирование программного обеспечения. Базовый курс. 3-е издание



Pdf көрінісі
бет265/307
Дата03.07.2023
өлшемі5,03 Mb.
#179304
1   ...   261   262   263   264   265   266   267   268   ...   307
Байланысты:
Software Testing - Base Course (Svyatoslav Kulikov) - 3rd edition - RU

equivalence class
consists of a set of data that is treated the same by a module or that should produce the same result. [Lee 
Copeland, 
«A practitioner’s guide to software test design»] 
350
The 
boundaries
— the «edges» of each equivalence class. [Lee Copeland, «A practitioner’s guide to software test design»] 
0 2
3
20
21
Допустимо
Недопустимо
Недопустимо
Недостижимо


Классы эквивалентности и граничные условия
Тестирование программного обеспечения. Базовый курс. 
© EPAM Systems, 2015–2023
 
Стр: 238/301 
 
Рисунок 2.7.b — Итоговое разбиение на классы эквивалентности значений длины 
имени пользователя 
Обратите внимание, что области значений [0, 2] и [21, ∞] относятся к разным 
классам эквивалентности, т.к. принадлежность длины строки к этим диапазонам 
проверяется отдельными условиями на уровне кода программы. 
Граничные условия уже отмечены на рисунке 2.7.b — это 2, 3, 20 и 21. Зна-
чение 0 тоже стоит включить в этот набор на всякий случай, т.к. в программирова-
нии ноль, NULL, нулевой байт и т.п. исторически являются «опасными значениями». 
В итоге мы получаем следующий набор входных данных для тест-кейсов 
(сами символы для составления строк можно выбирать из набора допустимых сим-
волов случайным образом, но желательно учесть все типы символов, т.е. буквы в 
обоих регистрах, цифры, знак подчёркивания). 
Таблица 2.7.a — Значения входных данных для тест-кейсов (реакция на длину 
имени пользователя) 
Позитивные тест-кейсы 
Негативные тест-кейсы 
Значе-
ние 
AAA 
123_zzzzzzzzzzzzzzzz AA 
Пустая 
строка 
1234_zzzzzzzzzzzzzzzz 
Поясне-
ние 
Строка ми-
нимальной 
допустимой 
длины 
Строка максимальной 
допустимой длины 
Строка не-
допустимой 
длины по 
нижней 
границе 
Строка не-
допустимой 
длины, 
учтена для 
надёжно-
сти 
Строка недопустимой 
длины по верхней гра-
нице 
Осталось решить вопрос с недопустимыми символами. К сожалению, столь 
же наглядно, как с длиной, здесь не получится. Даже если подойти строго научно, 
т.е. выбрать кодировку и по её кодовой таблице определить диапазоны кодов сим-
волов (на рисунке 2.7.c приведён пример такого разделения для ASCII-таблицы), у 
нас нет никакой гарантии, что символы с кодами из каждого диапазона трактуются 
единообразно. 
Здесь мы видим ярчайший пример случая, в котором тестирование по ме-
тоду белого ящика сильно облегчило бы нам жизнь. Если бы мы видели, 
как в коде приложения реализована проверка на допустимые и недопусти-
мые символы, мы могли бы подобрать очень показательные значения 
входных данных. 
 
Рисунок 2.7.c — Неудачный способ поиска классов эквивалентности для наборов 
допустимых и недопустимых символов (коды символов приведены по ASCII-
таблице) 
0 2
3
20
21
Допустимо
Недопустимо
Недопустимо
Цифры
48
0
47
57
58
65
90
64
91
96
97
122
94
95
123
255
Буквы A-Z
Буквы a-z
_


Классы эквивалентности и граничные условия
Тестирование программного обеспечения. Базовый курс. 
© EPAM Systems, 2015–2023
 
Стр: 239/301 
Раз оказалось, что по кодам символов подбирать классы эквивалентности в 
нашем случае нерационально, посмотрим на ситуацию по-другому (и намного 
проще). Поделим символы на недопустимые и допустимые, а последние, в свою 
очередь, — на группы (см. рисунок 2.7.d). 
 
Рисунок 2.7.d — Классы эквивалентных допустимых и недопустимых символов 
Интересующие нас комбинации допустимых символов (с представителями 
всех групп) мы уже учли при проверке реакции приложения на имена пользователя 
допустимых и недопустимых длин, потому остаётся учесть только вариант с допу-
стимой длиной строки, но недопустимыми символами (которые можно выбирать 
случайным образом из соответствующего набора). В таблицу 2.7.a добавим одну 
колонку и получим таблицу 2.7.b. 
Таблица 2.7.b — Значения всех входных данных для тест-кейсов 


Достарыңызбен бөлісу:
1   ...   261   262   263   264   265   266   267   268   ...   307




©engime.org 2024
әкімшілігінің қараңыз

    Басты бет