- Матан
- Суть методики
- Примеры
- Преимущества и ограничения
- Граничные значения и эквивалентное разбиение (таблица)
- Шпаргалка
Граничные значения — это границы класса эквивалентности (подробнее об эквивалентном разбиении). Одна из важных техник тест-дизайна (подробнее), поскольку именно на границах классов чаще всего случаются ошибки.
Матан
Нужен набор тест-векторов для проверки системы, и для них описывается топология. В тесты включаются «представители» граничных значений диапазона. Граница в топологии — набор точек поблизости пространства, не входящих в него. Эти точки принадлежат к одному классу эквивалентности, согласно теории эквивалентного разбиения. Поскольку диапазоны являются соседними, между ними существует граница. Тест-векторы на каждой стороне границы называются граничными значениями.
Суть методики
Итак, анализ граничных значений относятся к проверке значений границ валидных и невалидных делений диапазонов данных. Поведение системы на этих границах более часто бывает некорректным, чем внутри диапазонов, поэтому границам диапазонов уделяется больше внимания, вплоть до выделения в отдельную методику тестирования.
Каждый диапазон по определению имеет минимальное и максимальное значение, которые и являются границами.
Значение на границе валидного диапазона является валидным значением. Значение на границе невалидного диапазона является невалидным.
Для каждой переменной проверяем такие значения:
- Минимальное
- Следующее за ним
- Иногда, также, значение внутри диапазона («номинальное»)
- Значение непосредственно перед максимальным
- Максимальное
Примеры
Пример 1
Приложение в финтехе, в котором нужно ввести возраст претендента. Диапазон допустимых значений: от 18 до 56 лет.
Значения | ||
---|---|---|
Невалидное (минимальное-1) | Валидные (минимальное-1, минимальное+1, номинальное, максимальное-1, максимальное) | Невалидное (максимальное+1) |
17 | 18, 19, 37, 55, 56 | 57 |
Валидные тест-кейсы: всякое значение больше 17 и меньше 57 (18, 19, 37, 55, 56).
Невалидные тест-кейсы: всякое значение меньше 18 и больше 56 (17, 57).
Примечание: в техниках эквивалентных разбиений и граничных значений применяется концепция предположения об одной ошибке (Single Fault Assumption). Оно основывается на предположении, что ошибки редко случаются в результате одновременного ввода двух (нескольких) невалидных значений, как правильно только одного. Поэтому, если в систему вводятся не одно, а два значения, то одно из них всегда оставляют валидным. Тогда, при n переменных, количество вариантов для проверки (тест-кейсов) составит 4n+1.
Пример 2
На входе имеем такие данные. День/месяц/год должны быть в диапазонах соответственно 1-31, 1-12, 1900-2000. Тест-кейсы получатся следующими.
По предположению о единственной ошибке, год будет принимать значения от 1900 до 2000, а остальные будут иметь одинаковые «номинальные» значения (то есть внутри своих валидных диапазонов).
Номер тест-кейса | Месяц | День | Год | Вывод |
---|---|---|---|---|
1 | 6 | 15 | 1990 | 14 июня 1990 г |
2 | 6 | 15 | 1901 | 14 июня 1901 г |
3 | 6 | 15 | 1960 | 14 июня 1960 г |
4 | 6 | 15 | 1999 | 14 июня 1999 г |
5 | 6 | 15 | 2000 | 14 июня 2000 г |
По предположению об единственной ошибке, день будет изменяться от 1 до 31, а остальные значения неизменны (номинальные).
Номер тест-кейса | Месяц | День | Год | Вывод |
---|---|---|---|---|
6 | 6 | 1 | 1960 | 31 мая 1960 г |
7 | 6 | 2 | 1960 | 1 июня 1960 г |
8 | 6 | 30 | 1960 | 29 июня 1960 г |
9 | 6 | 31 | 1960 | Невалидное значение дня |
Теперь Месяц будет изменяться от 1 до 12, а остальные переменные неизменны:
Номер тест-кейса | Месяц | День | Год | Вывод |
---|---|---|---|---|
10 | 1 | 15 | 1960 | 14 января 1960 г |
11 | 2 | 15 | 1960 | 14 февраля 1960 г |
12 | 11 | 15 | 1960 | 14 ноября 1960 г |
13 | 12 | 15 | 1960 | 14 декабря 1960 г |
Таким образом, для n проверяемых переменных должно быть создано 4n+1 тест-кейсов. У нас количество переменніх n равно 3, следовательно тест-кейсов нужно 4х3+1 = 13.
Преимущества и ограничения методики
- Быстрая и экономит усилия
- Удобна, когда очень много переменных
- Может применяться на всех уровнях тестовой пирамиды
Но:
- Не может учитывать взаимные зависимости переменных
- Может генерировать очень большое количество тест-кейсов
- Не подходит для булевых (логических) переменных
- Требуется опыт в определении эквивалентных классов и их границ
Граничные значения и классы эквивалентности

***
Шпаргалка
Что такое граничные значения?
Места, в которых один класс эквивалентности переходит в другой; то есть крайние значения этих классов.
В чем заключается анализ граничных значений?
Проверка, как тестируемое приложение принимает эти значения (возникают ли ошибки).
Почему такой анализ нужен?
Именно на граничных значениях часто случаются ошибки.
Действия тестировщика при анализе граничных данных:
1. Создать эквивалентные классы.
2. Подобрать граничные значения.
3. Определить, в какой класс относится каждая граница.
4. Провести тестирование (выполнить тест-кейсы).
***