Capítulo 85 de 456

Testing

Core Idea

Página-índice que apresenta os tipos de teste aplicáveis a React/Next.js e aponta para os guias específicos de cada ferramenta (Cypress, Jest, Playwright, Vitest).

Key Concepts

  • Unit Testing: testa unidades isoladas — uma função, hook ou componente único.
  • Component Testing: unit testing focado em componentes React (renderização, props, eventos).
  • Integration Testing: testa como múltiplas unidades (componentes, hooks, funções) funcionam juntas.
  • End-to-End (E2E) Testing: testa fluxos de usuário num ambiente que simula cenário real (browser), em ambiente production-like.
  • Snapshot Testing: captura o output renderizado de um componente e compara contra um snapshot salvo, para detectar mudanças de comportamento não intencionais.
  • Async Server Components: por serem novidade no ecossistema React, algumas ferramentas ainda não têm suporte completo — recomenda-se E2E Testing em vez de Unit Testing para componentes async.

Key Takeaways

  1. Para componentes async (Server Components), prefira End-to-End Testing em vez de Unit Testing devido a suporte incompleto das ferramentas atuais.
  2. A escolha de ferramenta específica depende do tipo de teste: veja os capítulos dedicados a Cypress, Jest, Playwright e Vitest.

Connects To

  • Cypress (ch086): guia de setup específico.
  • Jest (ch087): guia de setup específico.
  • Playwright (ch088): guia de setup específico.
  • Vitest (ch089): guia de setup específico.