Relatórios de testes

Estas funcionalidades exigem a instalação de pacotes NuGet adicionais, conforme descrito em cada secção.

Sugestão

Ao usar o Microsoft.Testing.Platform.MSBuild (incluído de forma transitiva pelos runners MSTest, NUnit e xUnit), estas extensões são registadas automaticamente quando instala os seus pacotes NuGet — não são necessárias alterações de código. O registo manual especificado neste artigo só é obrigatório se desativar o ponto de entrada gerado automaticamente ao definir <GenerateTestingPlatformEntryPoint>false</GenerateTestingPlatformEntryPoint>.

Relatórios de teste do Visual Studio (TRX)

O ficheiro de resultados do Visual Studio (ou TRX) é o formato predefinido para publicar os resultados dos testes. Esta extensão requer o pacote Microsoft.Testing.Extensions.TrxReport NuGet.

Registo manual

var builder = await TestApplication.CreateBuilderAsync(args);
builder.AddTrxReportProvider();

Observação

Ao usar o registo manual, regista o fornecedor do relatório TRX por último. A implementação atual depende da ordem de registo, por isso registar após todas as outras extensões garante que captura todos os dados de teste.

Opções

Opção Description
--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.fffffff>.trx.

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

Azure DevOps Relatórios

O plugin de relatórios Azure DevOps melhora a execução de testes para programadores que alojam o seu código no GitHub, mas que se baseiam em agentes de compilação do Azure DevOps. Adiciona informação adicional às falhas para mostrar a falha diretamente no GitHub PR.

Anotação de erro na visualização de ficheiros do PR no GitHub

Esta extensão requer o pacote NuGet Microsoft.Testing.Extensions.AzureDevOpsReport .

Registo manual

var builder = await TestApplication.CreateBuilderAsync(args);
builder.TestHost.AddAzureDevOpsProvider();

Opções

Opção Description
--report-azdo Ativa o gerador de relatórios Azure DevOps. Erros e avisos são escritos na saída num formato que o Azure DevOps compreende.
--report-azdo-severity Gravidade a utilizar para os eventos comunicados. Os valores válidos são error (por defeito) e warning.
--report-azdo-flaky-history Consulta o histórico dos resultados dos testes no Azure DevOps dos últimos N dias (1-90) e anota as falhas reportadas com contexto de instabilidade. Requer --report-azdo.
--report-azdo-demote-known-flaky Rebaixa falhas intermitentes na janela de histórico do Azure DevOps (o limiar predefinido é 25%) de erro para aviso. Requer --report-azdo e --report-azdo-flaky-history.
--report-azdo-quarantine-file Caminho para um ficheiro de texto que lista nomes totalmente qualificados ou padrões glob de teste em quarentena. Falhas de correspondência são reportadas como avisos. Requer --report-azdo.
--report-azdo-upload-artifacts Carrega ficheiros de resultados de teste e/ou adiciona etiquetas de build ao Azure DevOps. Os valores válidos são off (por defeito), tags-only, files, e all.
--report-azdo-upload-artifact-include Inclui ficheiros no carregamento de artefactos do Azure DevOps usando padrões glob relativos ao diretório dos resultados de teste. O valor padrão é **/*. Exige --report-azdo-upload-artifacts que seja um valor diferente de off.
--report-azdo-upload-artifact-exclude Exclui ficheiros do carregamento de artefactos do Azure DevOps utilizando padrões glob relativos ao diretório dos resultados dos testes. Exige --report-azdo-upload-artifacts que seja um valor diferente de off.
--report-azdo-upload-artifact-name Substitui o nome do contentor de artefacto do Azure DevOps. O valor padrão é TestResults_{assemblyName}_{tfm}. Exige --report-azdo-upload-artifacts que seja um valor diferente de off.
--publish-azdo-test-results Publica os resultados dos testes em direto no separador Azure DevOps Tests.
--publish-azdo-run-name Define um nome personalizado de Azure DevOps test run para publicação de resultados de testes em tempo real. Requer --publish-azdo-test-results.

Observação

A extensão Azure DevOps tornou-se estável no MTP 1.9.0 (--report-azdo e --report-azdo-severity). Todas as outras opções na tabela — --report-azdo-flaky-history, --report-azdo-demote-known-flaky, --report-azdo-quarantine-file, --report-azdo-upload-artifacts, --report-azdo-upload-artifact-include, --report-azdo-upload-artifact-exclude--report-azdo-upload-artifact-name--publish-azdo-test-resultse --publish-azdo-run-name — estão disponíveis no MTP a partir da versão 2.3.0.

A extensão deteta automaticamente que está a correr em ambiente de integração contínua (CI) ao verificar a TF_BUILD variável de ambiente.