spring-mvc-testing について
Spring MVC を扱う開発者向けのテストスキルです。MockMvc によるリクエストとレスポンスの検証、バリデーション、例外処理を扱い、対象外のテストも示します。
主な機能
- 01@WebMvcTest と MockMvc の設定
- 02一般的な REST リクエストのテスト
- 03jsonPath によるレスポンス検証
- 04バリデーションと例外ハンドラーのテスト
- 05Boot 4 RestTestClient 移行への対応
活用シーン
- 01コントローラーの GET、POST、PUT、DELETE の検証
- 02レスポンス本文と HTTP ヘッダーの確認
- 03Bean バリデーションと例外処理のテスト
インストール
コマンドをコピーしてターミナルで実行します。
$
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 Validation、@RestControllerAdvice 例外ハンドラーのテスト | references/mvc-rest-testing-patterns.md |
Boot 4 の RestTestClient への移行 | references/mvc-rest-testing-patterns.md |
| アンチパターンとよくある間違い | references/mvc-rest-testing-patterns.md |
コメント
Markdown 対応