Sobre o projeto
Enzyme é um utilitário de teste JavaScript para React que facilita o teste da saída dos componentes React. Ele permite que os desenvolvedores manipulem, percorram e, de certas formas, simulem o runtime a partir da saída renderizada. Sua API é projetada para ser intuitiva e flexível, imitando a API do jQuery para manipulação e travessia de DOM.
Principais capacidades:
- Renderização superficial (shallow rendering): renderiza um componente um nível de profundidade e faz asserções sobre o que ele retorna, sem precisar de um DOM.
- Renderização completa em DOM (mount): renderiza componentes em um ambiente DOM real, com suporte a métodos de ciclo de vida, mudanças de props e simulação de eventos.
- Renderização estática: renderiza componentes para marcação HTML estática e analisa a estrutura resultante.
Adaptadores: Enzyme requer um adaptador correspondente à versão do React em uso. Os adaptadores oficiais cobrem React 16.x, 15.x, 0.14.x e 0.13.x. Existem adaptadores de terceiros para Preact e Inferno.
Compatibilidade com executores de teste: Enzyme não impõe opiniões sobre executores de teste ou bibliotecas de asserção. Os exemplos da documentação usam Mocha e Chai, e existem bibliotecas de matchers complementares para Jest, Jasmine, should.js e expect.
React Hooks: Enzyme suporta React hooks com algumas limitações na renderização superficial devido a problemas no renderizador superficial do React (useEffect/useLayoutEffect não são chamados, useCallback não é memoizado). Para mount com React 16.8+, Enzyme envolve APIs como simulate, setProps, setContext e invoke com ReactTestUtils.act().
A instalação é feita via npm, instalando o enzyme e o adaptador apropriado. A configuração usa a API de nível superior configure().
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.