タグ付けされた質問 「rhino-mocks」

9
ASP.Net MVCでコントローラーの要求をモックする方法は?
ASP.Net MVCフレームワークを使用したC#のコントローラーがあります public class HomeController:Controller{ public ActionResult Index() { if (Request.IsAjaxRequest()) { //do some ajaxy stuff } return View("Index"); } } 私はモックに関するいくつかのヒントを得て、以下とRhinoMocksでコードをテストしたいと思っていました var mocks = new MockRepository(); var mockedhttpContext = mocks.DynamicMock<HttpContextBase>(); var mockedHttpRequest = mocks.DynamicMock<HttpRequestBase>(); SetupResult.For(mockedhttpContext.Request).Return(mockedHttpRequest); var controller = new HomeController(); controller.ControllerContext = new ControllerContext(mockedhttpContext, new RouteData(), controller); var result …

5
Rhino Mocksのモックとスタブの違いは何ですか?
私はこれで十分に遊んでいないため、通常モックを使用しますが、この2つとRhino Mocksでどちらか一方をいつ使用するかにはどのような違いがあるのでしょうか。 更新: 私の質問への答えもアイエンデの言葉で見つかりました: スタブとモックの違い この記事でこれらの用語の実際の定義を理解できます。モックはスタブではありません。Rhino Mocksの視点からの違いに焦点を当てたいと思います。 モックは、期待を設定できるオブジェクトであり、期待されるアクションが実際に発生したことを確認します。スタブは、テスト対象のコードに渡すために使用するオブジェクトです。期待値を設定できるため、特定の方法で動作しますが、それらの期待値は検証されません。スタブのプロパティは自動的に通常のプロパティのように動作し、それらに期待を設定することはできません。 テスト中のコードの動作を確認したい場合は、適切な期待でモックを使用し、それを確認します。特定の方法で動作する必要があるが、このテストの焦点では​​ない値を渡すだけの場合は、スタブを使用します。 重要:スタブが原因でテストが失敗することはありません。

7
C#とRhinoMocksを使用したテスト駆動開発のベストプラクティス[終了]
現在のところ、この質問は私たちのQ&A形式には適していません。回答は事実、参考資料、または専門知識によって裏付けられることを期待していますが、この質問は、討論、議論、世論調査、または広範な議論を求める可能性があります。この質問を改善して再開できると思われる場合は、ヘルプセンターにアクセスしてガイダンスを入手してください。 8年前に閉鎖されました。 チームがテスト可能なコードを作成できるようにするために、C#コードベースをよりテストしやすくするためのベストプラクティスの簡単なリストを作成しました。(いくつかのポイントは、C#のモックフレームワークであるRhino Mocksの制限に言及していますが、ルールはより一般的に適用される場合もあります。)従うベストプラクティスはありますか? コードのテスト容易性を最大化するには、次のルールに従います。 最初にテストを記述し、次にコードを記述します。理由:これにより、テスト可能なコードを記述し、コードのすべての行でテストが記述されるようになります。 依存性注入を使用してクラスを設計します。理由:見えないものをモックしたりテストしたりすることはできません。 Model-View-ControllerまたはModel-View-Presenterを使用して、UIコードをその動作から分離します。理由:テストできない部分(UI)を最小限に抑えながら、ビジネスロジックをテストできるようにします。 静的メソッドまたはクラスを記述しないでください。 理由:静的メソッドを分離することは困難または不可能であり、RhinoMocksはそれらをモックすることができません。 クラスではなく、インターフェイスをプログラムします。理由:インターフェースを使用すると、オブジェクト間の関係が明確になります。インターフェイスは、オブジェクトがその環境から必要とするサービスを定義する必要があります。また、RhinoMocksやその他のモックフレームワークを使用してインターフェイスを簡単にモックすることができます。 外部の依存関係を分離します。理由:未解決の外部依存関係はテストできません。 モックするメソッドを仮想としてマークします。理由:RhinoMocksは非仮想メソッドをモックできません。
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.