Jest
É um framework para testes em javascript.
Usa uma linguagem JavaScript chamada jasmine.
O jest fornece code coverage que permiti puxar um relatório dentro do coverage e verificar a cobertura de testes da App.
npm install --save-dev jest
- describe: descreve o que a bateria de teste faz.
- it: Cada describe tem um teste unitário chamado de it, que também tem uma descrição.
- expect().toBe(): determina o que é esperado do teste.
Sintaxe
Exemplo:
// função a ser testada (teste unitário)
function soma(a, b) {
return a + b;
}
// teste unitário
import { soma } from './soma';
describe('testando a função soma', () => {
it('A soma deve dar 3', () => {
const res = soma(1, 2);
expect(res).toBe(3);
});
});
Execução
npm run test
npm run test App.test.js
Coverage
Coverage mostra o percentual de cobertura de testes.
npm test -- --coverage --watchAll=false
--coverageMostra a cobertura de testes. Usado como um indicador de qualidade de código.
É possível configurar um mínimo de nível de cobertura (70%, 80%).
É possível criar uma validação para que devs só possam realizar commit se a cobertura for maior que 70%. --watchAll=false
Não executa todos os testes, apenas os que estão no arquivo de teste.