Appearance
Проверка архитектурных контрактов
DSA не задаёт конкретный инструмент тестирования. Здесь важно понять, что стоит проверять, независимо от выбранного test runner.
Valibot schemas
Проверьте:
- корректный объект принимается;
- отсутствующее обязательное поле отклоняется;
- поле неверного типа отклоняется.
Особенно полезны fixtures, похожие на реальные внешние ответы.
Mappers
Mapper — чистая функция, поэтому для него достаточно входа и ожидаемого результата.
Проверьте преобразования вроде:
txt
published_at: string
→
publishedAt: DateMobX stores
Проверьте публичное поведение:
- начальное состояние;
- actions;
- computed;
- reset;
- переходы loading state для асинхронного сценария.
Не привязывайте проверку к приватным деталям class.
React-компоненты
Для dumb UI важнее props-контракт.
Для smart UI важнее, что он корректно читает public state и вызывает нужные actions.
React Hook Form + Valibot
Проверьте сценарии пользователя:
- пустой обязательный title не проходит;
- корректные значения доходят до submit;
- ошибки schema отображаются рядом с полями.
Архитектурные проверки
Отдельно полезно контролировать:
- отсутствие deep imports;
- направление зависимостей;
- отсутствие DTO в props;
- отсутствие route hooks внутри stores.
Конкретный инструмент для этих проверок DSA не предписывает.