コンテキスト管理
各 TestContext は、担当するテストインスタンスのコンテキスト管理とキャッシュサポートを提供します。テストインスタンスは、構成された ApplicationContext へのアクセスを自動的に受け取りません。ただし、テストクラスが ApplicationContextAware インターフェースを実装する場合、ApplicationContext への参照がテストインスタンスに提供されます。AbstractJUnit4SpringContextTests および AbstractTestNGSpringContextTests は ApplicationContextAware を実装しているため、ApplicationContext へのアクセスを自動的に提供することに注意してください。
@Autowired ApplicationContext
同様に、テストが
|
TestContext フレームワークを使用するテストクラスは、特定のクラスを継承したり、特定のインターフェースを実装してアプリケーションコンテキストを構成したりする必要はありません。代わりに、構成はクラスレベルで @ContextConfiguration アノテーションを宣言することで実現されます。テストクラスがアプリケーションコンテキストリソースの場所またはコンポーネントクラスを明示的に宣言しない場合、構成された ContextLoader は、デフォルトの場所またはデフォルトの構成クラスからコンテキストをロードする方法を決定します。コンテキストリソースの場所とコンポーネントクラスに加えて、アプリケーションコンテキストは、アプリケーションコンテキスト初期化子を通じて構成することもできます。
以下のセクションでは、Spring の @ContextConfiguration アノテーションを使用して、XML 構成ファイル、Groovy スクリプト、コンポーネントクラス(通常 @Configuration クラス)、またはコンテキスト初期化子を使用して、テスト ApplicationContext を構成する方法について説明します。または、高度なユースケース用に独自のカスタム SmartContextLoader を実装および構成できます。