将NUnit添加到ASP.NET MVC测试框架的选项中

时间:2020-03-05 18:41:47  来源:igfitidea点击:
  • 我已经安装了nUnit。
  • 我已经安装了VS2008 Team Edition。
  • 我已经安装了ASP.Net MVC Preview 4(Codeplex)。

创建新的MVC项目时,如何使Visual Studio向我展示nUnit作为测试框架?在这一点上,我仍然只能选择Microsoft测试框架。

更新:我安装了nUnit 2.5,但仍然没有成功。从我发现的Googling看来,我似乎需要为测试项目创建模板,以便将它们显示在"创建单元测试项目"中。我以为模板可以随时用于nUnit,xUnit,MBUnit等。 al。另外,看起来我需要创建注册表项。有人有其他信息吗?

更新:我通过研究确定了答案,并将其发布在下面。

解决方案

回答

请安装Testdriven.net以将NUnit与Visual Studio集成。 MbUnit和更高版本的NUnit也包含用于单元测试的项目模板。

我们可以使用这些项目模板来创建测试项目,然后引用ASP.NET MVC项目并能够测试其代码。

回答

经过一堆研究和实验,我找到了答案。

  • 作为记录,当前的nUnit 2.5 Alpha版本似乎不包含Visual Studio 2008中测试项目的模板。
  • 我按照此处说明的说明进行操作,这些说明如何创建自己的项目模板,然后添加适当的注册表项,以使模板出现在MVC项目的"创建单元测试项目"对话框的下拉框中。

从高层次上讲,我们需要做的是:

  • 建立专案
  • 将其导出为模板(生成一个ZIP存档)
  • 将其从本地用户的模板文件夹复制到Visual Studio主模板测试文件夹
  • 执行devenv.exe / setup
  • 运行regedit并创建一些注册表项。

测试框架的选择非常简单!虽然,公平地说,MVC甚至还不是beta版。

毕竟,我确实获得了选择的框架(NUnit)出现在下拉框中。但是,仍然有一些不足之处:

  • 尽管正确创建了测试项目,但它没有自动具有对主MVC项目的项目引用。当使用Visual Studio单元测试作为测试项目时,它会自动执行此操作。
  • 我试图打开生成的ZIP文件并编辑MyTemplate.vssettings文件以及.csproj项目文件,以更正上述问题并调整事物名称,以使它们显得更加用户友好。由于某种原因,这是行不通的。无法通过WinZip或者Win-Rar更新生成的ZIP文件-每个文件都指示存档已损坏。每个都可以提取内容。因此,我尝试更新提取的文件,然后重新创建ZIP文件。 Visual Studio不喜欢它。

因此,我可能也应该阅读本章,其中讨论了为Visual Studio制作项目模板(也在我上面链接的博客文章中引用过)。从关于MVC与其他测试框架等的良好结合的所有讨论中,我认为注册第3方框架会更容易。

回答

伙计,他们的发行说明中列出了VS 2008项目模板。我猜这并不意味着他们已经将其与对话框集成了。

我在Gallio上使用了MbUnit,一切都像个魅力。我必须安装Gallio和MbUnit的Alpha,当我在发行说明中阅读上述内容时,我发现他们也实现了它。

只需留意nUnit网站上的未来Alpha版本即可。我相信他们会尽快实施它。我们也可以自己实现该功能并提交补丁。 :-)

回答

尽管他们没有与框架捆绑在一起,但是这里有一个链接链接,其中包含下载内容,可以自动为我们创建"带有moq的NUnit"的测试项目

(无法立即在我的计算机W7 Beta上工作,请确保我们使用提升的权限)