6

これは、NServiceBusハンドラーに依存関係を挿入してテストする方法です。

Test.Handler<YourMessageHandler>()
  .WithExternalDependencies(h => h.Dependency = yourObj)

http://nservicebus.com/UnitTesting.aspx

ただし、これは、依存関係オブジェクトの参照が公開されている必要があることを意味します。それをプライベート読み取り専用に保ち、コンストラクター内に割り当てて、実装がハンドラーコンストラクターのみを通過するようにする方法はありますか?

ありがとう

4

1 に答える 1

5

次の構文を使用して、コンストラクターインジェクションを使用できます。

 Test.Handler<YourMessageHandler>(bus => new YourMessageHandler(dep1, dep2))

dep1とdep2は、おそらく、モックフレームワークが作成したスタブまたはモックの一部にすぎません。

--ここからUdiDahanによって更新されました:

Test.Busを介してモックバスインスタンスにアクセスできます。

于 2012-06-08T21:48:07.250 に答える