此版本仍在开发中,尚未被视为稳定版本。对于最新的稳定版本,请使用 Spring Framework 6.2.0! |
上下文管理
每TestContext
为测试实例提供上下文管理和缓存支持
它负责。测试实例不会自动获得对
配置ApplicationContext
.但是,如果测试类实现ApplicationContextAware
interface 中,引用ApplicationContext
供给
添加到测试实例中。请注意,AbstractJUnit4SpringContextTests
和AbstractTestNGSpringContextTests
实现ApplicationContextAware
因此,
提供对ApplicationContext
自然而然。
@Autowired ApplicationContext
作为实现
同样,如果您的测试配置为加载
使用 Dependency injection |
使用 TestContext 框架的测试类不需要扩展任何特定的
类或实现特定接口来配置其应用程序上下文。相反
配置是通过声明@ContextConfiguration
注解在
类级别。如果您的测试类未显式声明应用程序上下文资源
locations 或组件类中,配置的ContextLoader
确定如何加载
context 从默认位置或默认配置类。除了上下文
资源位置和组件类,也可以配置应用程序上下文
通过 Application Context Initializers 进行初始化。
以下部分解释了如何使用 Spring 的@ContextConfiguration
annotation 添加到
配置测试ApplicationContext
通过使用 XML 配置文件、Groovy 脚本、
组件类(通常@Configuration
类)或上下文初始值设定项。
或者,您可以实施和配置自己的自定义SmartContextLoader
为
高级用例。