Olvasás angol nyelven

Megosztás a következőn keresztül:


VSTest.Console.exe parancssori beállítások

VSTest.Console.exe a tesztek futtatására szolgáló parancssori eszköz. A parancssorban tetszőleges sorrendben több lehetőséget is megadhat. Ezek a beállítások Általános parancssori beállítások.

Megjegyzés

A Visual Studio MSTest-adaptere régebbi módban is működik (egyenértékű a tesztek futtatásával mstest.exe) a kompatibilitás érdekében. Örökölt módban nem tudja kihasználni a TestCaseFilter funkciót. Az adapter válthat örökölt módra, ha egy tesztbeállítást fájl van megadva, forcelegacymode igaz runsettings fájlban, vagy olyan attribútumok használatával, mint HostType.

Ha arm architektúrán alapuló gépen szeretne automatizált teszteket futtatni, VSTest.Console.exekell használnia.

Nyissa meg fejlesztői parancssori a parancssori eszköz használatához, vagy keresse meg az eszközt %Program Files(x86)%\Microsoft Visual Studio\<verzió>\<kiadás>\common7\ide\CommonExtensions\<Platform | Microsoft>.

Általános parancssori beállítások

Az alábbi táblázat felsorolja a VSTest.Console.exe és a rövid leírások összes lehetőségét. Hasonló összegzést VSTest.Console/? parancssorba való beírásával tekinthet meg.

Opció Leírás
[tesztfájlnevek] Teszteket futtathat a megadott fájlokból. Több tesztfájlnév elválasztása szóközökkel.
Példák: mytestproject.dll, mytestproject.dll myothertestproject.exe
/Settings:[fájlnév] Teszteket futtathat további beállításokkal, például adatgyűjtőkkel. További információ: Egységtesztek konfigurálása .runsettings fájllal
Példa: /Settings:local.runsettings
/Tesztek:[tesztnév] A megadott értékeket tartalmazó neveket tartalmazó teszteket futtathat. Ez a parancs megegyezik a teljes tesztnévvel, beleértve a névteret is. Több érték megadásához vesszővel kell elválasztani őket.
Példa: /Tests:TestMethod1,testMethod2
A /Tests parancssori beállítás nem használható a /TestCaseFilter parancssori beállítással.
/Párhuzamos Megadja, hogy a tesztek párhuzamosan legyenek végrehajtva. Alapértelmezés szerint legfeljebb a gép összes elérhető magja használható. A beállításfájlban használandó magok számát konfigurálhatja.
/Enablecodecoverage Engedélyezi az adatdiagnosztikai adapter CodeCoverage használatát a tesztfuttatásban.
Az alapértelmezett beállításokat akkor használja a rendszer, ha nincs megadva a beállításfájl használatával.
/InIsolation A teszteket izolált folyamatban futtatja.
Ez az elkülönítés kisebb valószínűséggel állítja le a vstest.console.exe folyamatot a tesztek hibái miatt, de a tesztek lassabban futnak.
/UseVsixExtensions Ezzel a beállítással a vstest.console.exe folyamat használja vagy kihagyja a tesztfuttatásban telepített VSIX-bővítményeket (ha vannak ilyenek).
Ez a beállítás elavult. A Visual Studio következő fő kiadásától kezdve ez a lehetőség eltávolítható. Lépjen a NuGet-csomagként elérhetővé tett bővítmények használatára.
Példa: /UseVsixExtensions:true
/TestAdapterPath:[elérési út] Kényszeríti a vstest.console.exe folyamatot, hogy egyéni tesztadaptereket használjon egy megadott elérési útról (ha van ilyen) a tesztfuttatásban.
Példa: /TestAdapterPath:[pathToCustomAdapters]
/Platform:[platformtípus] Az aktuális futtatókörnyezetből meghatározott platform helyett az adott platform használatát kényszeríti ki. Ez a beállítás csak az x86- és x64-platformok kényszerítésére képes Windows rendszeren. Az ARM-beállítás nem működik, és a legtöbb rendszeren x64-et eredményez.
Ne adja meg ezt a beállítást olyan futtatókörnyezeteken való futtatáshoz, amelyek nem szerepelnek az olyan érvényes értékek listájában, mint az ARM64.
Az érvényes értékek: x86, x64 és ARM.
/Framework: [keretrendszer verziója] A tesztelés végrehajtásához használandó cél .NET-verzió.
Példaértékek: Framework35, Framework40, Framework45, FrameworkUap10, .NETCoreApp,Version=v1.1.
A TargetFrameworkAttribute használatával automatikusan észlelheti ezt a beállítást a szerelvényből, és alapértelmezés szerint Framework40, ha az attribútum nincs jelen. Ezt a beállítást explicit módon kell megadnia, ha eltávolítja a TargetFrameworkAttribute a .NET Core-szerelvényekből.
Ha a cél keretrendszer Framework35, a tesztek a CLR 4.0 "kompatibilitási módban" futnak.
Példa: /Framework:framework40
/TestCaseFilter:[kifejezés] Futtassa az adott kifejezésnek megfelelő teszteket.
<Kifejezés> formátuma <tulajdonság>=<érték>[|<Kifejezés>].
Példa: /TestCaseFilter:"Priority=1"
Példa: /TestCaseFilter:"TestCategory=Nightly|FullyQualifiedName=Namespace.ClassName.MethodName"
A /TestCaseFilter parancssori kapcsoló nem használható a /Tesztek parancssori beállítással.
A kifejezések létrehozásáról és használatáról további információt TestCase szűrőcímű témakörben talál.
/? Használati adatokat jelenít meg.
/Logger:[uri/friendlyname] Adjon meg egy naplózót a teszteredményekhez. Adja meg többször a paramétert több naplózó engedélyezéséhez.
Példa: Az eredmények Visual Studio-teszteredmény-fájlba (TRX) való naplózásához használja a
/Logger:trx
[; LogFileName=<Alapértelmezett értékek egyedi fájlnévre>]
/ListTests:[fájlnév] Listázza a felderített teszteket az adott teszttárolóból.
Megjegyzés: A /TestCaseFilters beállításnak nincs hatása a tesztek listázásakor; csak azt szabályozza, hogy mely tesztek fussanak le.
/ListDiscoverers Felsorolja a telepített tesztfelderítéseket.
/ListExecutors A telepített tesztvégzők listája.
/ListLoggers A telepített tesztnaplózók listája.
/ListSettingsProviders A telepített tesztbeállítások szolgáltatóinak listája.
/Blame A teszteket hibás módban futtatja. Ez a lehetőség hasznos lehet olyan problémás tesztek elkülönítésében, amelyek a tesztgazda összeomlását okozzák. Összeomlás észlelésekor létrehoz egy sorozatfájlt TestResults/<Guid>/<Guid>_Sequence.xml, amely rögzíti az összeomlás előtt futtatott tesztek sorrendjét. További információ: Adatgyűjtő.
/Diag:[fájlnév] Diagnosztikai nyomkövetési naplókat ír a megadott fájlba.
/ResultsDirectory:[elérési út] Ha nem létezik, a teszteredmények könyvtára a megadott elérési úton jön létre.
Példa: /ResultsDirectory:<pathToResultsDirectory>
/ParentProcessId:[parentProcessId] Az aktuális folyamat elindításáért felelős szülőfolyamat folyamatazonosítója.
/Port:[port] A szoftvercsatorna-kapcsolat portja és az eseményüzenetek fogadása.
/Collect:[dataCollector friendlyName] Engedélyezi az adatgyűjtőt a tesztfuttatáshoz. További információk.

Tipp

A beállítások és értékek nem megkülönböztetik a kis- és nagybetűket.

Példák

A vstest.console.exe futtatásának szintaxisa a következő:

vstest.console.exe [TestFileNames] [Options]

Alapértelmezés szerint a parancs 0 értéket ad vissza, amikor a rendszer a szokásos módon kilép, még akkor is, ha nem talál teszteket. Ha nem nulla értéket szeretne visszaadni, ha nem talál teszteket, használja <TreatNoTestsAsError>true</TreatNoTestsAsError> runsettings lehetőséget.

Az alábbi parancs vstest.console.exe futtat a teszttár myTestProject.dll:

vstest.console.exe myTestProject.dll

Az alábbi parancs vstest.console.exe futtat több tesztfájllal. Különítse el a tesztfájlneveket szóközökkel:

vstest.console.exe myTestFile.dll myOtherTestFile.dll

Az alábbi parancs vstest.console.exe futtat több beállítással. A teszteket a myTestFile.dll fájlban egy izolált folyamat során futtatja, és a Local.RunSettings fájlban megadott beállításokat használja. Emellett csak a "Priority=1" jelölésű teszteket futtatja, és naplózza az eredményeket egy .trx fájlba.

vstest.console.exe myTestFile.dll /Settings:Local.RunSettings /InIsolation /TestCaseFilter:"Priority=1" /Logger:trx

Az alábbi parancs a teszttár myTestProject.dll/blame beállításával futtatja vstest.console.exe:

vstest.console.exe myTestFile.dll /blame

Ha egy teszt gazdagép összeomlik, a rendszer létrehozza a sequence.xml fájlt. A fájl a tesztek teljes neveit tartalmazza a végrehajtás sorrendjében egészen az összeomlás időpontjában futó konkrét tesztig.

Ha nincs teszt gazdagép összeomlása, a sequence.xml fájl nem jön létre.

Példa egy létrehozott sequence.xml fájlra:

<?xml version="1.0"?>
<TestSequence>
  <Test Name="TestProject.UnitTest1.TestMethodB" Source="D:\repos\TestProject\TestProject\bin\Debug\TestProject.dll" />
  <Test Name="TestProject.UnitTest1.TestMethodA" Source="D:\repos\TestProject\TestProject\bin\Debug\TestProject.dll" />
</TestSequence>

UWP-példa

UWP esetén az appxrecipe-fájlt DLL helyett hivatkozni kell.

vstest.console.exe /Logger:trx /Platform:x64 /framework:frameworkuap10 UnitTestsUWP\bin\x64\Release\UnitTestsUWP.build.appxrecipe