2012-04-20 56 views
0

如果我理解正确the example,MvcContrib TestHelper都有一个路由映射到一个特定的控制器强类型的测试。另一方面,如果我理解这个例子,那么被测试的路由不是来自global.asax文件;它来自测试设置。强类型路由测试

相反,这本书“临ASP.NET MVC3框架”股份路线测试助手,实际上做利用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。

谢谢。

回答

0

好像你想测试你的HttpApplication的子类(代码的global.asax.cs),以确保它调用代码以注册的路由。我不确定这是否真的有必要,因为如果你不这样做,很显然没有任何工作。 OTOH,MvcContrib允许你测试你想要的URL实际上映射到什么东西,如果你仔细设计了你的网站以便搜索引擎优化,那么它具有很大的价值。这是值得测试的,IMO。