2011-07-27 21 views
0

私はサードパーティのインターフェイスを模擬し、テスト中のコンポーネントとやりとりするサードパーティ製の拡張メソッドを呼び出す必要がある状況があります。実際に何が起きているかを見るためにMoqが記録した相互作用をトレースすることが可能かどうか疑問に思っています。それから、私は意味のある期待をコード化できることを望んでいます。私はこれがAPIドキュメントで実行できるという証拠は見当たらないが、技術がそこにあり、私が見つけていないところにおそらく晒されているようだ。Moqモックへの呼び出しをトレースできますか?

ありがとうございます!

答えて

0

私はこのような「再生」タイプの機能がMoqで利用できるとは考えていません。あなたは非常に単純なオブジェクトとのインタフェースを実装し、その後のすべてのあなたのデバッガと場所にブレークポイントを起動でき

  • ただし、通話のパターンを決定するための技術のカップルが気にしています実装されたメソッドとプロパティこれにより、呼び出されたものとどのような値をマッピングできるようになります。

  • モックを作成し、MockBehavior.Strictを使用して設定できます。その結果、(期待値が設定されていない限り)Mockはそのプロパティまたはメソッドのいずれかが呼び出されるたびに例外をスローします。これらの例外を1つずつキャッチして、あなたが行くにつれて期待を定義し、呼び出されているものの写真をゆっくり作り上げることができます。

どちらのシナリオも理想的ではありません。

そのような場合、これが機能を模擬するのに最適な場所であるかどうかを検討しましたか?代わりに、サードパーティの機能をすべて隠している代わりに、それを模倣する抽象レイヤーを導入できますか?

+0

良いアイデア。機能はIoC登録コードであり、私はこれ以上埋葬したくない。私は模擬する行動の種類がたくさんありませんので、一度それを把握したら、行きたいと思っています。 – jlew

+0

お楽しみください - 運が最高です。 – razlebe

関連する問題