Граничные значения

Проверяем поведение системы на краях допустимого диапазона.

Определение

Техника анализа граничных значений фокусируется на проверке значений, которые находятся прямо на границах допустимого диапазона, чуть ниже и чуть выше этих границ.

Как применяется тестировщиком

  • Определяются минимальные и максимальные допустимые значения полей ввода.
  • Составляются проверки для значений: min−1, min, min+1, max−1, max, max+1.
  • Особое внимание уделяется реакциям системы на выход за пределы диапазона: сообщения об ошибке, блокировка действий, подсветка полей и т.п.
  • Техника отлично работает для числовых полей, дат, длин строк, лимитов количества и т.д.
Мини-демо: граничные значения возраста
Нажми на любой элемент в фрейме, чтобы увидеть объяснение.

Классы эквивалентности

Разбиваем ввод на группы, которые ведут себя одинаково.

Определение

Классы эквивалентности — это техника, при которой всё множество возможных значений делится на группы (классы), для каждого из которых система ведёт себя одинаково. Достаточно протестировать по одному представителю из каждого класса, чтобы сократить количество тестов.

Как применяется тестировщиком

  • На основе требований выделяются допустимые и недопустимые диапазоны значений.
  • Каждому диапазону соответствует класс эквивалентности (валидный / невалидный).
  • Из каждого класса выбирается по одному значению для тестов — покрытие уменьшается количественно, но остаётся логически полным.
  • Техника часто используется совместно с граничными значениями.
Мини-демо: классы эквивалентности для скидки
Нажми на цветные полоски в фрейме, чтобы увидеть описание классов.

Попарное тестирование (Pairwise)

Ищем дефекты во взаимодействии параметров, не перебирая все комбинации.

Определение

Попарное тестирование — техника комбинированного тестирования, при которой тест-набор формируется так, чтобы каждая возможная пара значений параметров встретилась хотя бы один раз.

Как применяется тестировщиком

  • Выделяются параметры (браузер, тип клиента, способ оплаты и т.д.).
  • С помощью инструментов (например, pairwise-генераторов) строятся минимальные наборы комбинаций, покрывающие все пары.
  • Тестировщик выполняет сценарии по сгенерированным комбинациям, а не по полному декартову произведению.
  • Техника хорошо подходит для конфигурационного тестирования и проверки бизнес-правил с несколькими измерениями.
Мини-демо: комбинации устройства и способа оплаты
Нажми на любую «таблетку» в сетке внутри фрейма.

Таблица принятия решений

Формализуем сложную логику условий и действий.

Определение

Таблица принятия решений — табличное представление связки «условия → действия», где каждая колонка — отдельное правило. Техника помогает увидеть пропущенные комбинации условий и противоречия в логике.

Как применяется тестировщиком

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

Предугадывание ошибок

Используем опыт и интуицию, чтобы поймать нестандартные баги.

Определение

Предугадывание ошибок — техника, основанная на опыте тестировщика. На основе типичных ошибок прошлого, знания домена и «чутья» предположительно выбираются места, где система может сломаться, и под них придумываются дополнительные тесты.

Как применяется тестировщиком

  • Тестировщик вспоминает типичные дефекты: неверные округления, проблемы с локалями, переполнения полей, обнуление настроек и др.
  • Для рискованных мест специально придумываются «грязные» данные и нетипичные сценарии.
  • Результаты обсуждаются с аналитиками и разработчиками, пополняя базу знаний команды.
  • Часто используется как дополнение к формальным техникам (классы, границы, попарное и др.).
Мини-демо: карта идей для предугадывания ошибок
Кликни по любому «блоку идей» в фрейме.

Тестирование состояний и переходов

Проверяем, что система корректно реагирует на события в разных состояниях.

Определение

Тестирование состояний и переходов использует модель, в которой система представлена набором состояний и переходов между ними. Тестировщик проверяет, что для каждого события в определённом состоянии происходит корректный переход и результат.

Как применяется тестировщиком

  • Строится диаграмма состояний (например, для заявки, заказа, документа).
  • Выделяются допустимые и недопустимые переходы между состояниями.
  • По диаграмме составляются позитивные и негативные тест-кейсы.
  • Особое внимание уделяется «застреванию» в состоянии и циклическим переходам.
Мини-демо: состояния заявки
Нажми на любую кнопку перехода в фрейме.