Ответ вслух Junior Классы эквивалентности и границы спрашивают часто обновлено

Как протестировать поле ввода числа

Вопрос

Протестируй поле «Количество товара в корзине», которое по требованиям принимает целые от 1 до 99.

Попробуйте сами

Ответьте вслух за 2 минуты, как на собесе. Потом сверьтесь с тезисами: что прозвучало, а что нет.

Показать ответ и разбор

Коротко

Сначала уточню требования: какое сообщение при ошибке, ограничено ли количество остатком на складе. Дальше классы эквивалентности: валидный от 1 до 99 и невалидные меньше 1 и больше 99, плюс классы формата: не число, пустое значение, дробное число.

Что должно прозвучать в ответе

  • Уточнить требования: что происходит при невалидном вводе, есть ли лимит по складу

  • Классы: меньше 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 ошибок.

Термины по теме