测试
本节总结了 spring-test 中可用于 Spring MVC 应用程序的选项。
-
Servlet API Mock:用于单元测试控制器、过滤器和其他 Web 组件的 Servlet API 契约的 Mock 实现。有关详细信息,请参阅 Servlet API Mock 对象。
-
TestContext 框架:支持在 JUnit 和 TestNG 测试中加载 Spring 配置,包括跨测试方法高效缓存已加载配置,以及支持使用
MockServletContext加载WebApplicationContext。有关详细信息,请参阅 TestContext 框架。 -
Spring MVC 测试:一个框架(也称为
MockMvc),用于通过DispatcherServlet(即支持注解)测试带注解的控制器,它拥有完整的 Spring MVC 基础设施,但没有 HTTP 服务器。有关详细信息,请参阅 Spring MVC 测试。 -
客户端 REST:
spring-test提供了一个MockRestServiceServer,您可以将其用作模拟服务器,用于测试内部使用RestTemplate的客户端代码。有关详细信息,请参阅 客户端 REST 测试。 -
WebTestClient:专为测试 WebFlux 应用程序而构建,但它也可以用于通过 HTTP 连接对任何服务器进行端到端集成测试。它是一个非阻塞、响应式的客户端,非常适合测试异步和流式传输场景。有关详细信息,请参阅WebTestClient。