你可以通过实例化控制器,注入它来为 Spring MVC 编写纯单元测试 使用依赖项,并调用其方法。但是,此类测试不会验证请求 映射、数据绑定、消息转换、类型转换、验证和 NOR 它们是否涉及任何支持、 或方法。@InitBinder@ModelAttribute@ExceptionHandler

Spring MVC 测试框架,也称为 ,旨在提供更完整的 测试没有运行服务器的 Spring MVC 控制器。它通过调用 并从模块传递 Servlet API 的“模拟”实现,该模块复制完整的 Spring MVC 请求处理,而无需 正在运行的服务器。MockMvcDispatcherServletspring-test

MockMvc 是一个服务器端测试框架,可让您验证大多数功能 使用轻量级和目标测试的 Spring MVC 应用程序。您可以在 它自己来执行请求和验证响应,或者您也可以通过 插入 MockMvc 作为服务器来处理请求的 WebTestClient API 跟。