【发布时间】:2012-07-18 15:45:39
【问题描述】:
在我的应用程序中定义的一堆特定路由中,我使用默认路由来映射所有剩余的无参数路由:
routes.MapRoute("Default", "{controller}/{action}", new { controller = "calendar", action = "list" });
这样,我获得了例如以下路由:
- ~/customer/add -> 控制器 = 客户,操作 = 添加
- ~/customer -> 控制器 = 客户,操作 = 列表
- ~/ -> 控制器 = 日历,操作 = 列表
整个路由部分都经过单元测试(使用Phil Haack's method),因此我检查“~/customer” URL 是否确实会拆分为 controller = “customer” 和 action = “list”。
问题是,如果我删除一个控制器或一个动作,测试将保持绿色,因为路由仍然成功地被默认路由映射。
不知何故,如果目标控制器或操作无效,我希望我的测试失败。有没有办法在 UnitTest 级别做到这一点?
谢谢!
【问题讨论】:
标签: asp.net-mvc unit-testing routes