|
对于最新的稳定版本,请使用 Spring Framework 7.0.6! |
上下文管理
每个 TestContext 为其负责的测试实例提供上下文管理和缓存支持。测试实例不会自动获得对已配置 ApplicationContext 的访问权限。但是,如果测试类实现了 ApplicationContextAware 接口,则会向测试实例提供对 ApplicationContext 的引用。请注意,AbstractJUnit4SpringContextTests 和 AbstractTestNGSpringContextTests 实现了 ApplicationContextAware 接口,因此会自动提供对 ApplicationContext 的访问权限。
|
@Autowired ApplicationContext
作为实现
同样地,如果您的测试配置为加载
通过使用 |
使用TestContext框架的测试类不需要扩展任何特定类或实现特定接口来配置它们的应用上下文。相反,配置是通过在类级别声明@TestConfiguration注解来实现的。如果您的测试类没有明确声明组件类或资源位置,则配置的TestContextBootstrapper将决定如何从默认配置类或默认位置加载上下文。除了组件类和上下文资源位置外,应用上下文还可以通过上下文定制器或上下文初始化器进行配置。
以下各节说明了如何使用@ContextConfiguration及相关注解,通过组件类(通常是@Configuration类)、XML配置文件、Groovy脚本、上下文定制器或上下文初始化器来配置测试ApplicationContext。作为替代方案,您可以实现并配置自己的自定义SmartContextLoader以应对高级应用场景。