VSTest Bridge-tillägg

Det här tillägget ger ett kompatibilitetslager med VSTest som tillåter testramverk som redan har implementerats med VSTest för att:

  • Kör enkelt med Microsoft. Testing.Platform (MTP) utan större omskrivning.
  • Stöd för både VSTest och MTP med samma implementering av testramverket.

Det här tillägget levereras som en del av NuGet-paketet Microsoft.Testing.Extensions.VSTestBridge .

Kompatibilitet med VSTest

Huvudsyftet med det här tillägget är att erbjuda en enkel och smidig uppgraderingsupplevelse för VSTest-användare genom att tillåta ett dubbelt läge där den nya plattformen är aktiverad och parallellt erbjuds ett kompatibilitetsläge så att de vanliga arbetsflödena kan fortsätta att fungera.

Stöd för Runsettings

Med det här tillägget kan du ange en VSTest .runsettings fil, men inte alla alternativ i den här filen hämtas av plattformen. Vi beskriver nedan de inställningar som stöds och inte stöds, konfigurationsalternativ och alternativ för de mest använda VSTest-konfigurationsalternativen.

När det är aktiverat av testramverket kan du använda --settings <SETTINGS_FILE> för att ange .runsettings-filen.

RunKonfigurations-element

Följande RunConfiguration-element stöds inte av MTP:

Nod Beskrivning Orsak/lösning
MaxCpuCount Den här inställningen styr parallellitetsnivån på processnivå. Använd 0 för att aktivera den maximala parallelliteten på processnivå. När MTP används med MSBuild avlastas det här alternativet till MSBuild. När en enda körbar fil körs har det här alternativet ingen betydelse för MTP.
Resultatkatalog Katalogen där testresultat placeras. Sökvägen är relativ till katalogen som innehåller .runsettings-filen. Använd kommandoradsalternativet --results-directory för att fastställa katalogen där testresultaten ska placeras. Om den angivna katalogen inte finns skapas den. Standardvärdet är TestResults i katalogen som innehåller testprogrammet.
TargetFrameworkVersion Den här inställningen definierar den ramverksversion eller ramverksfamilj som ska användas för att köra tester. Det här alternativet ignoreras. Egenskaperna <TargetFramework> eller <TargetFrameworks> MSBuild avgör programmets målramverk. Testerna finns i det slutliga programmet.
TargetPlatform Den här inställningen definierar arkitekturen som ska användas för att köra tester. <RuntimeIdentifier> avgör arkitekturen för det slutliga programmet som är värd för testerna.
BehandlaTestAdapterFelSomVarningar Undertrycker testadapterfel så att de blir varningar. MTP tillåter endast en typ av tester att köras från en enda assembly, och om testramverket eller andra delar av infrastrukturen inte kan läsas in blir det ett fel som inte kan åsidosättas, eftersom det innebär att vissa tester inte kunde upptäckas eller köras.
Testadaptrarvägar En eller flera sökvägar till katalogen där TestAdapters finns MTP använder inte begreppet testadaptrar och tillåter inte dynamisk inläsning av utvidgningar om de inte ingår i bygget och är registrerade i Program.cs, antingen automatiskt via byggmål eller manuellt.
TestCaseFilter Ett filter för att begränsa tester som ska köras. Från och med v1.6 stöds nu den här runsettings-posten. Innan den här versionen bör du använda kommandoradsalternativet --filter i stället.
TestSessionTimeout Tillåter användare att avsluta en testsession när den överskrider en viss tidsgräns. Det finns inget alternativ.
DotnetHostPath Ange en anpassad sökväg till dotnet-värden som används för att köra testvärden. MTP utför ingen ytterligare upplösning av dotnet. Det beror helt på hur dotnet hanterar sig, detta kan styras av miljövariabler som DOTNET_HOST_PATH.
Behandla Inga Tester Som Fel Avsluta med slutkod som inte är noll när inga tester identifieras. MTP fel som standard när inga tester identifieras eller körs i ett testprogram. Du kan ange hur många tester du förväntar dig att hitta i sammansättningen med hjälp av --minimum-expected-tests kommandoradsparameter, som standard är 1.

Datainsamlarelementet

MTP använder inte datainsamlare. I stället har den begreppet in-process- och out-of-process-tillägg. Varje tillägg konfigureras av respektive konfigurationsfil eller via kommandoraden.

Viktigast är hänga och krascha-tillägg samt kodtäcknings-tillägg.

LoggerRunSettings-elementet

Loggare i MTP konfigureras via kommandoradsparametrar eller med inställningar i kod.

Stöd för VSTest-filter

Det här tillägget ger också möjlighet att använda VSTest-filtreringsmekanismen för att identifiera eller köra endast de tester som matchar filteruttrycket. Mer information finns i avsnittet Filteralternativets detaljer eller för specifik information om ramverket, se sidan Köra selektiva enhetstester.

När det är aktiverat av testramverket kan du använda --filter <FILTER_EXPRESSION>.

TestRun-parametrar

Du kan skicka parametrar till testkörningen med hjälp av kommandoradsalternativet --test-parameter i formatet key=value. Det här alternativet kan anges flera gånger, en för varje parameter som ska anges.

Dessa parametrar kan sedan nås av testramverket i testkörningen: