引导 TestContext 框架
Spring TestContext 框架内部的默认配置足以满足所有常见用例。但是,有时开发团队或第三方框架希望更改默认的 ContextLoader
,实现自定义的 TestContext
或 ContextCache
,扩充默认的 ContextCustomizerFactory
和 TestExecutionListener
实现集,等等。对于 TestContext 框架如何操作的这种低级别控制,Spring 提供了引导策略。
TestContextBootstrapper
定义了用于引导 TestContext 框架的 SPI。TestContextManager
使用 TestContextBootstrapper
为当前测试加载 TestExecutionListener
实现并构建它管理的 TestContext
。你可以使用 @BootstrapWith
(直接或作为元注解)为测试类(或测试类层次结构)配置自定义引导策略。如果未使用 @BootstrapWith
显式配置引导程序,则会根据 @WebAppConfiguration
的存在使用 DefaultTestContextBootstrapper
或 WebTestContextBootstrapper
。
由于 TestContextBootstrapper
SPI 未来可能会发生变化(以适应新需求),我们强烈建议实现者不要直接实现此接口,而应扩展 AbstractTestContextBootstrapper
或其具体子类。