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>
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
Az MTP-tesztek futtathatók a Visual Studioban, integrálhatók a Test Explorerrel, és közvetlenül indítási projektként is elindíthatók.
Indítsa az alkalmazást a Visual Studio-val
Az MTP-tesztprojekt végrehajthatóként készült, és közvetlenül futtatható. Ez futtatja az összes tesztet az adott végrehajtható fájlban, hacsak nincs megadva szűrő.
- Navigáljon a Megoldáskezelőben a futtatni kívánt tesztprojektet, kattintson rá jobb gombbal, és válassza az Indítási projektként állítás lehetőséget.
- Válassza a DebugStart hibakeresés nélkül (vagy használja a CtrlF5 a kiválasztott teszt projekt futtatásához).
A konzolablak megjelenik a tesztfuttatás végrehajtásával és összegzésével.
Az alkalmazás hibakeresése közvetlenül a Visual Studio
Az MTP-tesztprojekt közvetlenül is hibakeresést végezhet. Az adott végrehajtható fájlban lévő összes teszt hibakeresése, kivéve, ha szűrő van megadva:
- Navigáljon a Megoldáskezelőben a futtatni kívánt tesztprojektet, kattintson rá jobb gombbal, és válassza az Indítási projektként állítás lehetőséget.
- Állítson be töréspontot a debaggolni kívánt tesztbe.
- Lépjen a Debug>Hibakeresés indítása (vagy nyomja le a F5-öt) a kiválasztott tesztprojekt hibakereséséhez.
Az összes teszt végrehajtásra kerül, amíg el nem éri a töréspontot tartalmazó tesztjét. A teszt hibakereséséhez lépjen végig részletesen a folyamaton. Ha végzett a hibakereséssel, az alkalmazás folytatja az összes fennmaradó teszt futtatását, hacsak nem állítja le.
A Test Explorer használata
Teszt futtatásához lépjen Tesztkezelő, válassza ki a futtatni kívánt tesztet (vagy teszteket). Kattintson rá a jobb gombbal, és válassza a Futtatás lehetőséget. A teszt hibakereséséhez hasonlóan válassza ki a tesztet (vagy a teszteket) Tesztkezelő, válassza a jobb gombbal, majd válassza Hibakeresésilehetőséget.
Megjegyzés:
A tesztek automatikus frissítése a project létrehozása nélkül nem érhető el.
A C# bővítmény és a C# Dev Kit lehetővé teszi a tesztek hibakeresését/futtatását Visual Studio kódban, valamint integrációt biztosít Visual Studio Code Test Explorerével.
Az alkalmazás futtatása Visual Studio Kóddal
Az MTP-tesztprojekt végrehajthatóként készült, és közvetlenül futtatható. Ez futtatja az összes tesztet az adott végrehajtható fájlban, hacsak nincs megadva szűrő.
- Keresse meg azt a tesztfájlt, amelyhez teszteket szeretne futtatni.
- A Ctrl+F5 használatával futtassa a kiválasztott teszt project. Ha több projektje van, a felugró ablak arra kéri, hogy válassza ki a futtatni kívánt projektet.
A konzolablak megjelenik a tesztfuttatás végrehajtásával és összegzésével.
Az alkalmazás hibakeresése közvetlenül Visual Studio Code-ban
Az MTP-tesztprojekt végrehajthatóként készült, és közvetlenül futtatható. Ez futtatja az összes tesztet az adott végrehajtható fájlban, hacsak nincs megadva szűrő.
- Keresse meg azt a tesztfájlt, amelyhez teszteket szeretne futtatni.
- A kiválasztott teszt project hibakereséséhez használja a F5. Ha több projektje van, a felugró ablak arra kéri, hogy válassza ki a futtatni kívánt projektet.
Jótanács
Dotnet projektet a C# DevKit használatával többféleképpen is futtathatunk, például a Solution Explorerből indítva vagy megfelelő indítási konfigurációkat létrehozva. A Visual Studio Code dokumentációjában vannak megadva.
A project futtatásakor a kimeneti lap megjelenik a tesztfuttatás végrehajtásával és összegzésével.
A Test Explorer használata
Teszt futtatásához lépjen Tesztkezelő, válassza ki a futtatni kívánt tesztet (vagy teszteket). Kattintson rá a jobb gombbal, és válassza a Futtatás lehetőséget. A teszt hibakereséséhez hasonlóan válassza ki a tesztet (vagy a teszteket) Tesztkezelő, válassza a jobb gombbal, majd válassza Hibakeresésilehetőséget.
Megjegyzés:
A tesztek automatikus frissítése a project létrehozása nélkül nem érhető el.
Ha egyetlen teszt project szeretne futtatni a CI-ben, adjon hozzá egy lépést minden futtatni kívánt teszthez, például a következőt Azure DevOpson:
- task: CmdLine@2
displayName: "Run Contoso.MyTests"
inputs:
script: '.\Contoso.MyTests\bin\Debug\net10.0\Contoso.MyTests.exe'
Futtassa manuálisan a dotnet test parancsot a tipikus helyi munkafolyamathoz hasonlóan:
- task: CmdLine@2
displayName: "Run tests"
inputs:
script: 'dotnet test' # add command-line options as needed
Futtatni a DotNetCoreCLI Azure feladattal teszt paranccsal. Ehhez szükség van egy global.json fájlra az adattár gyökerén, amely az MTP-t határozza meg tesztfuttatóként.
{
"test": {
"runner": "Microsoft.Testing.Platform"
}
}
- task: DotNetCoreCLI@2
displayName: "Run tests"
inputs:
command: test
Megjegyzés:
Az MTP DotNetCoreCLI támogatása a feladat 2.263.0-s verziójában lett hozzáadva.