如果一个程序集包含一个 app.config 文件,只要它与通过 NUnit-Gui 执行的 NUnit 项目位于相同的目录中,ConfigurationManager
就会加载它。为了说明这一点,请考虑以下文件夹结构。
+ TestFolder
testProject.nunit
+ AssemblyAFolder
assemblyA.dll
assemblyA.dll.config
+ AssemblyBFolder
assemblyB.dll
assemblyB.dll.config
AssemblyA
和AssemblyB
都会调用ConfigurationManager
,如果我在NUnit-Gui中独立运行这些测试程序集,ConfigurationManager
将正确解析本地配置文件。然而,如果我将
testProject.nunit
加载到NUnit-Gui中(其中包含对AssemblyA
和AssemblyB
的引用),ConfigurationManager
将查找TestFolder
中的配置文件,无论当前正在执行哪个程序集。有没有办法指示NUnit重新加载应用程序配置为当前程序集目录中存在的配置?
下面是
testProject.nunit
的内容:<NUnitProject>
<Settings activeconfig="Debug" />
<Config name="Debug" binpathtype="Auto">
<assembly path="AssemblyAFolder\assemblyA.dll" />
<assembly path="AssemblyBFolder\assemblyB.dll" />
</Config>
</NUnitProject>