引导 TestContext 框架

Spring TestContext 框架内部的默认配置足以满足所有常见用例。然而,有时开发团队或第三方框架希望更改默认的 ContextLoader,实现自定义的 TestContextContextCache,增强默认的 ContextCustomizerFactoryTestExecutionListener 实现集等等。为了对 TestContext 框架的运行方式进行这种低级别控制,Spring 提供了一种引导策略。

TestContextBootstrapper 定义了引导 TestContext 框架的 SPI。TestContextBootstrapperTestContextManager 用于加载当前测试的 TestExecutionListener 实现并构建其管理的 TestContext。你可以通过使用 @BootstrapWith(直接使用或作为元注解)为测试类(或测试类层次结构)配置自定义引导策略。如果未通过 @BootstrapWith 明确配置引导程序,则根据 @WebAppConfiguration 的存在情况,使用 DefaultTestContextBootstrapperWebTestContextBootstrapper

由于 TestContextBootstrapper SPI 将来可能会改变(以适应新需求),我们强烈建议实现者不要直接实现此接口,而是扩展 AbstractTestContextBootstrapper 或其具体子类之一。