Модульное тестирование завершается неудачно при перечислении DLL в определенном порядке, но только в 32-битных компиляциях - PullRequest
0 голосов
/ 30 мая 2018

У нас есть несколько модульных тестов в разных DLL.Эти библиотеки DLL также содержат наш основной код, поэтому между ними есть некоторая зависимость, хотя я не думаю , что тесты должны пересекать границу библиотеки DLL.Тем не менее, мы выполняем много / DELAYLOAD в командной строке компоновщика для группы DLL, но не напрямую между собой.

Если мы загружаем тест с использованием командной строки:

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

это работает, однако, если мы используем командную строку

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

, это не удается, когда он начинает выполнять тесты в dll1.dll.

Сообщение об ошибке, которое мы получаем:

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

и повторяет это сообщение для всех тестов в этой DLL.

Хотя это не проблема для 64-битных сборок.Это также не происходит при запуске всех тестов в VS IDE.

Кто-нибудь знает, с чего начать, чтобы выяснить, почему порядок имеет значение для 32-битного случая?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...