2009-10-20 67 views
1

我刚开始使用NUnit为我的asp.net web应用程序项目编写测试用例。WAP + NUnit + WebConfigurationManager引脚

一些用于访问数据库值的代码会从web.config文件的“configSections”下定义的“部分”中获取ConnectionString。

在Web浏览器上正常执行项目期间,此工作正常。但是当我通过测试用例访问相同的方法时,WebConfigurationManager.GetSection()总是返回null。

最初我也无法访问web.config的AppSettings部分,但是当我将web.config文件复制到BIN文件夹时,它得到了解决。但仍然无法获取“ConfigSection”中的“部分”。

请提出建议。

回答

1

默认情况下,NUnit将查找与包含测试的dll具有相同名称的配置文件。所以如果你有一些Tests.dll,NUnit会想拿起一些Tests.dll.config。所以对于标准的前缀,诀窍是复制你的App.config以匹配dll名称模式。我认为这也适用于网络应用程序。您可以将web.config复制到someTests.dll.config。但说实话,我通常不会编写需要进入配置的测试,所以我不确定。

+0

感谢您的帮助,但我也复制并将web.config文件重命名为bin目录,这就是appsettings部分如何开始为我工作。但我无法访问configSections。 – araaku 2009-10-20 11:02:18

+0

您是否尝试过使用'ConfigurationManager'而不是'WebConfigurationManager'?不知道为什么它会有帮助,但它可能值得一试。 – 2009-10-20 13:02:52

+0

ConfigurationManager也没有工作。 – araaku 2009-10-22 10:53:56