Testing

本节总结了 Spring MVC 应用程序中 spring-test 可用的选项。

  • Servlet API Mock:用于单元测试控制器、过滤器和其他 Web 组件的 Servlet API 契约的模拟实现。有关更多详细信息,请参见 Servlet API 模拟对象。

  • TestContext 框架:用于在 JUnit 和 TestNG 测试中加载 Spring 配置,包括在测试方法之间高效缓存加载的配置以及使用 MockServletContext 加载 WebApplicationContext 的支持。有关更多详细信息,请参阅 TestContext Framework

  • Spring MVC Test:一个框架,也称为 MockMvc,用于通过 DispatcherServlet 测试带注释的控制器(即,支持注释),并使用 Spring MVC 基础结构但没有 HTTP 服务器。有关更多详细信息,请参阅 Spring MVC Test

  • 客户端 REST:spring-test 提供一个 MockRestServiceServer,可将其用作模拟服务器,用于测试在内部使用 RestTemplate 的客户端代码。有关更多详细信息,请参阅 Client REST Tests

  • WebTestClient:专为测试 WebFlux 应用程序而设计,但也可用于端到端集成测试,通过 HTTP 连接连接到任何服务器。它是一个非阻塞、响应式客户端,非常适合测试异步和流传输场景。有关更多详细信息,请参阅 WebTestClient