Я пытаюсь настроить тесты сопоставления маршрутов с помощью MVC Contrib , как описано в Тестирование маршрутов ASP.NET MVC с использованием MVC Contrib
Тесты компилируются и выполняются, но они всегда терпят неудачу с сообщением «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.")
, поэтому я знаю, что должна быть некоторая проблема с кодом MVCContrib, который пытается получить доступ к RouteCollection моего приложения.
Из блога:
Предполагается, что вы задали свои маршруты в объекте ASP.NET MVC RouteCollection.
Как мне подтвердить, что я это делаю? Я использую route.MapRoute в методе MvcApplication.RegisterRoutes в коде Global.asax. Есть ли что-то еще, чтобы настроить это правильно?
Редактировать: Я должен упомянуть, что я новичок в модульном тестировании. Я откладывал изучение этого слишком долго, и это казалось таким же хорошим местом для начала, как и любое другое.