Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
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:
- Encontre comutadores de linha de comando em um só lugar: referência de opções da CLI mtp.
- Adicione funcionalidades às execuções de teste: use as páginas de funcionalidades neste artigo.
- Crie sua própria extensão: arquitetura MTP, pontos de extensão e serviços.
Escolher por cenário
- Precisa personalizar a saída do terminal: Terminal output (incorporado)
- Precisa de relatórios TRX ou Azure DevOps: relatórios de teste (extensão)
- Precisa de saída nativa do GitHub Actions (grupos de logs, anotações e resumo da tarefa): relatório do GitHub Actions (extensão experimental)
- É necessário obter dados de cobertura: cobertura de código (extensão)
- Precisa de diagnóstico de falha ou travamento: despejos de falhas e travamentos (extensão)
- Precisa gravar a tela durante uma execução: Diagnóstico (extensão, experimental)
- Precisa implantar e iniciar um host de teste de aplicativo empacotado: testar a implantação do host (extensão, experimental)
- É necessário encaminhar os logs da plataforma por meio de
Microsoft.Extensions.Logging: integração do Microsoft.Extensions (extensão, experimental) - Necessidade de repetir testes com falha: Repetição (extensão)
- Precisa de suporte de recarga dinâmica: Recarga dinâmica (extensão)
- Precisa de suporte do Microsoft Fakes: Microsoft Fakes (extensão)
- Precisa de rastreamentos e métricas do OpenTelemetry: OpenTelemetry (extensão)
- Coleta e desativação de dados de telemetria: Telemetria (extensão)
Recursos integrados
Esses recursos fazem parte da plataforma principal e não exigem pacotes NuGet adicionais.
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.
Gerar arquivos de relatório de teste (TRX, HTML, JUnit, CTRF, Azure DevOps, GitHub Actions).
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.
Emita rastreamentos e métricas por meio do OpenTelemetry durante as execuções de teste.
Reexecutar testes com falha com políticas configuráveis.
Execute testes com suporte de recarregamento frequente para iteração rápida.
Executar testes que usam Microsoft Fakes para stubs e shims.
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.