MTP-testprojecten zijn gebouwd als uitvoerbare bestanden die rechtstreeks kunnen worden uitgevoerd (of gedebugt kunnen worden). Er is geen extra testconsole of -opdracht. De app wordt afgesloten met een niet-nul-afsluitcode als er een fout is, wat gebruikelijk is voor de meeste uitvoerbare bestanden. Zie MTP-afsluitcodes voor meer informatie over de bekende afsluitcodes.
Aanbeveling
U kunt een specifieke afsluitcode negeren met behulp van de --ignore-exit-code opdrachtregeloptie.
U kunt ook opdrachtregelopties instellen die van toepassing zijn op een specifieke test project in het project-bestand met behulp van de eigenschap TestingPlatformCommandLineArguments MSBuild. Een veelvoorkomende use-case is voor testprojecten waarvoor alle tests zijn genegeerd, die normaal gesproken worden afgesloten met afsluitcode 8 (de testsessie heeft nul tests uitgevoerd). In dit scenario kunt u het volgende toevoegen onder een PropertyGroup in uw project-bestand:
<TestingPlatformCommandLineArguments>$(TestingPlatformCommandLineArguments) --ignore-exit-code 8</TestingPlatformCommandLineArguments>
Het publiceren van de test project met behulp van dotnet publish en het rechtstreeks uitvoeren van de app is een andere manier om uw tests uit te voeren. Bijvoorbeeld ./Contoso.MyTests.exe uitvoeren. In sommige scenario's is het ook mogelijk om dotnet build te gebruiken om het uitvoerbare bestand te produceren, maar er kunnen edge-gevallen zijn om rekening mee te houden, zoals Native AOT.
Gebruik dotnet run
De opdracht dotnet run kan worden gebruikt om uw test-project te bouwen en uit te voeren. Dit is de eenvoudigste manier, hoewel soms de traagste, om uw tests uit te voeren. Het gebruik van dotnet run is praktisch wanneer u lokaal tests bewerkt en uitvoert, omdat deze ervoor zorgt dat de test project opnieuw wordt opgebouwd wanneer dat nodig is.
dotnet run vindt het project ook automatisch in de huidige map.
dotnet run --project Contoso.MyTests
Voor meer informatie over dotnet run, zie dotnet run.
Gebruik dotnet exec
De opdracht dotnet exec of dotnet wordt gebruikt voor het uitvoeren (of uitvoeren) van een reeds gebouwde test project. Dit is een alternatief voor het rechtstreeks uitvoeren van de toepassing.
dotnet exec vereist het pad naar de ingebouwde test project dll.
dotnet exec Contoso.MyTests.dll
or
dotnet Contoso.MyTests.dll
Opmerking
Als u het pad naar de uitvoerbare testprojectbestand (*.exe) opgeeft, treedt er een fout op:
Error:
An assembly specified in the application dependencies manifest
(Contoso.MyTests.deps.json) has already been found but with a different
file extension:
package: 'Contoso.MyTests', version: '1.0.0'
path: 'Contoso.MyTests.dll'
previously found assembly: 'S:\t\Contoso.MyTests\bin\Debug\net10.0\Contoso.MyTests.exe'
Voor meer informatie over dotnet exec, zie dotnet exec.
Gebruik dotnet test
MTP biedt een compatibiliteitslaag met vstest.console.exe en dotnet test zorgt ervoor dat u uw tests net als voorheen kunt uitvoeren tijdens het inschakelen van een nieuw uitvoeringsscenario.
dotnet test Contoso.MyTests.dll
De MTP-tests kunnen worden uitgevoerd (en fouten worden opgespoord) in Visual Studio, ze integreren met Test Explorer en kunnen ook rechtstreeks worden uitgevoerd als opstartproject.
De app uitvoeren met Visual Studio
MTP-testproject is gebouwd als uitvoerbare bestanden en kan rechtstreeks worden uitgevoerd. Hiermee worden alle tests in het opgegeven uitvoerbare bestand uitgevoerd, tenzij er een filter is opgegeven.
- Navigeer door de test project die u wilt uitvoeren in Solution Explorer, selecteer deze met de rechtermuisknop en selecteer Set als Opstart-Project.
- Selecteer Debug>Start zonder foutopsporing (of gebruik Ctrl+F5) om de geselecteerde test project uit te voeren.
Het consolevenster verschijnt met de uitvoering en samenvatting van uw testrun.
Fouten in de app rechtstreeks opsporen in Visual Studio
MTP-testproject kan rechtstreeks worden gedeebugd. Als u fouten wilt opsporen in alle tests in het opgegeven uitvoerbare bestand, tenzij er een filter wordt opgegeven:
- Navigeer door de test project die u wilt uitvoeren in Solution Explorer, selecteer deze met de rechtermuisknop en selecteer Set als Opstart-Project.
- Stel het onderbrekingspunt in voor de test die u wilt debuggen.
- Ga naar Debug>Start Debugging (of druk op F5) om fouten op te sporen in de geselecteerde test project.
Alle tests worden uitgevoerd tot een onderbrekingspunt in uw test is bereikt. Doorloop uw test om fouten op te sporen. Zodra u klaar bent met het opsporen van fouten in de app, worden alle resterende tests uitgevoerd, tenzij u deze stopt.
Test Explorer gebruiken
Als u een test wilt uitvoeren, gaat u naar Test Explorer, selecteert u de test (of tests) die u wilt uitvoeren. Klik met de rechtermuisknop op het object en kies Uitvoeren. Als u een test wilt debuggen, selecteert u de test (of tests) in Test Explorer, klikt u met de rechtermuisknop en kiest u Debug.
Opmerking
Automatische update van tests zonder het project te bouwen is niet beschikbaar.
Met de C#-extensie samen met C# Dev Kit kunt u fouten opsporen/testen uitvoeren in Visual Studio code en integratie toevoegen met testverkenner van Visual Studio Code.
De app uitvoeren met Visual Studio Code
MTP-testproject is gebouwd als uitvoerbare bestanden en kan rechtstreeks worden uitgevoerd. Hiermee worden alle tests in het opgegeven uitvoerbare bestand uitgevoerd, tenzij er een filter is opgegeven.
- Navigeer naar een testbestand waarvoor u tests wilt uitvoeren.
- Gebruik Ctrl+F5 om de geselecteerde test-project uit te voeren. Als u meerdere projecten hebt, wordt u gevraagd de projecten te selecteren die u wilt uitvoeren.
Het consolevenster verschijnt met de uitvoering en samenvatting van uw testrun.
Fouten in de app rechtstreeks opsporen in Visual Studio Code
MTP-testproject is gebouwd als uitvoerbare bestanden en kan rechtstreeks worden uitgevoerd. Hiermee worden alle tests in het opgegeven uitvoerbare bestand uitgevoerd, tenzij er een filter is opgegeven.
- Navigeer naar een testbestand waarvoor u tests wilt uitvoeren.
- Gebruik F5 om fouten op te sporen in de geselecteerde test project. Als u meerdere projecten hebt, wordt u gevraagd de projecten te selecteren die u wilt uitvoeren.
Aanbeveling
Er zijn verschillende andere manieren om een dotnet-project uit te voeren met behulp van C# DevKit, zoals uitvoeren vanuit solution explorer of het maken van bijbehorende startconfiguraties. Deze worden opgegeven in de documentatie Visual Studio Code.
Terwijl het project wordt uitgevoerd, wordt het uitvoertabblad weergegeven met de uitvoering en samenvatting van de testuitvoering.
Test Explorer gebruiken
Als u een test wilt uitvoeren, gaat u naar Test Explorer, selecteert u de test (of tests) die u wilt uitvoeren. Klik met de rechtermuisknop op het object en kies Uitvoeren. Als u een test wilt debuggen, selecteert u de test (of tests) in Test Explorer, klikt u met de rechtermuisknop en kiest u Debug.
Opmerking
Automatische update van tests zonder het project te bouwen is niet beschikbaar.
Als u één test wilt uitvoeren project in CI, voegt u één stap toe voor elk uitvoerbaar testbestand dat u wilt uitvoeren, zoals het volgende in Azure DevOps:
- task: CmdLine@2
displayName: "Run Contoso.MyTests"
inputs:
script: '.\Contoso.MyTests\bin\Debug\net10.0\Contoso.MyTests.exe'
Voer de dotnet test opdracht handmatig uit, vergelijkbaar met de typische lokale werkstroom:
- task: CmdLine@2
displayName: "Run tests"
inputs:
script: 'dotnet test' # add command-line options as needed
Voer de Azure-taak uit met de testopdracht DotNetCoreCLI. Hiervoor is een global.json bestand in de hoofdmap van uw opslagplaats vereist waarmee MTP wordt opgegeven als testrunner:
{
"test": {
"runner": "Microsoft.Testing.Platform"
}
}
- task: DotNetCoreCLI@2
displayName: "Run tests"
inputs:
command: test
Opmerking
Ondersteuning voor MTP werd DotNetCoreCLI toegevoegd in versie 2.263.0 van de taak.