Hostimplementatie testen

Deze extensies bepalen hoe en waar MTP implementeert en start de testhost. Ze gebruiken het experimentele ITestHostLauncher extensiepunt om de implementatie en het opstarten van de testhost te beheren. Voor elke extensie is een ander NuGet-pakket vereist, zoals beschreven in elke sectie.

Tip

Wanneer u Microsoft gebruikt. Testing.Platform.MSBuild installeert het NuGet-pakket van een extensie om de extensie automatisch te registreren. MSTest-, NUnit- en xUnit-runners zijn Microsoft.Testing.Platform.MSBuild transitief. Als u het gegenereerde toegangspunt uitschakelt, roept AddSelfRegisteredExtensions u aan om de pakketten te registreren die MSBuild bijdraagt.

Implementatie van verpakte apps

De verpakte app-extensie registreert een volledig vertrouwde, verpakte Windows testhost vanuit de indeling voor build-uitvoer en activeert deze door de AUMID (Application User Model ID). Het is de belangrijkste gebruiker van het experimentele ITestHostLauncher uitbreidingspunt voor verpakte Windows-apps. Voor deze extensie is het NuGet-pakket Microsoft.Testing.Extensions.PackagedApp vereist.

Note

Het extensiepakket is beschikbaar vanaf MTP versie 2.3.0. MSIX-registratie en AUMID-activering worden geïmplementeerd in de microsoft/testfx opslagplaats, maar zijn vanaf 6 augustus 2026 niet beschikbaar in een openbaar NuGet-pakket. De extensie is experimenteel en de opties en uitvoerindeling kunnen in een toekomstige versie veranderen.

Voldoen aan deze vereisten voordat u de extensie gebruikt:

  • Doelversie van Windows platform 10.0.19041.0 of hoger.
  • Als u een niet-ondertekende indeling voor build-uitvoer wilt registreren, schakelt u de ontwikkelaarsmodus in of configureert u sideloading.
  • Gebruik een volledig vertrouwde desktophost. De extensie biedt geen ondersteuning voor klassieke UWP, moderne .NET UWP met UseUwpof andere AppContainer-hosts.

Zie WinUI 3-apps testen met MSTest en MTP voor een volledige zelf-hostende WinUI-configuratie.

Handmatige registratie

var builder = await TestApplication.CreateBuilderAsync(args);
builder.AddPackagedAppDeployment();

Niet aanroepen AddPackagedAppDeployment als een zelf-hostende toepassing al aanroept AddSelfRegisteredExtensions en verwijst naar het pakket. Een MTP-uitvoering kan slechts één startprogramma voor testhosts registreren.