1
私は彼らの多くは参考になりました... MVCではモックについての多くの記事やブログを読んだが、私はまだいくつかの問題を持っている:モッキングのHttpContext(セッション)
このような問題の1つであることです私は、私のActionResultでセッションを使用する必要がありますが、私のテストでは、セッションにアクセスするとNullReferenceExceptionが発生します。このような
public ActionResult Index() { if (Session["Something"] == null) { Session.Add("Something", <smth>); } else { Session["Something"] = <smth>; } return redirect to action("Index2"); }
私のテストを見て:あなたはこのようなサイトからMVC-contrib TestHelper
このサンプルなどのツールを使用することができます
HomeController controller = new HomeController; var result = controller.Index() as ViewResult; Assert.AreEqual("Index2", result.ViewName);
これは、セッション値を使用する手動テストです...私はすべてのActionResultをテストする必要があります。セッションはテストのポイントではありません。私はこのアクションが提供するルート(アクション\ビュー名)を取る必要があります...そして、私はnullref例外を持っています。私は、Nullオブジェクトではないセッションを使用するための非開始アクションを与えるメソッドが必要です – AkmecNurik
@AkmecNurik TestHelperはこのNullReferenceの問題も解決し、TestControllerBuilderはMock実装を埋め込みます。 –
が試行されます。ありがとう – AkmecNurik