假设我已经定义了一条路线:
routes.Add(new Route("Users/{id}", new MvcRouteHandler())
{
Defaults = new RouteValueDictionary(new { controller ="UserInfo", action = "UserInformation",
id = ""}),
});
那么,我将如何创建单元测试以确保在URL中显示Users / 123时,肯定会调用操作方法 UserInformation ,并将123作为参数?
我问这个的原因是因为我在指定RouteValueDictionary时输入了错误的名称,我可能会错误地按UserInformation的速度输入UserInformationss。反正有没有阻止这个?
答案 0 :(得分:3)
这是一篇关于单元测试自定义路线的文章:
答案 1 :(得分:2)
测试调用UserInformation动作并不重要。确保在指定URL时,“UserInformation”位于具有键“action”的路由值字典中,并且存在具有相应控制器名称的“controller”值,这一点非常重要。
如果是这样,MVC框架保证将调用UserInformation方法。您不需要通过单元测试来测试我们的代码,只需要您自己。如果我们的代码不正确,请告诉我们,我们将为代码添加单元测试。 :)