Moqを使用してVS2012で最初のユニットテストを書いています。
複数の入力パラメーターを受け取るオブジェクトを作成する必要があります (すべてがインターフェイスを介して渡されるわけではありません)。
例のためにコードを最小化しました。これが私がやろうとしていることです:
var mockLoopControl = new Mock<LoopControl>();
var LoopEngine = new LoopEngine(mockLoopControl.Object);
LoopControl
オブジェクトは複雑で、コンストラクターで使用される多くのメンバーがありますLoopEngine
。
たとえば、LoopEngine
コンストラクターはloopControl.ContextData
、再び多くのメンバーを持つオブジェクトで操作を実行します。
私の理解では、を使用して使用されるメンバーにデータを割り当てる必要がありますMock.Setup()
。たとえば、loopControl.ContextData
アプリケーションの実行時にオブジェクトのスナップショットを取得し、後で単体テストで使用することはできますか?
このような複雑なアーキテクチャの単体テストを作成する方法を理解できます。
私は自分自身を明確にしたことを願っています:)助けてくれてありがとう。
ダン