Ограничения классов и границ
Вопрос
Когда классы эквивалентности и граничные значения не работают или вводят в заблуждение?
Попробуйте сами
Ответьте вслух за 2 минуты, как на собесе. Потом сверьтесь с тезисами: что прозвучало, а что нет.
Показать ответ и разбор
Коротко
Что должно прозвучать в ответе
Техника опирается на допущение одинаковой обработки внутри класса, его надо проверять
Неявные границы реализации: типы, длины колонок, лимиты API не видны в требованиях
Взаимозависимые поля: границы одного зависят от значения другого, нужны таблицы решений
Нечисловые и неупорядоченные данные: границы не определены, остаются классы
Состояние и история: результат зависит от прошлых действий, нужны переходы состояний
Техника не ищет пропущенную функциональность, только ошибки в описанной
Что могут спросить следом
- Как найти неявные границы, если код недоступен?
- Чем дополнить технику для формы из пяти зависимых полей?
Разбор
Техника держится на допущении, что внутри класса система ведёт себя одинаково. Если классы выделены только по требованиям, а в коде есть своя ветка, например особая обработка для оптовых количеств, мы её пропустим. Требования молчат про неявные границы: тип int, длина varchar, лимит размера тела запроса у прокси. Их ищут по документации API, схеме БД, вопросам разработчикам. Когда поля зависят друг от друга, например лимит перевода зависит от статуса клиента, границы одного поля плавают, и нужны таблицы решений. Для неупорядоченных данных вроде списка городов границ просто нет. Если результат зависит от истории, нужны переходы состояний. И главное: техника проверяет описанное, но не найдёт то, чего в требованиях забыли.
Ответьте сами, а не прочитайте
В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.
Предыдущий вопрос
Граница, зависящая от другого поля
Следующий вопрос
Как протестировать поле ввода числа
Термины по теме
Ещё по теме «Классы эквивалентности и границы»
- Граничные значения для поля «возраст 18-60»
- Трёхточечный анализ границ для диапазона 18-60
- Требование «до 18 лет» без уточнения
- Граница «исполнилось 18 лет» по дате рождения
- Граница скидки в копейках
- Класс, который часто забывают
- Классы для диапазона 5-15
- Граничные длины логина 3-16 символов