Jest: [Pergunta] O Jest é um bom ajuste para testes de unidade de back-end?

Criado em 4 ago. 2016  ·  3Comentários  ·  Fonte: facebook/jest

Tenho adorado Jest até agora testando os componentes React.

Eu usei / tenho usado Mocha / Jasmine para testar back-ends de nós e só queria perguntar se é possível (e recomendado) usar Jest para teste de back-end, já que não consegui encontrar nenhuma indicação disso nos documentos (React , React-Native, Async, Webpack, ou seja, sem Node )

Eu apenas tentei usá-lo e, infelizmente, encontrei um obstáculo instantâneo. brcypt dispara um aviso [SECURITY] node-uuid: crypto not usable, falling back to insecure Math.random() e o teste falha devido a um erro de tempo de execução ( TypeError: Path must be a string. Received undefined )

É possível usar o Jest para teste de back-end agora ou não faz parte do escopo do projeto e algo como Jasmine se encaixa melhor?

Comentários muito úteis

Que tipo de teste de back-end você está tentando fazer? O próprio Jest usa o Jest para testes e muitas bibliotecas usam o Jest para testes. Você pode fornecer um repositório no github que eu possa usar para npm install e npm test que mostre seu problema?

Duas coisas que eu recomendo: tente definir "automock": false e "testEnvironment": "node" . Se seus outros testes dependem disso, você pode criar uma configuração de Jest separada e executar jest com --config=pathToConfig.json e usar modulePathIgnorePatterns para ignorar os testes de front-end.

Todos 3 comentários

Que tipo de teste de back-end você está tentando fazer? O próprio Jest usa o Jest para testes e muitas bibliotecas usam o Jest para testes. Você pode fornecer um repositório no github que eu possa usar para npm install e npm test que mostre seu problema?

Duas coisas que eu recomendo: tente definir "automock": false e "testEnvironment": "node" . Se seus outros testes dependem disso, você pode criar uma configuração de Jest separada e executar jest com --config=pathToConfig.json e usar modulePathIgnorePatterns para ignorar os testes de front-end.

Obrigado pela resposta rápida @cpojer!

Fico feliz em saber que Jest pode ser usado com o Node! Eu estava pensando que sim, já que é essencialmente uma biblioteca de teste e a API deve funcionar, mas senti a necessidade de perguntar, especialmente porque quase não há recursos online mostrando que ela está sendo usada com back-ends de Node e principalmente com react (ou meu Google-Fu apenas não era bom o suficiente).

Eu já estava zombando do meu node_modules então não era o caso, mas testEnvironment: node resolveu o problema!

Felicidades!

Sim, o ambiente padrão ( jsdom ) nem sempre se presta bem ao teste de nó. Outro benefício é que o env do nó carregará 500 ms mais rápido (efetivamente instantâneo) porque o jsdom é meio lento.

Esta página foi útil?
0 / 5 - 0 avaliações