O que é cobertura de teste
Cobertura de teste é a medida da parte do código que a suíte executou. A ferramenta registra as linhas e os ramos alcançados, além das funções executadas.
O número aparece como percentual. A leitura útil compara o trecho alterado com a cobertura anterior, em vez do total isolado do projeto.
O que o número mostra
A cobertura de linha indica que a instrução foi executada. A cobertura de ramo indica se cada caminho da condição foi percorrido, e essa leitura encontra o caso que o teste deixou de fora.
Uma função sem teste aparece como zero. Uma função com teste que não confere o resultado aparece como coberta, mesmo sem validar o comportamento.
O que ele não prova
O número não prova que a expectativa está certa nem que o fluxo funciona no navegador. Ele também não mede a qualidade do teste, a clareza da asserção ou a manutenção futura.
Usar a cobertura como meta isolada costuma produzir testes que executam a linha e não verificam nada. A revisão do teste complementa o número.
Exemplo
Como conferir
Leia o relatório por arquivo e por trecho alterado, confira se cada caminho novo tem teste com asserção e compare a cobertura do trecho com a versão anterior.
O teste unitário e o teste de integração cobrem camadas diferentes. A regressão confirma que a mudança não quebrou o que já funcionava.
Dúvidas frequentes
Perguntas frequentes sobre Cobertura de teste
- Cobertura alta garante qualidade?
- Não. O número mostra que a linha foi executada, não que o resultado foi conferido. Um teste sem asserção também aumenta a cobertura.
- Qual percentual é suficiente?
- Depende do impacto do trecho e do custo de manter o teste. Um limite único para o projeto inteiro costuma produzir testes fracos em áreas críticas.
- Cobertura de linha é a mesma coisa que cobertura de ramo?
- Não. A de linha mede a instrução executada. A de ramo mede se cada caminho da condição foi percorrido, e a distinção está nas escolhas.
- Como usar o número na revisão?
- Compare o trecho alterado com a cobertura anterior e verifique se o caminho novo tem teste. O número do projeto inteiro esconde a área que ficou sem conferência.
Para continuar
Recursos relacionados
Artigo
Martin Fowler: cobertura de teste
Discute o que o número mede e os limites da métrica.
Abrir recursoSite de referência
Wikipedia: cobertura de código
Apresenta os tipos de cobertura e a forma de cálculo.
Abrir recursoAplicação na formação
Vibe Coding: Do Zero ao MVP
Na Formação Vibe Coding, a cobertura de teste mostra quais caminhos do MVP já têm conferência automática.
Conhecer a formação
Fontes consultadas
Referências deste verbete
Este verbete ajudou você?
Obrigado pela resposta. Ela fica salva apenas neste navegador.