Funcionalidades do Microsoft Testing Platform (MTP)

O MTP vem com funcionalidades integradas e pode ser estendido através de pacotes NuGet.

Ao usar o Microsoft.Testing.Platform.MSBuild (incluído transitivamente pelos runners MSTest, NUnit e xUnit), instalar um pacote de extensão NuGet é tudo o que precisa — as extensões são automaticamente detetadas e registadas, e o ponto de entrada é gerado para si.

Se optar por sair do ponto de entrada gerado automaticamente ao definir <GenerateTestingPlatformEntryPoint>false</GenerateTestingPlatformEntryPoint>, deve registar as extensões manualmente no seu Main método. Cada página de extensão documenta a chamada de registo manual.

As extensões que exigem um pacote NuGet são enviadas com o seu próprio modelo de licenciamento (algumas menos permissivas), certifique-se de consultar a licença associada às extensões que pretende usar.

Algumas extensões são experimentais: as suas APIs são anotadas com o TPEXP diagnóstico e podem mudar numa versão futura, por isso tens de reconhecer o diagnóstico para as usar. As extensões experimentais são assinaladas como experimentais ) nas listas seguintes.

Comece aqui

Use o seguinte caminho com base no seu objetivo:

Escolha por cenário

Funcionalidades incorporadas

Estas funcionalidades fazem parte da plataforma principal e não requerem pacotes NuGet adicionais.

Saída terminal

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

Recursos de extensão

Estas funcionalidades exigem a instalação de pacotes NuGet.

Relatórios de testes

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

Cobertura de código

Recolha dados de cobertura de código durante a execução dos testes.

Despejos de colisão e suspensão

Recolher ficheiros de despejo de processo em caso de falha ou bloqueio do host de teste.

OpenTelemetria

Emitir traços e métricas através do OpenTelemetry durante os testes.

Tentar novamente

Tentar novamente testes falhados com políticas configuráveis.

Hot Reload

Executa testes com suporte para recarregamento dinâmico, permitindo iteração rápida.

Falsificações da Microsoft

Executa testes que usem Microsoft Fakes para 'stubs' e 'shims'.

Telemetria

Recolha de telemetria. Saiba como optar por não participar e que dados são recolhidos.

Diagnóstico (experimental, introduzido no MTP 2.3.0)

Recolha provas para diagnosticar uma corrida, como gravar o ecrã com o gravador de vídeo.

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

Controlar como e onde o host de teste é implementado e lançado, como implementar e lançar um host de teste de aplicação empacotada.

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

Integre os diagnósticos da plataforma e das extensões nas bibliotecas Microsoft.Extensions.* que a sua aplicação já utiliza, por exemplo, encaminhando registos através do pipeline Microsoft.Extensions.Logging.