【问题标题】:adding a 3rd party test framework for ASP.NET MVC3 and Razor view engine为 ASP.NET MVC3 和 Razor 视图引擎添加第 3 方测试框架
【发布时间】:2011-02-19 03:08:16
【问题描述】:

希望将第三方测试框架(例如 NUnit 或 MbUnit)添加到 Visual Studio 2010 中 ASP.NET MVC3 类型项目的测试项目下拉列表中。

这在 ASP.NET MVC2 和之前的版本中有效,但 msdn 指令不准确且不起作用。在 HKEY_CURRENT_USER 中创建注册表项似乎每次 VS-2010 启动时都会删除这些键,HKEY_LOCAL_MACHINE 不遵循相同的树结构。

有谁知道如何在 ASP.NET MVC3 下添加第三方框架?

This resourcethis rant 不适用于 MVC3

【问题讨论】:

    标签: asp.net testing asp.net-mvc-3 nunit razor


    【解决方案1】:

    很遗憾听到它对你不起作用。关于每次 Visual Studio 启动时拥有 HKEY_CURRENT_USER 和丢失粘贴的密钥的问题,我希望您在此处阅读:All your RegKeys Are Belong To Us 最后它说:

    如果您在 10.0_Config 中编辑某个键,Visual Studio 将(很可能)在启动时将其删除。

    猜猜这就是您在编辑和启动时看到的内容。接下来是这样的建议 - 不确定 - 但是您是否启用了 UAC 并在 RANU(= 以普通用户身份运行)模式下运行 Visual Studio?这个链接:Developing Packages as a Normal User (or How I Learned to Love UAC) 出现了,Visual Studio 引入了一个特定的开关,它影响它查看不同的注册表位置:

    当使用 /RANU 开关(在这种情况下与 /rootsuffix Exp 一起)运行时,Visual Studio 将改为查看以下位置:

    包注册:HKEY_CURRENT_USER\Software\Microsoft\VisualStudio\9.0Exp\Configuration 用户设置:HKEY_CURRENT_USER\Software\Microsoft\VisualStudio\9.0Exp\UserSettings

    我想给你的最后一篇文章描述了 Visual Studio 的启动(注册表和 pkgdef 合并)例程:blogs.msdn.com/b/aaronmar/archive/2009/06/05/pkgdef-and-the- Experimental-instance-in-vs-2010.aspx [抱歉 - 只能发布 2 个链接]

    如果您可以向我提供有关安装程序的更多信息(UAC?还有其他要提及的),我将尝试提供可以解决此问题的软件包更新。奇怪的是,我在 Win 7 64 位上运行 VS2010 Ultimate - 安装程序工作正常。唯一的事情 - 我没有在 UAC 中运行 ;-)

    马库斯。

    【讨论】:

    • 同时我发布了一个扩展(可以通过 ExtensionManager 安装或通过VisualStudio-Gallery 下载)。该包取决于上面链接中提到的 PackageDefinition 文件。如果它适合你,也许你可以试试这个。
    【解决方案2】:

    这是一篇非常好的博文,解释了如何将 NUnit 作为另一个 3rd 方测试框架添加到 ASP.NET MVC 3(最高 RTM)项目的下拉列表中:

    这篇文章还提供了一个完整的包供您下载,其中包含所有必需的文件(安装批处理、注册表项和 Visual Studio 模板),以便您自己轻松设置。

    【讨论】:

    • 这篇博文与我在资源中提到的类似,但它仍然不起作用。首先,HKEY_LOCAL_MACHINE 结构不携带相同的树签名,建议的树结构仅显示在 HKEY_CURRENT_USER 层次结构中。上面显示的 MVC3 文件夹也放在 10.0_Config 密钥目录中。也许我遗漏了一些明显的东西,但不确定。我不想在这上面花太多时间,因为它确实适用于 MVC2 及之前的版本。
    • @baskint:根据博客文章中的 cmets,我相信它应该可以工作并且会对您有所帮助。还明确提到了 ASP.NET MVC 3 RTM。但是,我自己尝试了install.bat,不得不承认我也没有在 Visual Studio 中获得 NUnit 选项。我正在运行 Windows 7 x64 和 Visual Studio 2010 Premium。
    • 同意。我尝试了一台 Windows 7 x64 和 VS-2010 Ultimate,以及一台 Windows Server 2008 R2 和 VS-2010 专业版。每次 VS-2010 启动并且不显示 NUnit 选项(模板)时,我放置在 HKEY_CURRENT_USER 中的注册表项都会被清除。感谢您确认。
    • 链接指向的带有 NUnit Testproject 页面的 asp.net MVC 3 目前已失效
    【解决方案3】:

    我明白你想要做什么,但你从中得到的东西有点复杂。如果您根据使用的任何测试框架压缩项目模板并将其放入正确的文件夹中,则可以在创建后将模板化项目添加到初始 Mvc 3 解决方案中。它可能需要额外的 5 秒,而且您可以将它用于您可能想要测试的任何其他类型的解决方案。

    【讨论】:

    • 我的目标是显示下拉菜单显示其他测试模板(框架,如果你愿意的话)。同样,我在 MVC2 之前的版本中使用了此功能,但似乎不是 MVC3。不知道是什么坏了?
    猜你喜欢
    • 1970-01-01
    • 2012-06-24
    • 1970-01-01
    • 2011-03-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-03-23
    • 1970-01-01
    相关资源
    最近更新 更多