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