Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
De stabiele versie MTP v2 is nu beschikbaar. In deze migratiehandleiding wordt beschreven wat er is gewijzigd in MTP v2 en hoe u kunt migreren naar deze versie.
Brekende wijzigingen in de bron
Dit zijn belangrijke wijzigingen die fouten in de build kunnen veroorzaken na de migratie.
Niet-ondersteunde doelraamwerken verwijderd
Ondersteuning voor doelframeworks van .NET Core 3.1 naar .NET 7 wordt verwijderd. De minimaal ondersteunde .NET-versie is .NET 8. Deze wijziging heeft geen invloed op .NET Framework. .NET Framework 4.6.2 blijft het minimaal ondersteunde .NET Framework-doel.
Verouderde typen verwijderd
De volgende typen zijn gemarkeerd als verouderd in MTP v1. In MTP v2 worden ze volledig verwijderd:
-
ITestApplicationLifecycleCallbacks: gebruikITestHostApplicationLifetimein plaats daarvan. -
TestNodeFileArtifact: gebruikFileArtifactPropertyin plaats daarvan. -
KeyValuePairStringProperty: gebruikTestMetadataPropertyin plaats daarvan. -
TestSessionContext.Client: gebruikIClientInfoin plaats daarvan.
Deze belangrijke wijziging heeft geen invloed op typische gebruikers van testframeworks. Dit is alleen van invloed op testframeworkauteurs en extensieauteurs.
Wijzigingen in API-handtekeningen
- Er is een
CancellationTokenparameter toegevoegd aan IOutputDevice.DisplayAsync(IOutputDeviceDataProducer, IOutputDeviceData). - Methoden in ITestSessionLifetimeHandler de interface worden gewijzigd om een
ITestSessionContextparameter te hebben in plaats van beide SessionUid en CancellationToken parameters. -
IDataConsumerwordt verplaatst vanMicrosoft.Testing.Platform.Extensions.TestHostnaamruimte naarMicrosoft.Testing.Platform.Extensions.
Deze belangrijke wijziging heeft geen invloed op typische gebruikers van testframeworks. Dit is alleen van invloed op testframeworkauteurs en extensieauteurs.
Gedragsbrekende wijzigingen
Dit zijn belangrijke wijzigingen die van invloed kunnen zijn op het gedrag tijdens runtime.
Compatibiliteit met VSTest-gebaseerde dotnet test
De dotnet test opdracht heeft twee implementaties:
- Implementatie op basis van VSTest: dit was de enige implementatie tot .NET 9 SDK.
- Implementatie op basis van MTP: deze is toegevoegd vanaf .NET 10 SDK.
Voor het uitvoeren van MTP-testprojecten met .NET 10 SDK is nu aanmelding vereist voor de MTP-gebaseerde dotnet test implementatie en kan deze niet meer worden uitgevoerd met de vsTest-implementatie, die eerder is ingeschakeld door TestingPlatformDotnetTestSupport de eigenschap MSBuild in MTP v1.
Als u zich wilt aanmelden voor de implementatie op basis van MTP, maakt u global.json in de hoofdmap van de opslagplaats of oplossing (of werkt u bestaande global.json bij als u er al een hebt), zodat de testrunner is ingesteld als Microsoft.Testing.Platform, zoals wordt weergegeven in het volgende voorbeeld:
{
"test": {
"runner": "Microsoft.Testing.Platform"
}
}
Als u probeert de VSTest-uitvoering dotnet test met MTP v2 uit te voeren, wordt de volgende fout gegenereerd:
Testen met VSTest-doel wordt niet meer ondersteund door MTP op .NET 10 SDK en hoger. Als u dotnet-test gebruikt, moet u zich aanmelden voor de nieuwe dotnet-testervaring. Zie https://aka.ms/dotnet-test-mtp-error voor meer informatie
Naam van opdrachtregelopties wijzigen
- De naam van de
--diagnostic-output-fileprefixopdrachtregeloptie is gewijzigd in--diagnostic-file-prefix. - De naam van de
--diagnostic-filelogger-synchronouswriteopdrachtregeloptie is gewijzigd in--diagnostic-synchronous-write.