Condividi tramite


Introduzione a MSTest

Il modo consigliato per creare un progetto MSTest consiste nell'usare MSTest.Sdk, un SDK di progetto MSBuild che offre un'esperienza di prima classe per i test con MSTest. Include tutte le impostazioni predefinite consigliate e semplifica la configurazione del progetto.

Creare un progetto con MSTest.Sdk

Per creare un progetto MSTest, impostare l'attributo Sdk a MSTest.Sdk insieme alla versione MSTest nel file di progetto:

<Project Sdk="MSTest.Sdk/4.1.0">

  <PropertyGroup>
    <TargetFramework>net10.0</TargetFramework>
  </PropertyGroup>

</Project>

Annotazioni

4.1.0 viene fornito come esempio e può essere sostituito con qualsiasi versione più recente.

Per semplificare la gestione delle versioni in più progetti di test, è consigliabile specificare la versione dell'SDK in un file diglobal.json a livello di soluzione:

<Project Sdk="MSTest.Sdk">

  <PropertyGroup>
    <TargetFramework>net10.0</TargetFramework>
  </PropertyGroup>

</Project>
{
    "msbuild-sdks": {
        "MSTest.Sdk": "4.1.0"
    }
}

Per altre informazioni, vedere Usare gli SDK del progetto MSBuild.

Quando si build esegue il progetto, tutti i componenti necessari vengono ripristinati e installati usando il flusso di lavoro NuGet standard. È possibile usare gli stessi strumenti (ad esempio, dotnet test o Visual Studio) di qualsiasi altro progetto di test.

Suggerimento

Per impostazione predefinita, MSTest.Sdk usa lo strumento di esecuzione MSTest con Microsoft.Testing.Platform. Per le opzioni di configurazione avanzate, ad esempio i profili di estensione, il passaggio a VSTest o l'integrazione con Aspire e Playwright, vedere Configurazione di MSTest SDK.

Alternativa: usare il pacchetto NuGet MSTest

Se si preferisce non usare MSTest.Sdk, è possibile usare il meta-pacchetto NuGet MSTest , che include:

  • MSTest.TestFramework, MSTest.TestAdaptere MSTest.Analyzers per la funzionalità MSTest di base.
  • Microsoft.NET.Test.Sdk per l'integrazione di VSTest e il supporto dell'host di test.
  • Microsoft.Testing.Extensions.CodeCoverage e Microsoft.Testing.Extensions.TrxReport per le estensioni Microsoft.Testing.Platform (MTP).

Panoramica dei pacchetti NuGet

La funzionalità MSTest è suddivisa tra più pacchetti NuGet:

Package Description
MSTest.TestFramework Contiene gli attributi e le classi usati per definire i test MSTest.
MSTest.TestAdapter Contiene l'adattatore di test che individua ed esegue test MSTest.
MSTest.Analyzers Contiene analizzatori che consentono di scrivere test di alta qualità.

Annotazioni

Se si sta creando un progetto di infrastruttura di test destinato a una libreria helper per più progetti di test, installare MSTest.TestFramework e MSTest.Analyzers direttamente in tale progetto.

Esercitazioni specifiche del linguaggio

Per esercitazioni dettagliate nel tuo linguaggio .NET preferito:

Progetti di esempio

Il team MSTest gestisce progetti di esempio nel repository microsoft/testfx che illustra varie funzionalità e scenari:

Sample Description Link
Simple1 Configurazione di base dello strumento di esecuzione MSTest visualizzazione su GitHub
DemoMSTestSdk Configurazione del progetto MSTest SDK visualizzazione su GitHub
BlankUwpNet9App Test UWP con .NET 9 visualizzazione su GitHub
BlankWinUINet9App Test di WinUI 3 con .NET 9 visualizzazione su GitHub
NativeAotRunner Compilazione AOT nativa visualizzazione su GitHub
RunInDocker Esecuzione di test in contenitori visualizzazione su GitHub