引导 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 或其具体的子类之一。