Compartilhar via


Testar extensões de relatórios

Este artigo lista e explica todas as extensões Microsoft.Testing.Platform relacionadas ao recurso de relatório de teste.

Um relatório de teste é um arquivo que contém informações sobre a execução e o resultado dos testes.

Relatórios de teste do Visual Studio

O arquivo de resultado de teste do Visual Studio (ou TRX) é o formato padrão para publicar os resultados do teste. Essa extensão é enviada como parte do pacote Microsoft.Testing.Extensions.TrxReport .

As opções disponíveis são as seguintes:

Opção Descrição
--report-trx Gera o relatório TRX.
--report-trx-filename O nome do relatório TRX gerado. O nome padrão corresponde ao seguinte formato <UserName>_<MachineName>_<yyyy-MM-dd HH:mm:ss>.trx.

O relatório é salvo dentro da pasta TestResults padrão que pode ser especificada por meio do argumento de --results-directory linha de comando.

Relatórios do Azure DevOps

O plug-in de relatório do Azure DevOps aprimora a execução de testes para desenvolvedores que hospedam seu código no GitHub, mas se baseiam em agentes de build do Azure DevOps. Ele adiciona informações adicionais sobre falhas para exibir os problemas diretamente no PR do GitHub.

Anotação de erro na exibição de arquivos de PR do GitHub

A extensão é enviada no pacote Microsoft.Testing.Extensions.AzureDevOpsReport .

As opções disponíveis são as seguintes:

Opção Descrição
--report-azdo Habilite a exibição de erros/avisos em builds de CI.
--report-azdo-severity Severidade a ser usada para o evento relatado. As opções são: error (padrão) e warning.

A extensão detecta automaticamente que está em execução no ambiente de CI (integração contínua) verificando a variável de TF_BUILD ambiente.

Determinando a linha para reportar

Para realçar a linha correta no código em que ocorreu falha, o plug-in de relatório do AzureDevOps pesquisa o stacktrace de erro para um arquivo que existe no repositório atual.

Para determinar isso:

  • localiza a raiz do repositório, isso é feito pesquisando o .git diretório mais próximo do local de onde o aplicativo de teste é iniciado (conforme determinado por AppContext.BaseDirectory).
  • localiza a primeira linha no rastreamento de pilha que tem o local e a linha do arquivo (a biblioteca precisa ter símbolos de depuração).
  • exclui todos os arquivos que terminam com Assert.cs para evitar mostrar detalhes de suas implementações de asserção ou wrappers.
  • exclui todos os arquivos que não existem no disco (normalmente são linhas de bibliotecas externas que enviam símbolos de depuração, por exemplo, MSTest).

(Estes são detalhes internos que servem para ajudar a depurar o comportamento e podem mudar no futuro.)