0

如果我正确理解了该示例,则 MvcContrib TestHelper 对映射到特定控制器的路由进行了强类型测试。不利的一面是,如果我理解了这个例子,被测试的路由不是来自 global.asax 文件;相反,它来自测试设置。

相比之下,“Pro ASP.NET MVC3 Framework”一书共享了路由测试助手,它们实际上利用了 global.asax 文件中的路由。然而,这些助手对于特定控制器来说不是强类型(甚至是松散类型):

    [TestMethod]  //sample from the book...
    public void TestIncomingRoutes() {     
        // check for the URL that we hope to receive     
        TestRouteMatch("~/Admin/Index", "Admin", "Index"); 
    }

我想要两全其美。有没有人链接到帮助代码的链接(1)明确标识特定控制器,(2)使用 global.asax 中的路由进行测试,(3)没有与 Rhino Mocks 结婚 - 因为我更喜欢 MOQ。

谢谢。

4

1 回答 1

0

您似乎想测试您的 HttpApplication 子类(global.asax.cs 代码)以确保它调用代码来注册路由。我不确定这是否真的有必要,因为如果你不这样做,很明显没有任何效果。OTOH,MvcContrib 允许您测试您想要的 URL 是否实际映射到某些东西,如果您仔细设计您的 url 以使其对 SEO 友好,这将具有很大的价值。这是值得测试的,IMO。

于 2012-04-20T21:02:22.410 回答