Qualidade e Testes

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
                    

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
					
--coverage
Mostra 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.

References

  • jestjs.io
  • jasmine.github.io