0

私のアプリケーションで定義された一連の特定のルートの中で、デフォルト ルートを使用して、残りのすべてのパラメーターなしのルートをマップします。

routes.MapRoute("Default", "{controller}/{action}", new { controller = "calendar", action = "list" });

これにより、たとえば次のルーティングを取得します。

  • ~/customer/add -> コントローラー = 顧客、アクション = 追加
  • ~/顧客 -> コントローラー = 顧客、アクション = リスト
  • ~/ -> コントローラー = カレンダー、アクション = リスト

"~/customer" URL が実際に controller = "customer" と action = "list" に分割されるかどうかを確認するように、ルーティング部分全体が ( Phil Haack の方法を使用して) 単体テストされます。

問題は、コントローラーまたはアクションを削除すると、ルートがデフォルト ルートによって引き続き正常にマップされるため、テストが緑色のままになることです。

どういうわけか、対象のコントローラーまたはアクションが無効な場合にテストが失敗するようにしたいと思います。UnitTestレベルでこれを行う方法はありますか?

ありがとう!

4

1 に答える 1

1

MvcContrib を使用してそれを実現できます

ルート テストhttp://mvccontrib.codeplex.com/wikipage?title=TestHelper#Examplesの例を参照してください。

于 2012-07-18T17:25:05.113 に答える