Agent skill

qa-check

PR作成前の品質保証チェックを実行します。Lint、テスト、ビルド、カバレッジ確認を自動で行い、合格/不合格を判定します。フロントエンドのみ、バックエンドのみ、または両方のチェックが可能です。

Stars 232
Forks 15

Install this agent skill to your Project

npx add-skill https://github.com/aiskillstore/marketplace/tree/main/skills/crearize/qa-check

SKILL.md

QA Engineer - 品質保証専門家

役割

MovieMarketerプロジェクトの品質保証を担当する専門家として、テスト実行、Lintチェック、ビルド検証、カバレッジ確認を行い、品質基準の充足を判定する。

責務

1. バックエンド品質検証

  • Checkstyle実行(コーディング規約チェック)
  • SpotBugs実行(潜在的バグ検出)
  • 単体テスト実行
  • ビルド検証

2. フロントエンド品質検証

  • Biome Lintチェック(コーディング規約チェック)
  • 単体テスト実行(Vitest)
  • ビルド検証(Next.js)

3. カバレッジ確認

  • テストカバレッジ80%以上の確認
  • ビジネスロジック90%以上の確認
  • カバレッジレポート生成

4. 品質レポート作成

  • 合格/不合格判定
  • 具体的な問題点の報告
  • 修正提案

品質基準

合格条件(すべて満たす必要がある)

  • Backend: ./gradlew checkが成功
  • Frontend: pnpm run lint:checkが成功
  • Frontend: pnpm run test:ciが成功
  • Frontend: pnpm run buildが成功
  • テストカバレッジ: 全体80%以上
  • ビジネスロジック: 90%以上(Service層)
  • 重大なLintエラー: 0件
  • テスト失敗: 0件
  • ビルドエラー: 0件

警告レベル(合格だが注意喚起)

  • Lintワーニング: 5件以上
  • テストカバレッジ: 80-85%(目標は90%以上)
  • 循環的複雑度: 15以上のメソッドあり

検証フロー

Phase 0: 環境確認(最重要)

実行前の必須チェック:

  1. 現在のディレクトリ確認

    bash
    pwd
    
    • 期待値: /Users/koujienami/CursorProjects/YouTubeOpsAI
    • 重要: プロジェクトルートにいることを確認
  2. gradlewファイルの存在確認 (Backendチェック時)

    bash
    ls -la gradlew
    ls -la backend/gradlew 2>/dev/null || echo "backend/gradlew not found"
    
    • ./gradlewまたはbackend/gradlewのどちらかが存在することを確認
    • 存在する方のパスを使用してコマンド実行
  3. package.jsonの存在確認 (Frontendチェック時)

    bash
    ls -la frontend/package.json
    

環境が正しくない場合の対処:

  • プロジェクトルートに移動: cd /Users/koujienami/CursorProjects/YouTubeOpsAI
  • gradlewが見つからない場合はエラーを報告し、検証を中止

Phase 1: バックエンド検証

対象: target="backend" または target="both" の場合

  1. Gradleチェック実行

    bash
    ./gradlew check
    
    • Checkstyle、SpotBugs、テストを一括実行
    • 失敗した場合は詳細なエラーログを取得
  2. カバレッジ確認 (skip_coverage_check=falseの場合)

    bash
    ./gradlew jacocoTestCoverageVerification
    
    • 80%以上のカバレッジを確認
    • 失敗した場合はカバレッジレポートを確認
  3. 結果の記録

    • 成功したコマンド一覧
    • 失敗したコマンドとエラー内容
    • カバレッジパーセンテージ

Phase 2: フロントエンド検証

対象: target="frontend" または target="both" の場合

  1. Lint check

    bash
    pnpm --filter frontend run lint:all
    
    • ESLint + Biomeによるコーディング規約チェック
    • エラーがある場合は詳細を記録
  2. ビルド検証

    bash
    pnpm --filter frontend run build
    
    • Next.jsビルドの成功確認
    • 型エラー、ビルドエラーの検出
  3. テスト実行とカバレッジ (skip_coverage_check=falseの場合)

    bash
    pnpm --filter frontend run test:coverage
    
    • Vitestによるテスト実行
    • カバレッジレポート生成
    • ロジック層75%以上、UI層45%以上のカバレッジ確認
  4. 結果の記録

    • Lintエラー/ワーニング件数
    • ビルド成否
    • テスト成否
    • カバレッジパーセンテージ

Phase 3: 総合判定

合格条件:

  1. すべてのコマンドが成功(終了コード0)
  2. カバレッジが基準値以上(チェックを省略しない場合)
  3. 重大なLintエラーが0件

判定ロジック:

IF (全コマンド成功 AND カバレッジ基準達成) THEN
  判定 = "合格 ✅"
ELSE IF (一部失敗) THEN
  判定 = "不合格 ❌"
  理由を詳細に記載
ELSE
  判定 = "部分的合格(警告あり) ⚠️"
END IF

Phase 4: レポート出力

出力形式:

markdown
## QA検証レポート

### 実行サマリー
- **対象**: {target}
- **カバレッジチェック**: {skip_coverage_check ? "スキップ" : "実施"}
- **総合判定**: {合格 ✅ / 不合格 ❌ / 警告あり ⚠️}

### バックエンド検証結果
- Gradleチェック: {✅ / ❌}
- カバレッジ検証: {✅ / ❌ / スキップ}
- カバレッジ: {XX}%

### フロントエンド検証結果
- Lintチェック: {✅ / ❌}
- ビルド: {✅ / ❌}
- テストカバレッジ: {✅ / ❌ / スキップ}
- カバレッジ: {XX}%

### 詳細
{各フェーズの詳細ログ}

### 次のステップ
{合格の場合: PR作成可能}
{不合格の場合: 修正が必要な項目をリスト}

エラーハンドリング

環境エラー

  • gradlew/package.jsonが見つからない → 即座に中止、ユーザーに報告
  • 権限エラー → chmod +x gradlew を提案

実行エラー

  • Lintエラー → エラー箇所を特定し、修正方法を提案
  • テスト失敗 → 失敗したテストケースを列挙
  • ビルドエラー → エラーメッセージを解析し、原因を特定

タイムアウト

  • 各コマンドに適切なタイムアウトを設定
  • 長時間実行されるコマンドは進捗を報告

使用例

両方をチェック(デフォルト)

/qa-check

フロントエンドのみチェック

/qa-check target="frontend"

バックエンドのみチェック(カバレッジスキップ)

/qa-check target="backend" skip_coverage_check=true

参照ドキュメント

  • コーディング規約: documents/development/coding-rules/
  • テスト戦略: documents/development/development-policy.md
  • エラーコード: documents/development/error-codes.md

Expand your agent's capabilities with these related and highly-rated skills.

aiskillstore/marketplace

perigon-backend

Perigon ASP.NET Core + EF Core + Aspire conventions

232 15
Explore
aiskillstore/marketplace

perigon-agent

Pointers for Copilot/agents to apply Perigon conventions

232 15
Explore
aiskillstore/marketplace

perigon-angular

Angular 21+ standalone/Material/signal conventions for Perigon WebApp

232 15
Explore
aiskillstore/marketplace

fastapi-mastery

Comprehensive FastAPI development skill covering REST API creation, routing, request/response handling, validation, authentication, database integration, middleware, and deployment. Use when working with FastAPI projects, building APIs, implementing CRUD operations, setting up authentication/authorization, integrating databases (SQL/NoSQL), adding middleware, handling WebSockets, or deploying FastAPI applications. Triggered by requests involving .py files with FastAPI code, API endpoint creation, Pydantic models, or FastAPI-specific features.

232 15
Explore
aiskillstore/marketplace

context7-efficient

Token-efficient library documentation fetcher using Context7 MCP with 86.8% token savings through intelligent shell pipeline filtering. Fetches code examples, API references, and best practices for JavaScript, Python, Go, Rust, and other libraries. Use when users ask about library documentation, need code examples, want API usage patterns, are learning a new framework, need syntax reference, or troubleshooting with library-specific information. Triggers include questions like "Show me React hooks", "How do I use Prisma", "What's the Next.js routing syntax", or any request for library/framework documentation.

232 15
Explore
aiskillstore/marketplace

browser-use

Browser automation using Playwright MCP. Navigate websites, fill forms, click elements, take screenshots, and extract data. Use when tasks require web browsing, form submission, web scraping, UI testing, or any browser interaction.

232 15
Explore

Didn't find tool you were looking for?

Be as detailed as possible for better results