对于最新的稳定版本,请使用 Spring Framework 6.2.0spring-doc.cn

对测试的提前支持

本章介绍了 Spring 对使用 Spring TestContext 框架。spring-doc.cn

testing 支持扩展了 Spring 的核心 AOT 支持,其中包含 以下功能。spring-doc.cn

  • 当前项目中所有使用 TestContext 框架加载 .ApplicationContextspring-doc.cn

    • 为基于 JUnit Jupiter 和 JUnit 4 的测试类提供显式支持 作为对 TestNG 和其他使用 Spring 核心的测试框架的隐式支持 testing annotations — 只要测试是使用为当前项目注册的 JUnit Platform 运行的。TestEnginespring-doc.cn

  • 构建时 AOT 处理:当前项目中每个唯一的测试 将刷新以进行 AOT 处理ApplicationContextspring-doc.cn

  • 运行时 AOT 支持:在 AOT 运行时模式下执行时,Spring 集成测试将 使用透明地参与上下文缓存的 AOT-optimized。ApplicationContextspring-doc.cn

AOT 模式当前不支持该批注。@ContextHierarchyspring-doc.cn

要提供特定于测试的运行时提示以在 GraalVM 原生映像中使用,您需要 以下选项。spring-doc.cn

API 是核心 API 的配套工具。如果需要注册全局提示以测试支持 不特定于特定测试类,则更倾向于实现而不是特定于测试的 API。TestRuntimeHintsRegistrarRuntimeHintsRegistrarRuntimeHintsRegistrarspring-doc.cn

如果你实现了一个自定义的 ,它必须在 order 提供 AOT 构建时处理和 AOT 运行时执行支持。注意 但是,Spring Framework 和 Spring Boot 已经实现了 .ContextLoaderAotContextLoaderspring-doc.cn

如果您实施自定义,则必须实现 AotTestExecutionListener 才能参与 AOT 处理。查看 module 为例。TestExecutionListenerSqlScriptsTestExecutionListenerspring-testspring-doc.cn