Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
MTP viene fornito con funzionalità predefinite e può essere esteso tramite pacchetti NuGet.
Quando si utilizza Microsoft.Testing.Platform.MSBuild (incluso transitivamente dai driver di MSTest, NUnit e xUnit), è sufficiente installare un pacchetto NuGet di estensione: le estensioni vengono rilevate e registrate automaticamente e il punto di ingresso viene generato per te.
Se si rifiuta esplicitamente il punto di ingresso generato automaticamente impostando <GenerateTestingPlatformEntryPoint>false</GenerateTestingPlatformEntryPoint>, è necessario registrare manualmente le estensioni nel Main metodo. Ogni pagina di estensione documenta la chiamata di registrazione manuale.
Le estensioni che richiedono un pacchetto NuGet vengono fornite con il proprio modello di licenza (alcuni meno permissivi), assicurarsi di fare riferimento alla licenza associata alle estensioni da usare.
Alcune estensioni sono sperimentali: le API vengono annotate con la TPEXP diagnostica e potrebbero cambiare in una versione futura, quindi è necessario riconoscere la diagnostica per usarle. Le estensioni sperimentali sono contrassegnate (sperimentali) negli elenchi seguenti.
Inizia qui
Usare il percorso seguente in base all'obiettivo:
- Trovare le opzioni della riga di comando in un'unica posizione: informazioni di riferimento sulle opzioni dell'interfaccia della riga di comando MTP.
- Aggiungi funzionalità alle esecuzioni di test: usa le pagine delle funzioni in questo articolo.
- Creare un'estensione personalizzata: architettura MTP, punti di estensione e servizi.
Scegliere per scenario
- È necessario personalizzare l'output del terminale: output del terminale (predefinito)
- Sono necessari i report TRX o Azure DevOps: i report di Test (estensione)
- È necessario un output nativo di GitHub Actions (gruppi di log, annotazioni e riepilogo del job): GitHub Actions report (estensione)
- Servono dati di copertura: copertura del codice (estensione)
- È necessaria la diagnostica di arresto anomalo o blocco: arresti anomali e dump di blocco (estensione)
- È necessario registrare la schermata durante un'esecuzione: Diagnostica (estensione, sperimentale)
- È necessario distribuire e avviare un host di test per app in pacchetto: Distribuzione dell'host di test (estensione, sperimentale)
- È necessario instradare i log della piattaforma tramite
Microsoft.Extensions.Logging: integrazione Microsoft.Extensions (estensione, sperimentale) - Necessità di compilare l'editor o l'integrazione dell'IDE: modalità server (incorporata)
- È necessario caricare le estensioni che non sono riferimenti in fase di compilazione: caricamento di estensioni dinamiche (predefinito, consenso esplicito)
- Necessità di ripetere i test non riusciti: Riprovare (estensione)
- Necessita supporto per hot reload: Ricaricamento rapido (estensione)
- È necessario il supporto di Microsoft Fakes: Microsoft Fakes (estensione)
- Sono necessarie tracce e metriche OpenTelemetry: OpenTelemetry (estensione )
- È necessario fornire client di chat di intelligenza artificiale a un framework di test o a un'estensione: integrazioni di intelligenza artificiale (estensione, sperimentale)
- Raccolta dei dati di Telemetria e opzione di esclusione (estensione)
Funzionalità predefinite
Queste funzionalità fanno parte della piattaforma principale e non richiedono pacchetti NuGet aggiuntivi.
Stato e segnalazione dello stato al terminale: modalità di output, supporto ANSI e indicatori di stato.
Gestire il rilevamento e l'esecuzione dei test da un editor, un IDE o un altro strumento tramite JSON-RPC.
Caricamento di estensioni dinamiche
Caricare le assembly di estensione dichiarate esplicitamente da manifest JSON quando un'esecuzione lo richiede.
Funzionalità di estensione
Queste funzionalità richiedono l'installazione di pacchetti NuGet.
Generare file di report di test (TRX, HTML, JUnit, CTRF, Azure DevOps, GitHub Actions).
Raccogli i dati di code coverage durante l'esecuzione dei test.
Raccogliere i file di dump del processo quando l'host di test va in crash o si blocca.
Generare tracce e metriche tramite OpenTelemetry durante le esecuzioni dei test.
Integrazioni di intelligenza artificiale (sperimentale)
Fornire client di chat di intelligenza artificiale indipendenti dal provider per testare framework ed estensioni, tra cui tramite Azure AI Foundry.
Ripetere i test non riusciti con criteri configurabili.
Eseguire test con supporto di ricaricamento rapido per un'iterazione rapida.
Eseguire test che usano Microsoft Fakes per gli stub e gli shim.
Raccolta di dati di telemetria. Informazioni su come rifiutare esplicitamente e quali dati vengono raccolti.
Diagnostica (sperimentale, introdotta in MTP 2.3.0)
Acquisire prove per diagnosticare un'esecuzione, ad esempio registrare lo schermo con il videoregistratore.
Distribuzione host di test (sperimentale, introdotta in MTP 2.3.0)
Controlla come e dove viene distribuito e avviato l'host di test, ad esempio distribuendo e avviando un host di test per app in pacchetto.
Microsoft. Integrazione delle estensioni (sperimentale, introdotta in MTP 2.3.0)
Integra la diagnostica della piattaforma e dell'estensione nelle librerie Microsoft.Extensions.* già usate dall'applicazione, ad esempio inoltrando i log tramite la pipeline Microsoft.Extensions.Logging.