Spouštění a ladění testů

Projekty testů MTP jsou vytvořené jako spustitelné soubory, které je možné spouštět (nebo ladit) přímo. Neexistuje žádná další konzole ani příkaz pro spuštění testu. Aplikace se ukončí nenulovým ukončovacím kódem, pokud dojde k chybě, která je typická pro většinu spustitelných souborů. Další informace o známých ukončovacích kódech najdete v tématu Ukončovací kódy MTP.

Návod

Konkrétní ukončovací kód můžete ignorovat pomocí možnosti příkazového řádku --ignore-exit-code.

Můžete také nastavit možnosti příkazového řádku, které platí pro konkrétní testovací project v souboru project pomocí vlastnosti TestingPlatformCommandLineArguments MSBuild. Jedním z běžných případů použití je pro testovací projekty, ve kterých jsou všechny testy ignorovány, které se obvykle ukončují s ukončovacím kódem 8 (v testovací relaci neproběhly žádné testy). V tomto scénáři můžete do souboru project přidat následující položky pod PropertyGroup:

<TestingPlatformCommandLineArguments>$(TestingPlatformCommandLineArguments) --ignore-exit-code 8</TestingPlatformCommandLineArguments>

Důležité

MTP ve výchozím nastavení shromažďuje telemetrii. Další informace a možnosti odhlášení najdete v tématu Telemetrie MTP.

Publikování testovacího project pomocí dotnet publish a spuštění aplikace přímo je dalším způsobem, jak spustit testy. Například spuštění příkazu ./Contoso.MyTests.exe. V některých scénářích je také možné použít dotnet build k vytvoření spustitelného souboru, ale existují hraniční případy ke zvážení, jako je Native AOT.

Použijte dotnet run

Příkaz dotnet run lze použít k sestavení a spuštění testovacího project. To je nejjednodušší, i když někdy nejpomalejší způsob, jak spustit testy. Použití dotnet run je praktické při úpravách a spouštění testů místně, protože zajišťuje, aby se testovací project v případě potřeby znovu sestavil. dotnet run automaticky vyhledá project v aktuální složce.

dotnet run --project Contoso.MyTests

Další informace o dotnet runnaleznete v tématu dotnet run.

Použijte dotnet exec

Příkaz dotnet exec nebo dotnet slouží ke spuštění (nebo spuštění) již vytvořeného testovacího project, je to alternativa k přímému spuštění aplikace. dotnet exec požaduje cestu k testovacímu projektu sestavené knihovny DLL.

dotnet exec Contoso.MyTests.dll

nebo

dotnet Contoso.MyTests.dll

Poznámka:

Poskytnutí cesty ke spustitelnému souboru testovacího projektu (*.exe) dojde k chybě:

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'

Další informace o dotnet execviz dotnet exec.

Použijte dotnet test

MTP nabízí vrstvu kompatibility s vstest.console.exedotnet test, a tím zajistí, abyste mohli testy spouštět stejně jako předtím, zatímco umožňuje nový scénář provádění.

dotnet test Contoso.MyTests.dll

Viz také