Я немного озадачен тем, как mstest.exe обрабатывает файл app.config тестовой DLL.
Экспериментальный проект 1:
Тривиальная нетестовая DLL. (Он ничего не делает, кроме как читает и печатает значение параметра приложения из своего собственного файла app.config.)
Основной файл EXE, который вызывает библиотеку DLL для печати своего значения конфигурации.
Экспериментальный проект 2:
DLL модульного тестирования, которая содержит только один метод тестирования для чтения значения параметра приложения из его собственного файла app.config и записи его в файл.
Я использую mstest.exe для вызова DLL модульного теста.
Результат:
Для 1. Значение конфигурации DLL не печатается.
Для 2. Собственное значение конфигурации DLL успешно считывается и записывается в файл.
Итак, есть ли что-то особенное в mstest.exe ?
Спасибо.
Я использую SOS.dll для отладки через мою DLL модульного теста. Я обнаружил, что для каждой из DLL модульного теста создается отдельный домен приложений. И эти домены приложений отличаются от тех, которые называются vstesthost.exe . Я считаю, что конфигурация специфична для домена приложения . Mstest.exe создаст домен приложения для каждой тестовой библиотеки DLL и загрузит свой собственный файл конфигурации в домен приложения, соответственно.
Надеюсь, кто-нибудь сможет дать более уверенное объяснение.
Как загрузить файл конфигурации в домен приложений?
- чтобы загрузить файл конфигурации в домен приложений, используйте это:
AppDomainSetup ad2setup = new
AppDomainSetup ();
ad2setup.ConfigurationFile = @ "config
путь к файлу ";