421-frameworks-quarkus-testing-unit-tests について
Quarkus のユニットテストを改善するスキルです。CDI 統合が必要な場合を除き、JUnit 5 と Mockito を優先します。モック、HTTP リソーステスト、パラメーター化テスト、テスト用プロファイルを扱います。
主な機能
- 01Quarkus を起動せず JUnit 5 と Mockito を使用
- 02InjectMock による CDI Bean の置き換え
- 03InjectSpy による部分モック
- 04REST Assured による HTTP リソーステスト
- 05CSV またはメソッドソースによるパラメーター化
- 06QuarkusTestProfile によるテスト設定
活用シーン
- 01高速なユニットテストで QuarkusTest の使用を減らす
- 02Mockito でサービスをテスト
- 03プロファイル別のテスト設定を追加
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ jabrena/ plinth --skill 421-frameworks-quarkus-testing-unit-testsインストール後、Claude Code で/421-frameworks-quarkus-testing-unit-testsを入力して読み込まれたか確認します。
同梱ファイルreferences/421-frameworks-quarkus-testing-unit-tests.md
詳細
Quarkus のユニットテスト
Quarkus の高速なテスト戦略を適用します。まず Mockito を使用し、CDI の配線が重要な場合は QuarkusTest を使用します。
このスキルの対象範囲
- コンテナーを起動しない、JUnit 5 + Mockito のみを使ったテスト(@ExtendWith(MockitoExtension.class))
- @InjectMock を使った、CDI Bean の完全な置き換えを行う @QuarkusTest
- 部分モックに使う @InjectSpy — 実際の Bean をスパイとしてラップし、特定のメソッドをオーバーライドします
- HTTP レベルの @QuarkusTest リソーステストに使う REST Assured
- @CsvSource(インラインデータ)と @MethodSource(複雑なオブジェクト)を使った @ParameterizedTest
- テスト固有の設定をオーバーライドする QuarkusTestProfile と @TestProfile
- 命名規則:*Test → Surefire(高速フェーズ)、*IT → Failsafe(verify フェーズ)
- 統合テストへ移行するタイミング(
@422)
対象範囲: 参照ルールと良い/悪いコード例に基づいて、推奨事項を適用します。
制約
テストをリファクタリングする前にコンパイルし、その後、スイート全体を検証してください。
- 必須:変更を適用する前に
./mvnw compileまたはmvn compileを実行してください - 前提条件:テストを改善する前に、プロジェクトがコンパイルできる必要があります
- 安全性:コンパイルに失敗した場合は、直ちに停止してください
- ブロック条件:コンパイルエラーは、作業を続行する前にユーザーが解決する必要があります
- 検証:改善を適用した後、
./mvnw clean verifyまたはmvn clean verifyを実行してください - 適用前:詳細なルールと例について、参照ドキュメントを読んでください
このスキルを使用する場面
- Quarkus プロジェクトにユニットテストを追加または改善する
- Mockito を優先したテストで、時間のかかる @QuarkusTest の使用を減らす
- Quarkus のテストに @InjectSpy による部分モックや QuarkusTestProfile の設定を追加する
- 繰り返しのテストメソッドを @CsvSource または @MethodSource を使った @ParameterizedTest に変換する
- Quarkus サービス向けに、高速な純粋ユニットテストを作成する
ワークフロー
- 参照ドキュメントを読み、プロジェクトの状況を評価する
変更を提案する前に、references/421-frameworks-quarkus-testing-unit-tests.md を読み、現在のプロジェクト設定を確認してください。
- 対象範囲を把握し、改善対象を決定する
求められている結果と制約を特定し、安全に適用できる最小限の変更を決定します。
- フレームワークに沿った変更を適用する
参照パターンとプロジェクトの規約に従って、設定やコードを実装またはリファクタリングします。
- 検証を実行し、結果を報告する
適切なビルドやテストを実行し、変更点、検証内容、今後必要な対応を要約します。
参照資料
詳細なガイダンス、例、制約については、references/421-frameworks-quarkus-testing-unit-tests.md を参照してください。
コメント
Markdown 対応