O Que É um Relatório de Testes?
Um relatório de testes é o resumo estruturado de uma execução de testes, registrando quais testes passaram, falharam ou foram pulados, e por quê.
Depois que uma suíte roda, alguém, ou algum sistema, precisa saber o que aconteceu. Um relatório de testes captura isso: as contagens, as falhas com suas mensagens de erro, os tempos e os pulos. No CI, o relatório é o que transforma uma execução bruta em um sinal legível em um pull request.
O que um relatório contém
- Total de testes executados, passados, falhados e pulados.
- Para cada falha, a asserção e a mensagem de erro.
- Duração por teste e total.
- Frequentemente a suíte ou o arquivo a que cada teste pertence.
Relatórios para humanos versus para máquinas
Um relatório tem dois públicos. A saída do console é para um humano lendo o terminal. Um formato estruturado, como JUnit XML ou JSON, é para máquinas: sistemas de CI o parseiam para exibir resultados, acompanhar tendências e anotar pull requests com os testes específicos que falharam.
Formatos comuns
JUnit XML é o padrão de fato que a maioria dos sistemas de CI entende, apesar de o nome ser agnóstico de framework. Outros formatos incluem TAP, reporters JSON e relatórios HTML específicos de ferramenta. Muitos runners conseguem emitir vários de uma vez.
Um exemplo rápido
Runners tipicamente aceitam uma flag informando onde e em que formato escrever o relatório estruturado para o CI ingerir.
pytest --junitxml=report.xml
jest --reporters=jest-junitRelatórios de testes no CI
O CI ingere o relatório, mostra um detalhamento por teste, e frequentemente comenta as falhas diretamente no pull request, para que um desenvolvedor veja exatamente o que quebrou sem ler logs brutos. Produzir o relatório adiciona tempo insignificante, e runners rápidos mantêm toda a execução ágil para que o relatório chegue prontamente.
Principais conclusões
- Um relatório de testes resume quais testes passaram, falharam ou foram pulados.
- Formatos de máquina como JUnit XML permitem ao CI exibir e acompanhar resultados.
- O CI exibe o relatório em pull requests para que as falhas fiquem óbvias.