31
  • 我已经安装了 nUnit。
  • 我已经安装了 VS2008 团队版。
  • 我安装了 ASP.Net MVC Preview 4 (Codeplex)。

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

更新:我安装了 nUnit 2.5,但仍然没有成功。从我在谷歌上搜索的内容来看,我似乎需要为测试项目创建模板,以便它们显示在“创建单元测试项目”中。我会认为模板可用于 nUnit、xUnit、MBUnit 等。人。此外,看起来我需要创建注册表项。有人有任何额外的信息吗?

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

4

4 回答 4

19

经过大量的研究和实验,我找到了答案。

  • 作为记录,nUnit 2.5 Alpha 的当前版本似乎包含用于 Visual Studio 2008 中测试项目的模板。
  • 我按照这里的说明创建自己的项目模板,然后添加适当的注册表项,使您的模板出现在 MVC 项目的“创建单元测试项目”对话框的下拉框中。

从高层次来看,你要做的是:

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

测试框架选择就这么简单!虽然,公平地说,MVC 还不是测试版。

毕竟,我确实让选择的框架(NUnit)显示在下拉框中。但是,仍有一些不足之处:

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

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

于 2008-08-22T21:02:27.777 回答
1

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

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

请留意 nUnit 的网站以了解未来的 alpha 版本。我相信他们很快就会实施。您也可以自己实现该功能并提交补丁。:-)

于 2008-08-22T23:57:06.033 回答
1

尽管他们没有与框架捆绑在一起,但这里有一个帖子链接,其中包含一个下载,可以为您自动创建“NUnit with moq”的测试项目NUnit with Moq

(在我的电脑 W7 Beta 上无法立即使用,请确保您使用提升的权限)

于 2009-04-23T19:13:26.320 回答
0

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

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

于 2008-08-21T20:46:00.320 回答