Funcionalidades do Microsoft.Testing.Platform (MTP)

O MTP é fornecido com recursos internos e pode ser estendido por meio de pacotes NuGet.

Ao usar o Microsoft.Testing.Platform.MSBuild (incluído transitivamente por MSTest, NUnit e xUnit runners), instalar um pacote NuGet de extensão é tudo o que você precisa – as extensões são detectadas e registradas automaticamente e o ponto de entrada é gerado para você.

Se você optar por não usar o ponto de entrada gerado automaticamente ao configurar <GenerateTestingPlatformEntryPoint>false</GenerateTestingPlatformEntryPoint>, deverá registrar as extensões manualmente no seu método Main. Cada página de extensão documenta a chamada de registro manual.

As extensões que exigem um pacote NuGet são enviadas com seu próprio modelo de licenciamento (alguns menos permissivos), lembre-se de se referir à licença associada às extensões que você deseja usar.

Algumas extensões são experimentais: suas APIs são anotadas com o TPEXP diagnóstico e podem mudar em uma versão futura, portanto, você deve reconhecer o diagnóstico para usá-las. As extensões experimentais são marcadas (experimentais) nas listas a seguir.

Comece aqui

Use o seguinte caminho com base em sua meta:

Escolher por cenário

Recursos integrados

Esses recursos fazem parte da plataforma principal e não exigem pacotes NuGet adicionais.

Saída do terminal

Relatórios de status e progresso para o terminal: Modos de saída, suporte ANSI e indicadores de progresso.

Recursos de extensão

Esses recursos exigem a instalação de pacotes NuGet.

Relatórios de teste

Gerar arquivos de relatório de teste (TRX, HTML, JUnit, CTRF, Azure DevOps, GitHub Actions).

Cobertura de código

Coletar dados de cobertura de código durante a execução do teste.

Despejos de falhas e travamentos:

Colete arquivos de despejo de processo quando o host de teste falhar ou travar.

OpenTelemetry

Emita rastreamentos e métricas por meio do OpenTelemetry durante as execuções de teste.

Repetir

Reexecutar testes com falha com políticas configuráveis.

Recarregamento frequente

Execute testes com suporte de recarregamento frequente para iteração rápida.

Microsoft Fakes

Executar testes que usam Microsoft Fakes para stubs e shims.

Telemetria

Coleção de telemetria. Saiba como recusar e quais dados são coletados.

Diagnóstico (experimental, introduzido no MTP 2.3.0)

Colete evidências para diagnosticar uma execução, como gravar a tela usando o gravador de vídeo.

Implantação de host de teste (experimental, introduzida no MTP 2.3.0)

Controlar como e onde o host de teste é implantado e iniciado, como implantar e iniciar um host de teste de aplicativo empacotado.

Integração com Microsoft.Extensions (experimental, introduzida no MTP 2.3.0)

Integre os diagnósticos da plataforma e da extensão às bibliotecas Microsoft.Extensions.* que seu aplicativo já usa, por exemplo, encaminhando logs pelo pipeline Microsoft.Extensions.Logging.