Зачем нужна обёртка act() в тестах React?

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

act() гарантирует, что все обновления state, эффекты и рендеры завершились до проверки ассертов. Без act() тест может проверить DOM до того, как React обработал обновление. React Testing Library уже оборачивает render, fireEvent и userEvent в act(), поэтому вручную его вызывать нужно редко — обычно при тестировании таймеров, асинхронных обновлений state или кастомных хуков через renderHook. Если видишь warning про act — значит есть необработанное обновление.

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

Как тестировать i18n?