Граничные значения — это те места, в которых один класс эквивалентности переходит в другой.
Техника анализа граничных значений
Это техника проверки поведения продукта на крайних (граничных) значениях входных данных. Граничное тестирование также может включать тесты, проверяющие поведение системы на входных данных, выходящих за допустимый диапазон значений. При этом система должна определённым (заранее оговоренным) способом обрабатывать такие ситуации. Например, с помощью исключительной ситуации или сообщения об ошибке.
!!!Граничные значения очень важны и их обязательно следует применять при написании тестов, т.к. именно в этом месте чаще всего и обнаруживаются ошибки.

На каждой границе диапазона следует проверить по три значения:
- граничное значение;
- значение перед границей;
- значение после границы.
Цель этой техники — найти ошибки, связанные с граничными значениями.
Алгоритм использования техники граничных значений:
- выделить классы эквивалентности;
Как и в предыдущей технике, этот шаг является очень важным и от того, насколько правильным будет разбиение на классы эквивалентности, зависит эффективность тестов граничных значений.
- определить граничные значения этих классов;
- нужно понять, к какому классу будет относиться каждая граница;
- нужно провести тесты по проверке значения до границы, на границе и сразу после границы.
Количество тестов для проверки граничных значений будет равен количеству границ, умноженному на 3. Рекомендуется проверять значения вплотную к границе. К примеру, есть диапазон целых чисел, граница находится в числе 100. Таким образом, будем проводить тесты с числом 99 (до границы), 100 (сама граница), 101 (после границы).
Техника анализа граничных значений. Пример использования на существующем проекте:
Проект — Btrack.com
Протестировать поля ввода — Dev-Est/Qa-est
Условие — в поля ввода можно внести только целые числа от 0 до 10 000.
Определяемся с существующими границами — так как в условии все значения от 0 до 10 000 приведут к одному и тому же результату, то границы две: нижняя и верхняя.
Первое граничное значение — 0
Второе граничное значение — 10 000
Добавляем к ним, стоящие рядом значения ( опять же, если бы, числа были дробными, то пришлось бы, для начала, определится с количеством знаков после запятой. Например, если десятые, то значения были бы: -0,1 0 0,1 и 9999,9 10000 10000,1):
- -1, 0, 1
- 9 999, 10 000, 10 001
Данная Техника анализа граничных значений хорошо и очень хорошо сочетается в работе:
— Техника анализа классов эквивалентности
А также не стоит забывать о:
Техника тестирования граничных значений применима только для текстовых полей? В каких случаях это технику можно применить при тестировании native мобильных приложений? Приведите, пожалуйста, парочку примеров. Благодарю.
Абсолютно применима даже там где это кажется не совсем подходящим. Граничные значения можно использовать не только для текстовых полей, но и для значений дроп даунов, и даже просто логической функциональности. Взять хотя бы версии мобильных приложений, границы разрешений и обьемов памяти.
У вас в примере крайнее значение 100001 — а должно быть 10001
Бывает ) спасибо
В какой ситуации классы эквивалентности и граничные значения могут существовать по отдельности?
а как можно эту технику оформить в тест кейсе?
допустим мне нужно написать что в поле «имя» можно ввести от 1 до 52 символов.
Если мы говорим именно о кол-ве символов — то так же как и в числовом поле — разницы нет.
Расскажете, на кой смысл указано «9 999», учитывая, что 10 000 входит в интервал и не является ГРАНИЦЕЙ?
Излишний тест если мы говорим о минимальном наборе. В таком случае позитивный по верхней будет только один. Но есть нюансы
Почему тогда не проверяется 1 002?
А то хитрые блин) 9 999 проверяете, а 1 002 не хотите.
Если не сможете объяснить, зачем проверять 1 002, то тогда и 9 999, будьте так добры, уберите из текста.
А то люди ведь это читают. За правду принимают)