Что такое анализ граничных значений?
- Какие значения проверять на границах диапазона?
- Как протестировать поле с диапазоном от 1 до 100?
Ошибки чаще всего на границах классов, поэтому проверяем саму границу и значения рядом с ней.
- Для диапазона 1–100: 0, 1, 2 и 99, 100, 101 (или минимум 0, 1, 100, 101)
- Типичная ошибка разработчика —
<вместо<=
А ещё Границы бывают у длины строки, дат, размера файла, количества товаров
Подробно
Разработчики чаще ошибаются в условиях сравнения: < вместо <=, ошибка на единицу, неверная граница при переходе между классами. Поэтому после разбиения на классы эквивалентности проверяют их края.
Как выбирать значения:
- двухзначный подход — граница и ближайшее значение за ней: для диапазона 1–100 это 0, 1, 100, 101;
- трёхзначный — граница и по соседу с каждой стороны: 0, 1, 2, 99, 100, 101.
Для нецелых значений шаг берут по точности: для цены с копейками — 99.99, 100.00, 100.01.
Где искать границы, кроме чисел:
- длина строки: пароль 8–64 символа → 7, 8, 64, 65;
- даты: возраст 18 лет — день рождения сегодня, вчера и завтра;
- размер файла: до 10 МБ → 10 МБ ровно и чуть больше;
- количество: в корзине максимум 99 товаров.
Пример
Требование: «Пароль — от 8 до 20 символов». Проверки: 7 символов (ошибка), 8 (принят), 9 (принят), 19 (принят), 20 (принят), 21 (ошибка). Плюс некорректные классы: пустой пароль, пароль из пробелов.
Что хотят услышать
- Почему ошибки сосредоточены на границах.
- Правильный набор значений для конкретного диапазона.
- Границы не только у чисел: длина, даты, размеры.
Частые ошибки
- Проверить только саму границу без значений за ней.
- Выбирать значения из середины диапазона.
Проверьте себя
Один верный вариант. Подумайте, потом откройте ответ.
Показать варианты и ответ
- ✓Для диапазона 1–100 проверить 0, 1, 2 и 99, 100, 101
- ✗Проверить только середину диапазона, например 50
- ✗Проверить все значения от 1 до 100
- ✗Границы бывают только у числовых полей
Что спросят дальше
Связанные вопросы
Разбор собеседования с sotto
После собеседования sotto разбирает разговор: оценка, каждый вопрос — хорошо, частично или слабо, чего не хватило в ответе и над чем поработать к следующему разу. Первые 30 минут бесплатно.