NUnit没有读取配置文件

时间:2012-09-07 09:04:02

标签: vb.net nunit-2.5

我为.net应用程序编写了一个NUnit测试。当我运行NUnit时,它不会从配置文件中读取连接字符串值。尝试了许多解决方案并取得了成功,例如

1. adding <assembly name>.dll.config file in the path where NUnit loads the dll. 
2. Adding the configuration settings in NUnit.exe.config/NUnit.gui.config

即使在VSNunit中运行,我也无法读取配置设置。 如果有人给我一个解决方案并拯救我,我将非常感激。

3 个答案:

答案 0 :(得分:0)

我假设

  • 正在测试的装配:SomeNameSpace.MyClassLib
  • NUnit装配单元测试:SomeNameSpace.MyClassLib.Test

试试这个:

  1. 确保您已将app.config复制到NUnit Test DLL类库(即项目SomeNameSpace.MyClassLib.Test)。

  2. 构建您的NUnit项目(例如,到SomeNameSpace.MyClassLib/bin/debug),并确保以下内容位于bin \ debug(或release)目录中

    • 要测试的装配,
    • NUnit Test DLL和
    • 配置(SomeNameSpace.MyClassLib.Test.config
    • 您的dll测试所需的任何其他程序集。
  3. 在NUnit GUI项目编辑器的Xml视图中编辑NUnit项目(项目|编辑,或者只需在记事本中编辑它),并确保测试程序集(MyClassLib.Test.dll)和配置文件名与您的appbase相关

  4. e.g。

    <NUnitProject>
      <Settings activeconfig="Debug" processModel="Default" 
                domainUsage="Default"
                appbase="C:\Temp\MyProject\MyClassLib.Test" />
      <Config name="Debug" binpathtype="Auto" 
              configfile="bin\Debug\MyClassLib.Test.dll.config">
        <assembly path="bin\Debug\MyClassLib.Test.dll" />
      </Config>
      <Config name="Release" binpathtype="Auto" />
    </NUnitProject>
    

答案 1 :(得分:0)

将app.config文件添加到测试项目并在其中添加配置。

然后你必须告诉nunit使用什么配置,因为默认情况下它不会选择app.config。

More information on how to set this up屏幕截图。

答案 2 :(得分:0)

我被困在一个类似的问题上一段时间了。我们还需要了解如何加载程序集,基于配置文件的命名更改(除非您使用设置中的显式配置文件)。如上所述:

http://www.nunit.org/index.php?p=configFiles&r=2.2.10

如果正在加载单个程序集,则会为配置文件指定具有config扩展名的程序集文件的名称。例如,用于运行nunit.tests.dll的配置文件必须命名为nunit.tests.dll.config,并且与dll位于同一目录中。

如果正在加载NUnit项目,配置文件将使用项目文件的名称,并将扩展名更改为config。例如,项目AllTests.nunit将需要一个名为AllTests.config的配置文件,该文件与AllTests.nunit位于同一目录中。加载Visual Studio项目或解决方案时遵循相同的规则。