Слепое написание кейсов без структуры — путь к пропущенным багам и бесполезным тестам. Чтобы покрыть максимум при минимуме — нужно выбирать подходящую технику.
Почему это важно:
📍 Без техники легко пропустить граничные и нестандартные сценарии
📍 Без фокуса — сотни кейсов с минимумом пользы
📍 Разные типы фич требуют разных подходов — универсальной схемы нет
Что делать:
1. Выбираем технику по типу задачи
➖ Формы, поля, валидация ввода
→ Equivalence Class Partitioning (ECP) + Boundary Value Analysis (BVA)
Пример: поле «возраст 18–60»
→ классы: <18, 18–60, >60; границы: 17, 18, 60, 61
➖ Комбинации параметров (фильтры, настройки)
→ Pairwise testing, Orthogonal Array Testing
Пример: валюта, страна, тип карты — тестируем попарные комбинации, не все 100+ вариантов
➖ Бизнес-логика с условиями и правилами
→ Decision Table Testing
Пример: скидка на покупку зависит от роли + суммы — составляем таблицу условий и результатов
➖ Процессы с переходами состояний
→ State Transition Testing
Пример: заказ → оплачен → отменён → возвращён — моделируем переходы и недопустимые маршруты
➡️ Используйте технику, которая даёт наибольшее покрытие с минимальным числом кейсов
2. Учитываем риски и критичность
— Фича high-risk? → выбираем более строгие техники
— Небольшой модуль? → достаточно базовых позитив/негатив проверок
Пример: тест API платёжки ≠ тест кнопки «показать ещё» в каталоге
3. Комбинируем техники
— Сначала эквивалентные классы
— Затем границы
— И логика + состояния для сложных кейсов
➡️ Так вы покроете и валидность данных, и поведение системы
4. Документируем, как тестируем
— Обозначьте: что и как покрываете
— Это поможет при ревью и при ретесте
➡️ Даже простая пометка:
Техника: BVA + EQC уже даёт понимание💡 Советы:
— Делайте mindmap или таблицу техник под конкретную фичу
— Обсуждайте технику на grooming — разработчики часто подскажут крайние случаи
— Не бойтесь «придумывать» кейсы — бойтесь не обосновать, зачем они нужны
🐸 Библиотека фронтендера
#буст
