Tesztek futtatása és hibakeresése

Az MTP tesztprojektek futtatható fájlokként készülnek, amelyek közvetlenül futtathatók (vagy hibakeresési módban futtathatók). Nincs extra tesztfuttató konzol vagy parancs. Ha hiba történik, az alkalmazás nem aero kilépési kóddal lép ki, ami a legtöbb végrehajtható fájlra jellemző. Az ismert kilépési kódokról további információt az MTP kilépési kódjaiban talál.

Jótanács

A parancssori beállítással figyelmen kívül hagyhat egy adott --ignore-exit-code.

A project fájl egy adott teszt project vonatkozó parancssori beállításait is beállíthatja az TestingPlatformCommandLineArguments MSBuild tulajdonság használatával. Az egyik gyakori használati eset az olyan tesztprojektek esetében, amelyek minden tesztet figyelmen kívül hagynak, és amelyek általában a 8- es kilépési kóddal lépnek ki (a tesztmunkamenet nulla tesztet futtatott). Ebben a forgatókönyvben a következőket adhatja hozzá egy PropertyGroup elem alá a projektfájlban:

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

Fontos

Alapértelmezés szerint az MTP telemetriát gyűjt. Az elutasítással kapcsolatos további információkért és lehetőségekért tekintse meg az MTP-telemetria című témakört.

A teszt project dotnet publish használatával való közzététele és az alkalmazás közvetlen futtatása a tesztek futtatásának másik módja. Például a ./Contoso.MyTests.exe végrehajtása. Bizonyos esetekben a végrehajtható fájl létrehozásához dotnet build is használható, de vannak olyan szélsőséges esetek is, amelyeket érdemes megfontolni, például a natív AOT.

Használja a dotnet run-t

A dotnet run parancsot használva létrehozhatja és futtathatja a tesztprojektet. Ez a legegyszerűbb, bár néha leglassabb módszer a tesztek futtatására. A dotnet run használata gyakorlatias, ha helyileg szerkeszti és futtatja a teszteket, mivel biztosítja, hogy a teszt project szükség esetén újraépüljön. dotnet run automatikusan megkeresi a project az aktuális mappában.

dotnet run --project Contoso.MyTests

A dotnet run-ról további információért lásd: dotnet run.

Használja a dotnet exec-t

A dotnet exec vagy dotnet parancs egy már létrehozott teszt project végrehajtására (vagy futtatására) szolgál, ez alternatíva az alkalmazás közvetlen futtatására. dotnet exec a beépített tesztelési project dll elérési útját igényli.

dotnet exec Contoso.MyTests.dll

vagy

dotnet Contoso.MyTests.dll

Megjegyzés:

A végrehajtható project teszt elérési útjának (*.exe) megadása hibát eredményez:

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'

További információ a dotnet exec-ról: lásd dotnet exec.

Használja a dotnet test-t

Az MTP egy kompatibilitási réteget kínál vstest.console.exe és dotnet test segítségével, amely biztosítja, hogy a tesztek a korábbiakhoz hasonlóan fussanak, miközben lehetővé teszi egy új végrehajtási forgatókönyv megvalósítását.

dotnet test Contoso.MyTests.dll

Lásd még