Konfigurera processarkitektur för ett enhetstest
Den här artikeln innehåller information om processarkitekturen som används för att köra enhetstester, hur du ställer in processarkitekturen och hur du kör enhetstester som en 64-bitarsprocess.
Den här artikeln innehåller information om hur du anger processarkitekturen för enhetstester och hur du kör enhetstester som en 64-bitarsprocess.
Konfigurera processarkitektur för MSTest-projekt
För MSTest-projekt som använder Visual Studio Testing Platform (VSTest) som testkörare matchar standardmålplattformen (processarkitekturen) operativsystemets arkitektur. Du kan åsidosätta det här beteendet för projekt som är inställda på Alla CPU- som målplattform med hjälp av antingen Test Explorer Settings, som du ser i följande bild, eller med hjälp av Test-menyn.
På menyn Test väljer du Processorarkitektur för AnyCPU Projects.
För projekt som använder MSTest som testkörare i stället för VSTest bestäms arkitekturen strikt av MSBuild- och körningsregler. Körbara filer genereras baserat på den önskade arkitekturen som specificeras i MSBuild- eller körningsinställningar. Du kan justera den här inställningen med hjälp av MSBuild-egenskaper (till exempel PreferNativeArm64), men inställningen Processorarkitektur för AnyCPU Projects inte kan användas för att ändra arkitekturen för dessa projekt.
Not
Du kan ange testkörare när du skapar ett enhetstestprojekt med hjälp av MSTest-projektmallen eller med hjälp av MSBuild-egenskaper. Mer information om skillnaden mellan MSTest- och VSTest-testlöpare finns i Microsoft.Testing.Platform och VSTest-jämförelse.
PreferNativeArm64 (MSTest)
När du använder egenskapen PreferNativeArm64
MSBuild föredrar projektet att köras internt i ARM64-arkitekturen om det är tillgängligt. Den här egenskapen gäller för projekt som genererar körbara filer och följer MSBuild-körningsregler. Den här inställningen ignoreras för TEST-löpare i Visual Studio Test Platform (VSTest) och gäller endast för MSTest-projekt med MSTest konfigurerat som testkörare.
Kör ett enhetstest som en 64-bitarsprocess
Om du har en 64-bitars dator kan du köra enhetstester och samla in information om kodtäckning som en 64-bitarsprocess.
Så här kör du ett enhetstest som en 64-bitarsprocess:
Om koden eller testerna kompilerats som 32-bitars/x86, men du nu vill köra dem som en 64-bitarsprocess, kan du kompilera om dem som Alla CPU-.
Tips
Kompilera testprojekten med konfigurationen Alla processorer för maximal flexibilitet. Sedan kan du köra på både 32-bitars- och 64-bitarsagenter. Det finns ingen fördel med att kompilera testprojekt med 64-bitars konfiguration, såvida du inte anropar kod som endast stöds på 64-bitars.
Ange att enhetstesterna ska köras som en 64-bitarsprocess.
På Visual Studio-menyn väljer du Testoch väljer sedan Processorarkitektur för AnyCPU-projekt. Välj x64 för att köra testerna som en 64-bitarsprocess.
-eller-
Ange
<TargetPlatform>x64</TargetPlatform>
i en .runsettings--fil. En fördel med den här metoden är att du kan ange grupper med inställningar i olika filer och snabbt växla mellan olika inställningar. Du kan också kopiera inställningar mellan lösningar. Mer information finns i Konfigurera enhetstester med hjälp av en .runsettings-fil.Notera
Inställningen Processorarkitektur för AnyCPU-projekt stöds inte i ett MSTest-projekt om du anger MSTest som testkörare i stället för VSTest.