Skip to content

Environment

Andreas Willich edited this page Jul 24, 2019 · 10 revisions

The <Environment> element defines your target platform environment. The following attributes are available:

Attribute Required/Optional Description
framework Optional The .NET framework in use. SpecFlow+ determines which CLR (Command Language Runtime) version to use to execute the tests based on this setting:
Net35: .NET 3.5 - CLR 2.0
Net40: .NET 4.0 - CLR 4.0
Net45: .NET 4.5 - CLR 4.0
Default: CLR 4.0 (default)
platform Optional The target platform architecture: x86, x64 or Default (the setting under Test | Test Settings | Default Processor Architecture in Visual Studio)
testThreadIsolation Optional Determines the level of thread isolation.

Possible values (SpecFlow+ Runner 3): Process (default), SharedAppDomain.

Possible values (SpecFlow+ Runner < 3): AppDomain (default), SharedAppDomain (from version 1.4) or Process.
apartmentState Optional Sets the apartment state used to execute the tests. Possible values:
STA: Single Threaded Apartment. Use this if your application is not thread-safe
MTA: Multi-Threaded Apartment
Unknown: The ApartmentState is not set (default); tests run in same thread as SpecFlow+
Note: Setting the apartmentState property does not set the test thread apartment state on Linux and OSX. ApartmentStates are not supported on non-Windows systems because COM interop is only available on Windows. Please refer to Microsoft's documentation for more information.
Clone this wiki locally