关于 spring-mvc-testing
为使用 Spring MVC 的开发者提供测试指南,涵盖 MockMvc 请求与响应验证、校验和异常处理,并注明适用范围及不适用的测试类型。
主要功能
- 01配置 @WebMvcTest 与 MockMvc
- 02测试常见 REST 请求
- 03使用 jsonPath 验证响应
- 04测试校验与异常处理
- 05涵盖 Boot 4 RestTestClient 迁移
适用场景
- 01验证控制器的 GET、POST、PUT 和 DELETE
- 02检查响应正文与 HTTP 标头
- 03测试 Bean 校验及控制器异常处理
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ spring-ai-community/ spring-testing-skills --skill spring-mvc-testing安装后在 Claude Code 中输入/spring-mvc-testing确认已加载。
附带文件references/mvc-rest-testing-patterns.md
详细介绍
Spring MVC 测试
特征:@WebMvcTest、MockMvc、jsonPath、@AutoConfigureMockMvc、@RestController、MockMvcRequestBuilders、MockMvcResultMatchers、objectMapper
测试环境
- Spring Boot 3.2+ / Spring Boot 4.x
- Spring Framework 6.x / Spring Framework 7.x
- Spring Security 6.x / 7.x(在
@WebMvcTest中自动配置) - JUnit 5
以下情况请勿使用此技能
- 专门测试身份验证、授权、CSRF、JWT 或 OAuth2 → 使用
spring-security-testing - 测试响应式端点(
WebFlux、WebClient、SSE)→ 使用spring-webflux-testing - 测试 JPA 仓库或数据库持久化 → 使用
spring-jpa-testing - 测试 WebSocket 或 STOMP 消息传递 → 使用
spring-websocket-testing - 编写不使用 Spring 上下文的纯单元测试 → 使用
spring-testing-fundamentals
何时阅读参考资料
| 情况 | 阅读 |
|---|---|
设置 @WebMvcTest、配置 MockMvc、静态导入 | references/mvc-rest-testing-patterns.md |
| GET、POST、PUT、DELETE 请求模式 | references/mvc-rest-testing-patterns.md |
jsonPath 断言、响应标头、多部分上传 | references/mvc-rest-testing-patterns.md |
测试 @Valid Bean 验证、@RestControllerAdvice 异常处理器 | references/mvc-rest-testing-patterns.md |
Boot 4 RestTestClient 迁移 | references/mvc-rest-testing-patterns.md |
| 反模式和常见错误 | references/mvc-rest-testing-patterns.md |
评论
支持 Markdown