0

単体テストで SpringJUnit4ClassRunner を使用しており、テストは自動配線された Bean (モックされたサービス) に適切にアクセスできます。

サービスとも対話するジョブをテストする方法。ジョブには、自動配線された Bean もあります。

悲しいことに、テスト内からの "new Job().execute(...)" 呼び出し内では、Job 内の自動配線されたサービスは null です。

誰が何が間違っているのかを示唆/推測できますか!?

4

1 に答える 1

2

Spring によって作成および管理されていないインスタンスには、Spring によって依存関係が注入されません ( AspectJ マジックを適用しない限り)。

インスタンスはアプリケーションによって作成されるため、Jobその依存関係を手動で注入する必要があります。単にモックを設定するかJob、テスト クラスで必要な Bean を自動配線して、それらを新しく作成されたインスタンスに渡します。

于 2013-06-25T10:16:30.973 に答える