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 uma saída nativa do GitHub Actions (grupos de log, anotações e resumo da tarefa): relatório do GitHub Actions (extensão)
- É 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) - É necessário criar um editor ou integração com IDE: modo servidor (integrado)
- Precisa carregar extensões que não são referências em tempo de compilação: carregamento dinâmico de extensões (nativo, opcional)
- 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)
- Precisa fornecer clientes de chat de IA para uma estrutura de teste ou extensão: integrações de IA (extensão, experimental)
- 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.
Acione a descoberta e a execução de testes a partir de um editor, IDE ou outra ferramenta via JSON-RPC.
Carregamento de extensão dinâmica
Carregue assemblies de extensão declarados explicitamente a partir de manifestos JSON quando uma execução optar explicitamente por isso.
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.
Integrações de IA (experimental)
Forneça clientes de chat de IA neutros para testar estruturas e extensões, inclusive por meio de Fábrica de IA do Azure.
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.