请问如何初始化此集合(可能在[TestFixture]的[SetUp]函数中)?我应该将Web.config复制到哪里?
谢谢!
与其他帖子所建议的有点不同,NUnit测试的.config文件的位置比较复杂。在NUnit GUI Project/Edit对话框中有此设置。默认值都取决于您如何创建NUnit项目文件。
当您打开NUnit GUI并选择File/Open,然后选择.dll文件时,会设置一个新的项目,并使用相同名称的.config文件查找位于同一目录中的dll文件。因此,如果您加载\bin\debug\MyTests.dll
,默认情况下NUnit将查找\bin\Debug\MyTests.dll.config
。唯一的问题是,当您创建发布版构建时,需要创建单独的NUnit项目。
如果您通过选择File/NewProject来创建NUnit项目,则默认设置是查找与NUnit项目同名的配置文件。所以,如果您创建了\MyNUnitProject.nunit
,NUnit将默认查找\MyNUnitProject.config
。
您有可能已经使用Visual Studio创建了一个\App.config
文件,并将其放入测试dll的源文件夹中。当您构建测试项目时,该文件将被复制到\bin\Debug\MyTests.dll.config
或\bin\Release\MyTests.dll.config
,具体取决于所选的配置。如果您直接在NUnit中打开MyTest.dll,那么这将正常工作。但是,如果您创建了新的NUnit项目,则会遇到问题,因为它不会默认查找这些文件。
要解决此问题,您需要在NUnit GUI中打开Project/Edit对话框,并检查您是否有两个配置Debug和Release,以匹配您的 .Net 项目。完成后,可以选择Debug Configuration并将ApplicationBase设置为bin\Debug\
,将Configuration File Name设置为MyTests.dll.config
。对于Release配置也要做同样的设置,然后就可以了。
你可以使用 app.config 文件来管理库文件(我假设你的测试文件就在其中),并将它们放在里面。