Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Toto rozšíření poskytuje vrstvu kompatibility se službou VSTest, která umožňuje testovací architektury, které jsou již implementovány pomocí VSTestu:
- Spusťte snadno Microsoft Testing Platform (MTP) bez zásadní úpravy.
- Podpora VSTest i MTP se stejnou implementací testovací architektury
Toto rozšíření se dodává jako součást balíčku Microsoft.Testing.Extensions.VSTestBridge NuGet.
Kompatibilita s VSTestem
Hlavním účelem tohoto rozšíření je nabídnout uživatelům VSTest snadné a bezproblémové prostředí upgradu tím, že umožňuje duální režim, ve kterém je nová platforma aktivována a paralelní kompatibilní režim je nabízen, aby mohly obvyklé pracovní postupy pokračovat.
Podpora nastavení spuštění
Toto rozšíření umožňuje poskytnout soubor VSTest .runsettings, ale ne všechny možnosti v tomto souboru jsou platformou využity. Níže popisujeme podporovaná a nepodporovaná nastavení, možnosti konfigurace a alternativy pro nejpoužívanější možnosti konfigurace VSTest.
Pokud je tato testovací architektura povolená, můžete k poskytnutí souboru --settings <SETTINGS_FILE> použít .runsettings.
Element RunConfiguration
MTP nepodporuje následující elementy RunConfiguration :
| Node | Popis | Důvod / alternativní řešení |
|---|---|---|
| MaxCpuCount | Toto nastavení řídí úroveň paralelismu na úrovni procesu. Pomocí 0 povolíte maximální paralelismus na úrovni procesu. | Pokud se s nástrojem MSBuild používá MTP, tato možnost se přesměruje do nástroje MSBuild. Při spuštění jednoho spustitelného souboru tato možnost nemá význam pro MTP. |
| ResultsDirectory | Adresář, do kterého se umístí výsledky testu. Cesta je relativní vzhledem k adresáři, který obsahuje soubor .runsettings. | Pomocí možnosti příkazového řádku --results-directory určete adresář, do kterého se mají výsledky testu umístit. Pokud zadaný adresář neexistuje, vytvoří se. Výchozí hodnota je TestResults v adresáři, který obsahuje testovací aplikaci. |
| TargetFrameworkVersion | Toto nastavení definuje verzi architektury nebo řadu rozhraní, která se má použít ke spouštění testů. | Tato možnost se ignoruje. Vlastnosti <TargetFramework> nebo <TargetFrameworks> MSBuild určují cílovou architekturu aplikace. Testy se hostují v konečné aplikaci. |
| TargetPlatform | Toto nastavení definuje architekturu, která se má použít ke spouštění testů. |
<RuntimeIdentifier> určuje architekturu konečné aplikace, která je hostitelem testů. |
| ZvažujChybyTestovacíhoAdapteruJakoVarování | Potlačí chyby testovacího adaptéru a změní je na upozornění. | MTP umožňuje spuštění pouze jednoho typu testů z jednoho sestavení a selhání načtení testovacího frameworku nebo jiných částí infrastruktury bude nepřeskočitelnou chybou, protože to značí, že některé testy nelze objevit ani provést. |
| TestovacíAdaptérCesty | Jedna nebo více cest k adresáři, kde se nachází TestAdapter | MTP nepoužívá koncept testovacích adaptérů a neumožňuje dynamické načítání rozšíření, pokud nejsou součástí sestavení, a nejsou zaregistrovány v Program.cs, buď automaticky prostřednictvím cílů sestavení, nebo ručně. |
| TestCaseFilter | Filtr pro omezení testů, které se spustí. | Od verze 1.6 se teď tato položka runsettings podporuje. Před touto verzí byste měli místo toho použít možnost příkazového řádku --filter. |
| `TestSessionTimeout` | Umožňuje uživatelům ukončit testovací relaci, když překročí daný časový limit. | Neexistuje žádná alternativní možnost. |
| DotnetHostPath | Zadejte vlastní cestu k hostiteli dotnet, který se používá ke spuštění testovacího hostitele. | MTP neprovádí žádné další řešení dotnetu. Záleží plně na tom, jak si dotnet sám poradí, což lze řídit pomocí proměnných prostředí, jako je DOTNET_HOST_PATH. |
| TreatNoTestsAsError | Ukončete s ukončovacím kódem jiným než nula, jestliže nejsou zjištěny žádné testy. | MTP způsobí chybu ve výchozím nastavení, pokud nejsou v testovací aplikaci nalezeny nebo spuštěny žádné testy. Počet testů, které očekáváte v sestavení, můžete nastavit pomocí --minimum-expected-tests parametru příkazového řádku, který má výchozí hodnotu 1. |
Element sběračů dat
MTP nepoužívá kolektory dat. Místo toho má koncept rozšíření v rámci procesu (in-process) a mimo proces (out-of-process). Každé rozšíření je nakonfigurováno příslušným konfiguračním souborem nebo příkazovým řádkem.
Nejdůležitější jsou rozšíření pro zablokování a rozšíření pro selhání a rozšíření pro pokrytí kódu.
Element „LoggerRunSettings“
Protokolovací nástroje v MTP se konfigurují prostřednictvím parametrů příkazového řádku nebo pomocí nastavení v kódu.
Podpora filtru VSTest
Toto rozšíření také nabízí možnost použít mechanismus filtrování VSTest ke zjišťování nebo spouštění pouze testů, které odpovídají výrazu filtru. Další informace najdete v části Podrobnosti o možnostech filtru nebo podrobnosti specifické pro architekturu najdete na stránce Spouštění selektivních testů jednotek.
Pokud je povolený testovací rámec, můžete použít --filter <FILTER_EXPRESSION>.
Parametry testovacího spuštění
Parametry můžete předat do spuštění testu pomocí volby příkazového řádku --test-parameter ve formátu key=value. Tuto možnost lze zadat vícekrát, jednu pro každý parametr, který se má nastavit.
K těmto parametrům pak může přistupovat testovací architektura v testovacím běhu:
- pro MSTest použijte Properties
- pro NUnit použijte TestContext.TestParameters