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