0

したがって、MvcContrib TestHelpers は次のモック バージョンを作成します。

  • HttpContext
  • HttpRequest
  • HttpResponse
  • HttpSession
  • 温度データ
  • クエリ文字列
  • アプリケーションパス
  • パス情報

この種のコードを使用する場合の偽のコントローラー内

var _controller = new FooController();        
var _builder = new TestControllerBuilder();
_builder.InitializeController(_controller);

しかし、フェイク/モック サーバー オブジェクトを作成していないことに気付くでしょう。おそらく、そうではない正当な理由があります。しかし、SUT のメソッドがそれを使用し、もちろんテスト中に NULL を返すため、Server.MapPath() メソッドをスタブ化しようとしています。

TestHelpers は rhino モック (v3.5) を使用しており、私もそうです。メソッドをスタブ化する構文は知っていますが、メソッドをスタブ化できるように、サーバーのフェイク/モック オブジェクトをコントローラーに取得するにはどうすればよいですか?

4

1 に答える 1

0

HttpServerUtility クラスは封印されていますが、Microsoft は、モックに使用できる (および MVCContrib が使用する) 抽象 HttpServerUtilityBase を提供しています。Simon の問題は MVCContrib のバグによるものです。参照:ソリューションについては、MvcContrib テスト ヘルパーと Rhino Mocks 3.5 を使用して Server.MapPath をスタブ化しようとしています。

于 2010-07-15T13:29:08.550 に答える