Unit testing fails when listing DLLs in particular order, but only in 32 bit compiles

70 Views Asked by At

We have some unit tests in different DLLs. These DLLs house our main code as well, so they do have some dependency between them, though I don't think that the tests should cross the DLL boundary. However, we do a lot of /DELAYLOAD on the linker command line for a bunch of DLLs, but not directly between each other.

If we load the test using the command line:

vstest.console.exe dll1.dll dll2.dll /platform:x86 /UseVsixExtensions:true /inIsolation

it works, However, if we using the command line

vstest.console.exe dll2.dll dll1.dll /platform:x86 /UseVsixExtensions:true /inIsolation

it fails when it starts to execute the tests in dll1.dll.

The error message we get is:

Failed   dll1_test1
Error Message:
   Failed to set up the execution context to run the test

and repeats that message for all the tests in that DLL.

This doesn't seem to be an issue on the 64 bit builds though. It also doesn't occur when running all the tests in the VS IDE.

Does anyone know where to start looking to determine why the order matters for the 32 bit case?

0

There are 0 best solutions below