@WebAppConfiguration
@WebAppConfiguration
是一个可以应用于测试类的注解,它声明为集成测试加载的
ApplicationContext
应该是一个 WebApplicationContext
。测试类上 @WebAppConfiguration
的存在
确保为测试加载 WebApplicationContext
,使用 "file:src/main/webapp"
的默认值作为
Web 应用程序根目录(即资源基本路径)的路径。资源基本路径在幕后用于创建
MockServletContext
,它作为测试的 WebApplicationContext
的 ServletContext
。
以下示例展示了如何使用 @WebAppConfiguration
注解:
- Java
-
@ContextConfiguration @WebAppConfiguration [id="CO1-1"][id="CO1-1"][id="CO1-1"](1) class WebAppTests { // class body... }
<1> `@WebAppConfiguration` 注解。
- Kotlin
-
@ContextConfiguration @WebAppConfiguration [id="CO2-1"][id="CO1-2"][id="CO2-1"](1) class WebAppTests { // class body... }
<1> `@WebAppConfiguration` 注解。
要覆盖默认值,您可以使用隐式 value
属性指定不同的基本资源路径。同时支持 classpath:
和 file:
资源前缀。
如果没有提供资源前缀,则假定路径是文件系统资源。以下示例显示了如何指定类路径资源:
- Java
-
@ContextConfiguration @WebAppConfiguration("classpath:test-web-resources") [id="CO3-1"][id="CO1-3"][id="CO3-1"](1) class WebAppTests { // class body... }
<1> 指定类路径资源。
- Kotlin
-
@ContextConfiguration @WebAppConfiguration("classpath:test-web-resources") [id="CO4-1"][id="CO1-4"][id="CO4-1"](1) class WebAppTests { // class body... }
<1> 指定类路径资源。
请注意,@WebAppConfiguration
必须与 @ContextConfiguration
结合使用,无论是在单个测试类中还是在测试类层次结构中。
有关更多详细信息,请参阅 @WebAppConfiguration
javadoc。