DEV Community

Cover image for Dicas para deixar seu relatório de code coverage do Jest mais completo
Bruno Pinho
Bruno Pinho

Posted on Edited on Originally published at brunopinho.hashnode.dev

Dicas para deixar seu relatório de code coverage do Jest mais completo

Fazendo o excelente curso de testes do Fabio Vedovelli, aprendi algumas dicas que achei muito úteis para deixar o relatório de code coverage do Jest mais completo. Compartilho aqui:

1. Mostrando diferentes arquivos do seu projeto no code-coverage

Por padrão, quando criamos um relatório de cobertura com o comando
npm jest -- --coverage
, apenas os arquivos que já testamos são analisados para gerar o resultado.

Relatório de code coverage com apenas os arquivos que tem testes

Porém, também é possível criar o relatório considerando pastas que ainda estão sem testes, o que pode ser útil para analisar quais linhas e arquivos precisam serem testadas.

Para fazer isso, é só ir ao seu arquivo jest.config.js e inserir a chave collectCoverageFrom com o valor sendo um array com os diretórios e arquivos que você quer que sejam analisados. Assim:

...
collectCoverageFrom: [
    '<rootDir>/components/**/*.js',
    '<rootDir>/pages/**/*.js',
    '<rootDir>/hooks/**/*.js',
    '<rootDir>/store/**/*.js',
  ],
...
Enter fullscreen mode Exit fullscreen mode

Em uma tradução bem informal, é o mesmo de a gente dizer ao Jest "pega e faz o relatório a partir desses lugares aqui". O resultado é um coverage report com todos os arquivos .js das pastas components, pages, hooks e store.

Relatório de code coverage com todos os diretórios definidos

2. Mostrando seu relatório no navegador

Outra dica legal que o Vedovelli compartilhou é sobre como exibir seu relatório de code coverage no navegador, deixando ele bem mais visual e informativo.

Relatório de Code Coverage sendo exibido no navegador

Como dá pra ver, ele mostra de forma mais intuitiva os arquivos analisados, o percentual deles que está coberto e quais linhas ainda faltam serem testadas. Dá até pra entrar no relatório de cada arquivo e ver em destaque quais são as partes do código que não estão cobertas.

Relatório de Code Coverage exibindo quais linhas não foram cobertas por testes

Para exibir o report desta forma, basta abrir o arquivo index.html que foi criado pelo comandonpm -- --coverage e está dentro do diretório ./coverage/lcov-report/. Você pode fazer isto de duas formas:

Utilizando a extensão do VS Code Live Server

Um jeito rápido de visualizar o relatório é utilizando a extensão Live Server, que cria um server de desenvolvimento local e te permite abrir qualquer arquivo .html clicando no botão que a extensão adiciona ao VS Code.

Utilizando a dependência http-server

Caso não queira ou possa utilizar o Live Server, você pode instalar a dependência http-servere chegar ao mesmo resultado.

Para isso, instale o pacote globalmente:

npm install --global http-server

E execute o comando que inicia seu servidor passando o caminho para o diretório do arquivo index.html:

http-server ./coverage/lcov-report/

Concluindo

Essas são duas maneiras que aprendi de deixar nossos relatórios de code coveragemais completos que aprendi e gostaria de compartilhar aqui. Como já apontei, aprendi tudo no curso de testes em JavaScript do Fabio Vedovelli.

E você, tem outras dicas de como deixar esses relatórios melhores?

Top comments (0)