اختبار طرق ASP.NET MVC باستخدام MVC Contrib
-
18-09-2019 - |
سؤال
أحاول إعداد اختبارات تعيين الطريق باستخدام MVC المساهمة كما هو موضح في اختبار طرق 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 الخاص بي.
من وظيفة بلوق:
كما يفترض أنك تقوم بتعيين طرقك في كائن RouteCollection ASP.NET MVC.
كيف أؤكد أنني أفعل ذلك؟ أنا أستخدم Routes.Maproute داخل MVCApplication.registerroutes طريقة في رمز Global.asax خلف. هل هناك شيء آخر يجب القيام به لتعيين هذا الأمر بشكل صحيح؟
يحرر: ربما يجب أن أذكر أنني جديد في اختبار الوحدة. لقد كنت أطرح تعلم ذلك لفترة طويلة، وهذا يبدو وكأنه مكان جيد للبدء في أي.
المحلول
يحاول:
MvcApplication.RegisterRoutes(RouteTable.Routes);
بدلا من:
Dim routes = New RouteCollection
myMvcApp.MvcApplication.RegisterRoutes(routes)