← Назад к списку
ТехническаяТестирование (QA)Junior

Расскажите про классы эквивалентности и граничные значения. Как бы вы протестировали поле возраста от 18 до 60?

Короткий ответ

  • Класс эквивалентности — значения, обрабатываемые одинаково
  • Из каждого класса достаточно одного представителя
  • Для 18–60: валидный класс и два невалидных
  • Граничные значения: 17, 18, 19 и 59, 60, 61
  • Ошибки чаще живут на границах диапазонов
  • Добавить спецклассы: пусто, буквы, дробные, отрицательные

Эквивалентность сокращает число тестов без потери покрытия, а граничные значения целятся туда, где ошибки вероятнее всего.

Как сказать вслух

пример ответа

Класс эквивалентности — это группа значений, которые система обрабатывает одинаково, поэтому достаточно проверить одно значение из группы. Для поля от 18 до 60 есть валидный класс, например 35, и два невалидных — меньше 18 и больше 60. Дальше техника граничных значений: проверяю сами границы и соседние числа — 17, 18, 59, 60, 61. И обязательно добавляю нестандартный ввод: пустое поле, буквы, ноль, отрицательные числа.

Подробный ответ

Основной ответ

Эквивалентное разбиение (equivalence partitioning) делит все возможные входные данные на классы, внутри которых поведение системы предполагается одинаковым: если работает одно значение класса, работают и остальные. Это резко сокращает количество тестов. Анализ граничных значений (boundary value analysis) дополняет технику: дефекты из-за ошибок в условиях (>= вместо >) концентрируются на границах классов, поэтому проверяются граница и её соседи. Для диапазона 18–60: валидный класс (например, 35), невалидные классы ниже и выше, границы 17/18 и 60/61, по расширенной схеме ещё 19 и 59. Отдельно проверяются недопустимые типы ввода: пустая строка, пробелы, буквы, дробные, отрицательные, очень длинные строки — это тоже классы эквивалентности.

Ключевые моменты

  • Один представитель класса. Проверять 20, 30 и 40 бессмысленно — это один класс, достаточно одного значения.
  • Два или три значения на границу. Минимум — граница и ближайшее невалидное; расширенно — граница плюс оба соседа.
  • Невалидные классы обязательны. Негативные сценарии находят больше дефектов, чем позитивные, про них часто забывают.
  • Техника применима не только к числам. Длина строк, даты, размеры файлов, роли пользователей — везде есть классы и границы.

Практический контекст

Классическая практическая задача на собеседовании джуниора: дают поле или форму и просят составить проверки. Интервьюер смотрит на системность: кандидат должен назвать технику, а не хаотично перечислять значения. Сильный ход — проговорить вслух и валидные, и невалидные классы, границы, спецсимволы и уточнить требования: включительны ли границы, что должно происходить при ошибке.

Частые ошибки

  • Перечисляют случайные значения вместо системного разбиения на классы
  • Забывают негативные классы: буквы, пусто, отрицательные числа
  • Не уточняют у интервьюера, включены ли границы в допустимый диапазон

ИП Кочкин Алексей Сергеевич · ИНН 390509026279 · ОГРНИП 325390000030973 · jiniys2005@yandex.ru