Как тестировать асинхронный код?

Middle
246 просмотров
AFK Offer AI

Для Testing Library: findByText ждёт появления элемента (обёртка над waitFor + getByText). waitFor(() => expect(...)) для произвольных assertions. Для промисов: await act(async () => { ... }). MSW для мока API. Для loading states: рендер → проверяешь loading → waitFor → проверяешь данные. Для ошибок: MSW возвращает 500 → проверяешь error UI. Не используй setTimeout в тестах — используй waitFor. Fake timers для debounce. Тестируй все состояния: loading, success, error, empty.

Следующий вопрос

Зачем нужен forwardRef?