@WebAppConfiguration

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

次の例は、@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 を参照してください。