mcpField
4
421-frameworks-quarkus-testing-unit-tests

421-frameworks-quarkus-testing-unit-tests

github.com/jabrenaテスト・品質456319 回インストール1 日前に更新
リポジトリ

421-frameworks-quarkus-testing-unit-tests について

Quarkus のユニットテストを改善するスキルです。CDI 統合が必要な場合を除き、JUnit 5 と Mockito を優先します。モック、HTTP リソーステスト、パラメーター化テスト、テスト用プロファイルを扱います。

主な機能

  1. 01Quarkus を起動せず JUnit 5 と Mockito を使用
  2. 02InjectMock による CDI Bean の置き換え
  3. 03InjectSpy による部分モック
  4. 04REST Assured による HTTP リソーステスト
  5. 05CSV またはメソッドソースによるパラメーター化
  6. 06QuarkusTestProfile によるテスト設定

活用シーン

  1. 01高速なユニットテストで QuarkusTest の使用を減らす
  2. 02Mockito でサービスをテスト
  3. 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 サービス向けに、高速な純粋ユニットテストを作成する

ワークフロー

  1. 参照ドキュメントを読み、プロジェクトの状況を評価する

変更を提案する前に、references/421-frameworks-quarkus-testing-unit-tests.md を読み、現在のプロジェクト設定を確認してください。

  1. 対象範囲を把握し、改善対象を決定する

求められている結果と制約を特定し、安全に適用できる最小限の変更を決定します。

  1. フレームワークに沿った変更を適用する

参照パターンとプロジェクトの規約に従って、設定やコードを実装またはリファクタリングします。

  1. 検証を実行し、結果を報告する

適切なビルドやテストを実行し、変更点、検証内容、今後必要な対応を要約します。

参照資料

詳細なガイダンス、例、制約については、references/421-frameworks-quarkus-testing-unit-tests.md を参照してください。

コメント