我正在尝试使用 MVC Contrib 设置路由映射测试,如使用MVC Contrib测试 ASP.NET MVC 路由中所述
测试编译并执行,但它们总是失败并显示“URL 不匹配任何路由”消息。
我设置了另一个测试来尝试了解问题所在:
Public Sub TestIndexRoute()
Dim routes = New RouteCollection
myMvcApp.MvcApplication.RegisterRoutes(routes)
Assert.That(routes.Count > 0)
Assert.NotNull(routes("Default"), "Default route not found.")
Dim routeData = RouteTestingExtensions.Route("~/Author")
Assert.NotNull(routeData, "routeData is Nothing.")
Assert.That(routeData.Values("controller") = "Author")
End Sub
该测试在 上失败Assert.NotNull(routeData, "routeData is Nothing.")
,所以我知道尝试访问我的应用程序的 RouteCollection 的 MVCContrib 代码一定有问题。
来自博客文章:
它还假设您在 ASP.NET MVC RouteCollection 对象中设置您的路由。
我如何确认我正在这样做?我在后面的 Global.asax 代码中的 MvcApplication.RegisterRoutes 方法中使用 routes.MapRoute。还有其他事情要做来正确设置吗?
编辑:我可能应该提到我是单元测试的新手。我已经推迟学习它太久了,这似乎是一个很好的起点。