@WebAppConfiguration

@WebAppConfiguration は、統合テスト用にロードされた ApplicationContext が WebApplicationContext であることを宣言するために使用できるクラスレベルのアノテーションです。テストクラスに @WebAppConfiguration が存在するだけで、Web アプリケーションのルートへのパス(つまり、リソースベースパス)に "file:src/main/webapp" のデフォルト値を使用して、WebApplicationContext がテスト用にロードされます。リソースベースパスは、テストの WebApplicationContext の ServletContext として機能する MockServletContext を作成するためにバックグラウンドで使用されます。

次の例は、@WebAppConfiguration アノテーションの使用方法を示しています。

  • Java

  • Kotlin

@ContextConfiguration
@WebAppConfiguration (1)
class WebAppTests {
	// class body...
}
1@WebAppConfiguration アノテーション。
@ContextConfiguration
@WebAppConfiguration (1)
class WebAppTests {
	// class body...
}
1@WebAppConfiguration アノテーション。

デフォルトをオーバーライドするには、暗黙の value 属性を使用して、異なるベースリソースパスを指定できます。classpath: と file: の両方のリソースプレフィックスがサポートされています。リソースプレフィックスが指定されていない場合、パスはファイルシステムリソースであると見なされます。次の例は、クラスパスリソースを指定する方法を示しています。

  • Java

  • Kotlin

@ContextConfiguration
@WebAppConfiguration("classpath:test-web-resources") (1)
class WebAppTests {
	// class body...
}
1 クラスパスリソースの指定。
@ContextConfiguration
@WebAppConfiguration("classpath:test-web-resources") (1)
class WebAppTests {
	// class body...
}
1 クラスパスリソースの指定。

@WebAppConfiguration は、単一のテストクラス内またはテストクラス階層内で、@ContextConfiguration と組み合わせて使用する必要があることに注意してください。詳細については、@WebAppConfiguration javadoc を参照してください。