Spring TestContext 框架
Spring TestContext 框架(位于 org.springframework.test.context 包中)提供了通用的、注解驱动的单元和集成测试支持,并且与所使用的测试框架无关。TestContext 框架还非常重视约定优于配置,提供了合理的默认值,你可以通过基于注解的配置来覆盖这些默认值。
除了通用的测试基础设施外,TestContext 框架还为 JUnit Jupiter、JUnit 4 和 TestNG 提供了明确的支持。对于 JUnit 4 和 TestNG,Spring 提供了 abstract 支持类。此外,Spring 为 JUnit 4 提供了自定义的 JUnit Runner 和自定义的 JUnit Rules,以及为 JUnit Jupiter 提供了自定义的 Extension,这些都允许你编写所谓的 POJO 测试类。POJO 测试类不需要扩展特定的类层次结构,例如 abstract 支持类。
以下部分概述了 TestContext 框架的内部结构。如果你只对使用该框架感兴趣,而无意通过自己的自定义监听器或自定义加载器来扩展它,那么请直接跳转到配置(上下文管理、依赖注入、事务管理)、支持类和注解支持部分。