Skip to content
Latchkey

O Que É um Relatório JUnit?

Um relatório JUnit é um arquivo XML padrão que descreve resultados de testes - quais testes rodaram, quais passaram, quais falharam e quanto tempo levaram.

Apesar do nome, o formato XML do JUnit é usado muito além do Java. Ele se tornou o padrão de facto que test runners em várias linguagens emitem e que plataformas de CI fazem parse para exibir resultados, para que o tooling não precise de um parser por framework.

O que ele contém

Um XML JUnit lista test suites e test cases com seu status (passou, falhou, foi pulado), durações e mensagens de falha ou stack traces. A maioria dos frameworks pode gerá-lo diretamente ou via um plugin de reporter.

Por que o CI adora

Como o formato é padrão, uma plataforma de CI pode ingerir resultados de pytest, Jest, Go, PHPUnit e dezenas de outros da mesma forma - renderizando status por teste, evidenciando falhas e rastreando testes flaky ao longo das execuções.

Um pequeno exemplo

Executar pytest --junitxml=results.xml produz um arquivo com elementos <testsuite> e <testcase>. Um step de test-reporter do CI o lê e renderiza cada caso que falhou com sua mensagem, em vez de você rolar a saída bruta.

Produzindo um

Você configura seu runner para emitir XML JUnit, depois faz upload dele ou aponta o step de test-reporting do CI para ele. A plataforma o faz parse em uma visão de resultados legível, frequentemente anotando as linhas que falharam no pull request.

Limites do formato

O XML JUnit não tem um único schema formal, então os dialetos variam ligeiramente entre ferramentas. A maioria dos consumidores é tolerante, mas campos exóticos podem ser ignorados - mantenha-se nos elementos comuns (suites, cases, failures, durations) para portabilidade.

Principais conclusões

  • O XML do JUnit é um formato padrão multilinguagem para resultados de testes.
  • Ele registra status por teste, tempo e detalhes de falha.
  • Sua ubiquidade permite que uma integração de CI lide com muitos frameworks.

Guias relacionados