質問

私が春の統合テストを実行するためにAbstractTransactionalSpringContextTestsを使用しています。 春のコンテキストは一度だけロードされ、その後、すべてのテストが実行されます。 私は私のテストは、多くのクラスとパッケージになりたい場合、私は同じことをどのように行うのです。

もちろん、春のコンテキストは、一度クラスまたはパッケージあたりません(すべてのクラスとパッケージ内)のすべての私のテストのために一度だけロードされ、する必要があります。

役に立ちましたか?

解決

AbstractSingleSpringContextTestsのJavadocとして、 の(AbstractTransactionalSpringContextTestsのスーパークラスの1つ)状態:

  コンテキストを構成する春のリソース記述子を記述する通常のconfigの場所文字列配列:

このクラスは、コンテキストキーに基づいてコンテキストをキャッシュします。 setDirty()メソッドは、試験によって呼び出されていない限り、文脈があっても、この試験の異なるサブクラスを横切って、再ロードされません。あなたが休止状態を使用していて、マッピングをロードするのにかかる時間が問題になる場合、あなたの状況は、たとえば、構築するのが遅い場合、これは特に有益である。

あなたのコンテキストがキャッシュされるため、同じクラスローダ内で実行他のすべてのテストは(すなわち、 - 同じテスト実行中に実行されたすべてのあなたの他のテスト)、キャッシュされたコンテキストを使用します。あなたは、余分な設定を行う必要はありません - すでにあなたのために行われるべきです。あなたはこのことについてわからない、またはトラブルシューティングしたい場合は、単にorg.springframeworkのログをオンにすると、あなたはどのファイル、どのように、コンテキストがロードされているときに関する有用ログの多くが表示されるはずです。など。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top