Aan de slag met MSTest

De aanbevolen manier om een MSTest-project te maken, is door de MSTest.Sdk, een MSBuild-project-SDK te gebruiken die een eersteklas ervaring biedt voor het testen met MSTest. Het bevat alle aanbevolen standaardwaarden en vereenvoudigt de projectconfiguratie.

Een project maken met MSTest.Sdk

Als u een MSTest-project wilt maken, stelt u het Sdk kenmerk MSTest.Sdk in op samen met de MSTest-versie in het projectbestand:

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

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

</Project>

Opmerking

4.1.0 wordt als voorbeeld gegeven en kan worden vervangen door een nieuwere versie.

Als u versiebeheer in meerdere testprojecten wilt vereenvoudigen, raden we u aan de SDK-versie op global.json-bestand op oplossingsniveau op te geven:

<Project Sdk="MSTest.Sdk">

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

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

Zie MSBuild-project-SDK's gebruiken voor meer informatie.

Wanneer u build het project uitvoert, worden alle benodigde onderdelen hersteld en geïnstalleerd met behulp van de standaard NuGet-werkstroom. U kunt dezelfde hulpprogramma's gebruiken (bijvoorbeeld dotnet test Visual Studio) als elk ander testproject.

Aanbeveling

MSTest.Sdk maakt standaard gebruik van de MSTest runner met MTP. Zie Aspire voor geavanceerde configuratieopties, zoals extensieprofielen, overschakelen naar VSTest of integreren met en Playwright.

Alternatief: Het MSTest NuGet-pakket gebruiken

Als u liever geen MSTest.Sdk gebruikt, kunt u het MSTest NuGet-metapakket gebruiken, waaronder:

  • MSTest.TestFramework, MSTest.TestAdapteren MSTest.Analyzers voor de kernfunctionaliteit MSTest.
  • Microsoft.NET.Test.Sdk voor VSTest-integratie en testhostondersteuning.
  • Microsoft.Testing.Extensions.CodeCoverage en Microsoft.Testing.Extensions.TrxReport voor extensies van MTP.

Overzicht van NuGet-pakketten

MSTest-functionaliteit wordt verdeeld over meerdere NuGet-pakketten:

Package Description
MSTest.TestFramework Bevat de kenmerken en klassen die worden gebruikt om MSTest-tests te definiëren.
MSTest.TestAdapter Bevat de testadapter die MSTest-tests detecteert en uitvoert.
MSTest.Analyzers Bevat analyses waarmee u hoogwaardige tests kunt schrijven.

Opmerking

Als u een testinfrastructuurproject maakt dat is bedoeld als helperbibliotheek voor meerdere testprojecten, installeert MSTest.TestFramework en MSTest.Analyzers rechtstreeks in dat project.

Taalspecifieke zelfstudies

Voor gedetailleerde stapsgewijze zelfstudies in uw favoriete .NET-taal:

Voorbeeldprojecten

Het MSTest-team onderhoudt voorbeeldprojecten in de opslagplaats microsoft/testfx die verschillende functies en scenario's demonstreren:

Sample Description Link
Eenvoudig1 Basisconfiguratie voor de MSTest-runner weergeven op GitHub
DemoMSTestSdk MSTest SDK-projectinstallatie weergeven op GitHub
BlankUwpNet9App UWP-tests met .NET 9 weergeven op GitHub
BlankWinUINet9App WinUI 3 testen met .NET 9 weergeven op GitHub
NativeAotRunner Systeemeigen AOT-compilatie weergeven op GitHub
RunInDocker Uitvoering van een containertest weergeven op GitHub