MSTest.exe – možnosti příkazového řádku
Publikováno: duben 2016
MSTest.exe je příkaz příkazového řádku, který se používá ke spouštění testů. Tento příkaz má několik možností, které můžete použít k přizpůsobení spuštění vašeho testu. Mnohé z těchto možností můžete použít ve spojení s jinými. Ve skutečnosti je některé možnosti nutné používat ve spojení s jinými možnostmi, jak je popsáno v následujících částech. U MSTest.Console.exe na příkazovém řádku můžete zadat tyto možnosti v libovolném pořadí.
MSTest.exe neinterpretuje možnosti nebo hodnoty, které zadáte pro ně s rozlišováním.
V následujících tabulkách jsou uvedeny všechny možnosti pro MSTest.exe a jejich krátký popis. Podobný přehled zobrazíte zadáním příkazu MSTest /h na příkazovém řádku.
Možnosti Obecné příkazového řádku
/testcontainer:[ Název souboru ] |
Načtěte soubor, který obsahuje testy. Příklad: /testcontainer:tests.dll Další informace naleznete v objektu /testcontainer. |
/testmetadata:[ Název souboru ] |
Načtěte soubor, který obsahuje metadat testu. Další informace naleznete v objektu /testmetadata. |
/testlist:[ Cesta k seznamu testu ] |
Uveďte seznam testů, jak jsou uvedeny v souboru metadat, které mají být spuštěny. Další informace naleznete v objektu /testlist. |
/category:[ testovat filtr kategorie ] |
Určete a filtrujte, které kategorie testů chcete spustit. Další informace naleznete v objektu /category. |
/test:[ Název testovacího ] |
Zadejte název test, který má být spuštěn. Další informace naleznete v objektu /test. |
/noisolation |
Spusťte testy v rámci procesu MSTest.exe. Tato volba zlepší rychlost průběhu testu, ale zvyšuje riziko pro proces MSTest.exe. |
/testsettings: [ Název souboru ] |
Pomocí zadaného testovacího souboru nastavení. Příklad: /testsettings:Local.Testsettings Další informace naleznete v objektu /testsettings. |
/runconfig:[ Název souboru ] |
Pomocí zadaného spuštění konfiguračního souboru. Příklad: /runconfig:localtestrun.Testrunconfig Další informace naleznete v objektu /runconfig. Poznámka Tento parametr příkazového řádku je zachován z důvodu kompatibility s předchozími verzemi sady Visual Studio.Konfigurace testu byly nahrazeny test nastavení v Visual Studio Enterprise. |
/resultsfile:[ Název souboru ] |
Uložte tento test spustit výsledky do zadaného souboru. Příklad: /resultsfile:testResults.trx Další informace naleznete v objektu /resultsfile. |
/detail:[ id vlastnosti ] |
Zadejte název vlastnosti, pro kterou chcete zobrazit hodnoty, pokud existují, kromě výsledku testu. Další informace naleznete v objektu /detail. |
/help |
Zobrazit nápovědu MSTest.exe (krátký tvar: /? nebo /h). |
/nologo |
Zobrazení bez úvodní nápis a zprávu o autorských právech. |
/usestderr |
Pro výstup informací o chybě používejte standardní chyby. |
Možnosti příkazového řádku pro publikování výsledků testu
Další informace o těchto možností naleznete v tématu Možnosti příkazového řádku pro publikování výsledků testů.
/publish:[ název serveru ] |
Publikujte výsledky do databáze pro kolekci týmových projektů určeného serveru. |
/publishresultsfile:[ Název souboru ] |
Zadejte název souboru výsledků, který chcete publikovat. Pokud není zadán žádný název souboru výsledků, použijte soubor vytvořený pomocí aktuálního spuštění. |
/publishbuild:[ vytváření id ] |
Publikujte výsledky testu pomocí tohoto ID sestavení. |
/teamproject:[ Název týmového projektu ] |
Zadejte název týmového projektu, ke kterému sestavení patří. |
/platform:[ Platforma ] |
Určete platformu sestavení, proti kterému se by se měly zveřejňovat výsledky testu. |
/flavor:[ charakter ] |
Určete charakter sestavení, proti kterému se by se měly zveřejňovat výsledky testu. |
Používání možností MSTest
Následující oddíly popisují řadu možností pro MSTest.exe podrobněji. Možnosti, které byly použity pro publikování výsledků testů zde nejsou zahrnuty. Informace o těchto možnostech naleznete v tématu Možnosti příkazového řádku pro publikování výsledků testů.
/testcontainer
/testcontainer:[ Název souboru ]
Kontejner testu je soubor, který obsahuje testy, které chcete spustit. Například pro seřazené testy je kontejnerem testu soubor .orderedtest, který definuje seřazený test. Pro testování částí se jedná o sestavení vytvořené z testovacího projektu obsahujícího zdrojové soubory testování částí.
Poznámka
Pro testování částí se jedná o sestavení, které obsahuje testovací kód, a nikoli o sestavení obsahující kód aplikace, kterou testujete.Například pokud vaše řešení obsahuje projekt s názvem BankAccount a odpovídající testovací projekt s názvem BankAccountTest, zadejte /testcontainer:BankAccountTest.dll.
Poznámka
Protože soubor metadat také uvádí testy, které lze spustit, nesmíte zadat možnosti /testcontainer i /testmetadata v jednom příkazovém řádku.Tím by byly nejednoznačné a mohlo by dojít k chybě.
/testmetadata
/testmetadata:[ Název souboru ]
Chcete-li spustit testy v několika nádobách test, lze použít možnost /testmetadata.
Soubor metadat test je vytvořen pro vaše řešení při vytváření seznamů testů pomocí okna Editor seznamu testů. Tento soubor obsahuje informace o všech testech uvedených v okně editoru seznamu testů. Jedná se o všechny testy, které existují ve všech testovacích projektech v řešení.
Soubor metadat testu je soubor XML, který je vytvořen ve složce řešení. Tento soubor je zobrazen v průzkumníkovi řešení pod uzlem Položky řešení. Testovací soubor metadat má příponu .vsmdi a je přidružen k oknu Editor seznamu testů. To znamená, že pokud dvakrát kliknete na soubor .vsmdi v Průzkumníku Windows (nebo v Průzkumníku souborů), soubor otevře sadu Visual Studio i s obsahem. Všechny testy v testovacích projektech řešení se zobrazí v okně Editor seznamu testů.
Soubor metadat test můžete změnit pouze tím, že změny, které budou použity v okně Testovat editoru seznamu, jako je vytváření nebo odstraňování testy nebo změna vlastností testu.
Poznámka
Protože kontejner testu obsahuje testy, které lze spustit, nesmíte zadat možnosti /testcontainer i /testmetadata v jednom příkazovém řádku.Tím by byly nejednoznačné a mohlo by dojít k chybě.
Používáte-li /testmetadata možnost, doporučujeme, abyste určili specifické testy ke spuštění pomocí /test možnost nebo /testlist možnost nebo obojí.
/testlist
/testlist:[ Cesta k seznamu testu ]
Parametr /testlist je seznam testů (vycházející ze souboru metadat testů), které mají být spuštěny. Chcete-li spustit testy, které jsou obsaženy ve více seznamech testů, použijte několikrát možnost /testlist. Všechny objednané testy v seznamu testování se spustí.
Poznámka
Možnost /testlist lze použít pouze v případě, že použijete také možnost /testmetadata.
Možnost /testlist a /test lze použít společně. Jedná se o ekvivalent pro výběr seznamu testu a současně jednoho nebo více testů v okně Editor seznamu testů a výběrem možnosti Spustit testy.
/category
/category:[ testovat filtr kategorie ]
Použití /category možnosti určíte, jaké kategorie test spustit.
Poznámka
Pokud chcete použít možnost /testcontainer, je nutné použít možnost /category.
Možnost /category lze použít pouze jednou pro každý příkazový řádek, ale ve filtru testové kategorie můžete zadat více testových kategorií. Filtr kategorií testů se skládá z jednoho nebo více názvů kategorií testů oddělených logickými operátory &, |, !, &!. Logické operátory & a | nelze používat společně za účelem vytvoření filtru kategorie testů.
Příklad:
/category:group1 spustí testy v kategorii testu "skupina 1".
/category:"group1&group2" spuštění testů, které jsou v testovací kategorie "skupina 1" a "skupině 2." Testy, které jsou pouze v jedné z kategorií zadaný test se nespustí.
/category:"group1|group2" spustí testy, které jsou v kategorii testu "skupina1" nebo "skupina2". Budou spuštěny také testy, které jsou v obou kategoriích.
/category:"group1&!group2" spuštění testů z testovací kategorie "skupina 1", která nejsou uvedena v kategorii testovací "skupině 2". Test, který je v kategorii test "skupina 1" a "skupině 2", budou spuštěny.
Poznámka
Pokud se filtr skládá z jedné kategorie, jako například /category:group1, není nutné filtr uzavírat mezi uvozovky.Nicméně pokud filtr odkazuje na více než jednu kategorii, například /category:"group1&group2", musí filtr být uzavřen mezi uvozovky.
/test
/test:[ Název testovacího ]
Pomocí možnosti /test můžete určit spuštění jednotlivých testů. Chcete-li spustit více testů, několikrát použijte možnost /test.
Poznámka
Můžete použít /test možnost buď /testcontainer možnost nebo s /testmetadata možnost, nikoli však obojí.
Možnost /testlist a /test lze použít společně. Jedná se o ekvivalent pro výběr seznamu testu a současně jednoho nebo více testů v okně Editor seznamu testů a výběrem možnosti Spustit testy.
Řetězec, který zadáte s možností /test je použít tak, aby byly nalezeny odpovídající názvy testů buď v kontejneru testů nebo v souboru metadat testů. To znamená, že můžete zadat více testů pomocí jedné hodnoty pro /test. Například zadání /test:ittest vyprodukuje shody pro testy s názvem DebitTest a CreditTest, protože oba názvy testů obsahují podřetězec "ittest".
Poznámka
Hodnota, která jste zadali, s /test možnost je testován vůči nejen název testu, ale také cestu k zkoušky, jak je vidět v Průzkumníku řešení, nebo s testování částí a jejich plně kvalifikovaný název.
Postupujte podle dva příklady využití:
Příklad testování částí: Soubor UnitTest1.cs v projektu TestProject2 obsahuje testování částí s názvem TestMethod1. Určení hodnoty ittest pro možnost /test by také byla odpovídající hodnota pro tento, protože řetězec je testován vůči plně kvalifikovanému názvu TestProject2.UnitTest1.TestMethod1 a řetězec ittest je také součástí řetězce UnitTest1.
Příklad obecná test: následující příkazový řádek spustí zadaný obecný test a ve výsledcích testování zobrazí úplná cesta k zkoušky.
mstest /testcontainer:"C:\Documents and Settings\<user name>\My Documents\Visual Studio\Projects\TestProject2\TestProject2\generictest1.generic" /test:testproject32\generic
/noisolation
/noisolation
Tuto možnost použijte, chcete-li spustit testy v rámci procesu MSTest.exe. Použití této možnosti nezpůsobí žádné další změny konfigurace testovacího běhu. Účelem této možnosti je zlepšit rychlost běhu testu. Zvyšuje však riziko pro spuštění testu jako celku, protože neošetřená výjimka vyvolaná testovacím kódem by způsobila selhání procesu MSTest.exe.
/testsettings
/testsettings:[ Název souboru ]
Tuto možnost použijte, chcete-li určit soubor nastavení testu. Například: /testsettings:local.Testsettings
Soubor s nastavením testu můžete určit jinými způsoby, jako např. s parametrem /testmetadata. Pravidla, která řídí specifikaci souborů nastavení běhu, jsou zde popsány.
Pokud použijete /testsettings možnost, soubor, který určuje se použije, zda je také použít /testmetadata možnost.
Pokud použijete /testmetadata možnost tak, aby odkazoval na soubor metadat, který určuje soubor nastavení aktivní test, který porovnává soubor nastavení bude použit, pokud je velmi riskantní používat /testsettings možnost.
Pokud nepoužijete možnost /testsettings a také nezadáte soubor nastavení testu v souboru metadat testu, průběh testu použije výchozí souboru nastavení testu.
Poznámka
Další informace o testovací nastavení soubory, naleznete v části Vytváření nastavení testů pro automatizované systémové testy pomocí nástroje Microsoft Test Manager.
/runconfig
/runconfig:[ Název souboru ]
Poznámka: Tento parametr příkazového řádku je zachován z důvodu kompatibility s předchozími verzemi sady Visual Studio. Konfigurace testovacích běhů byly nahrazeny nastavením testů v sadě Visual Studio Premium.
Tuto možnost použijte, chcete-li určit konfigurační soubor běhu. Například: /runconfig:localtestrun.Testrunconfig
Konfigurační soubor spuštění můžete určit jinými způsoby, jako např. s parametrem /testmetadata. Pravidla, která řídí specifikaci konfiguračních souborů běhu, jsou zde popsány.
Pokud použijete /runconfig možnost, soubor, který určuje se použije, zda je také použít /testmetadata možnost.
Pokud použijete /testmetadata možnost tak, aby odkazoval na soubor metadat, která určuje aktivní běhu konfigurační soubor, který spustit konfigurační soubor bude použit, pokud je velmi riskantní používat /runconfig možnost.
Pokud je velmi riskantní používat /runconfig možnost a můžete také nezadávejte spuštění konfiguračního souboru v souboru metadat test, testovacího běhu použije výchozí spustit konfigurační soubor.
/resultsfile
/resultsfile:[ Název souboru ]
Pomocí této možnosti můžete uložit výsledky testů do pojmenovaného souboru. Příklad: /resultsfile:testResults.trx.
/usestderr
/usestderr
Pomocí této možnosti způsobí, že má být zapsán do standardní chyby následující informace:
Testy s výsledkem Nezdařilo se, Přerušeno, Chyba, Vypršení časového limitu, |Nespustitelné nebo Neprovedeno.
Spusťte chyby na dané úrovni.
Chyby při analýze argumentů příkazového řádku.
Spusťte souhrn po selhání výsledek testovacího běhu.
Bez této možnosti je veškerý výstup odeslán do standardního výstupu.
/detail
/detail:[ id vlastnosti ]
Tato možnost slouží k zobrazení dalších vlastností testovacího případu, pokud existuje. Můžete předat více než jednu instanci možnosti /detail, kdy má každá v daném příkazovém řádku pouze jedno ID vlastnosti. Následují platná ID vlastností pro možnost /detail:
adaptér |
id |
projectrelativepath |
computername |
je automatizovaný |
readonly |
debugtrace |
odkaz |
spoolmessage |
popis |
longtext |
stderr |
displaytext |
název |
stdout |
doba trvání |
outcometext |
úložiště |
errormessage |
vlastník |
testcategoryid |
errorstacktrace |
parentexecid |
testname |
executionid |
priorita |
testtype |
skupiny |
projectname |
traceinfo |
Poznámka
Konkrétní výběr identifikátorů vlastností (ID), které lze použít s parametrem /detail, se liší podle typu testu.Proto je tento seznam pouze přibližný.Zejména pokud používáte vlastní typy testů se bude výběr vlastností lišit.Chcete-li zjistit, která propertyID můžete použít, zkontrolujte soubor s výsledky testu vytvořený spuštěním testu.Další informace o testování výsledků soubory, naleznete v tématu Postupy: Uložení a otevření výsledků výkonu webu a zátěžového testu ve Visual Studiu.
Jestliže některá vlastnost existuje pro zadaný testovací případ, její informace bude zahrnuta do souhrnu výsledků výstupu.
Například příkazový řádek:
mstest /testcontainer:Errors.dll /detail:testtype
vytvoří následující výstup, který obsahuje informace o typu testu:
...
Results Top Level Tests
-------- -----------------
Inconclusive TestProject2.BankAccountTest.CreditTest
[testtype] = Unit Test
...
Viz také
Reviewing Test Results in Microsoft Test Manager
Spuštění automatizovaných testů z příkazového řádku