mcpField
Q
qa-test-planner

qa-test-planner

github.com/softaworksテスト・品質2.6k4.3k 回インストール34 週間前に更新
リポジトリ

qa-test-planner について

qa-test-plannerはQAエンジニア向けのスキルで、機能要件からテスト計画、手動テストケース、回帰テストスイート、デザイン検証、バグレポートを作成します。テストケースとバグレポート用の対話型スクリプトも含みます。

主な機能

  1. 01テスト計画と手動テストケースの作成
  2. 02スモークテストと回帰テストの構築
  3. 03Figmaデザインと実装の照合
  4. 04構造化されたバグレポートの作成
  5. 05ケースとバグ用の対話型スクリプト

活用シーン

  1. 01新機能のテスト計画
  2. 02チェックアウトフローのケース作成
  3. 03Figmaデザインに沿った画面検証
  4. 04再現可能なバグの記録

MCP 対応

Figma検証では、設定済みのFigma MCPサーバーからデザイン仕様を取得し、実装と比較する手順を説明しています。

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/softaworks/agent-toolkit --skill qa-test-planner

インストール後、Claude Code で/qa-test-plannerを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

README.md
references/
bug_report_templates.md
figma_validation.md
regression_testing.md
test_case_templates.md
scripts/
create_bug_report.sh
generate_test_cases.sh

詳細

QA Test Planner

QA エンジニア向けの包括的なスキルです。テスト計画の作成、手動テストケースの生成、リグレッションテストスイートの構築、Figma によるデザインの検証、バグの効果的な文書化を行えます。

アクティベーション: このスキルは、名前で明示的に呼び出された場合にのみトリガーされます(例: /qa-test-planner、qa-test-planner、または use the skill qa-test-planner)。


クイックスタート

テスト計画を作成する:

"Create a test plan for the user authentication feature"

テストケースを生成する:

"Generate manual test cases for the checkout flow"

リグレッションスイートを構築する:

"Build a regression test suite for the payment module"

Figma に対して検証する:

"Compare the login page against the Figma design at [URL]"

バグレポートを作成する:

"Create a bug report for the form validation issue"

クイックリファレンス

タスク得られるもの所要時間
テスト計画戦略、範囲、スケジュール、リスク10-15 分
テストケースステップごとの手順、期待される結果1 件あたり 5-10 分
リグレッションスイートスモークテスト、重要パス、実行順序15-20 分
Figma 検証デザインと実装の比較、不一致の一覧10-15 分
バグレポート再現可能な手順、環境、証拠5 分

仕組み

Your Request
    │
    ▼
┌─────────────────────────────────────────────────────┐
│ 1. ANALYZE                                          │
│    • Parse feature/requirement                      │
│    • Identify test types needed                     │
│    • Determine scope and priorities                 │
├─────────────────────────────────────────────────────┤
│ 2. GENERATE                                         │
│    • Create structured deliverables                 │
│    • Apply templates and best practices             │
│    • Include edge cases and variations              │
├─────────────────────────────────────────────────────┤
│ 3. VALIDATE                                         │
│    • Check completeness                             │
│    • Verify traceability                            │
│    • Ensure actionable steps                        │
└─────────────────────────────────────────────────────┘
    │
    ▼
QA Deliverable Ready

コマンド

インタラクティブスクリプト
スクリプト目的使い方
./scripts/generate_test_cases.shテストケースを対話形式で作成ステップごとのプロンプト
./scripts/create_bug_report.shバグレポートを生成ガイド付きの入力収集
自然言語
リクエスト出力
"Create test plan for {feature}"完全なテスト計画ドキュメント
"Generate {N} test cases for {feature}"手順付きの番号付きテストケース
"Build smoke test suite"重要パスのテスト
"Compare with Figma at {URL}"視覚検証チェックリスト
"Document bug: {description}"構造化されたバグレポート

主な成果物

1. テスト計画
  • テストの範囲と目的
  • テストのアプローチと戦略
  • 環境要件
  • 開始/終了基準
  • リスク評価
  • スケジュールとマイルストーン
2. 手動テストケース
  • ステップごとの手順
  • 期待される結果と実際の結果
  • 前提条件とセットアップ
  • テストデータの要件
  • 優先度と重大度
3. リグレッションスイート
  • スモークテスト(15-30 分)
  • フルリグレッション(2-4 時間)
  • 対象を絞ったリグレッション(30-60 分)
  • 実行順序と依存関係
4. Figma 検証
  • コンポーネントごとの比較
  • 余白とタイポグラフィのチェック
  • 色と視覚的一貫性
  • インタラクティブな状態の検証
5. バグレポート
  • 明確な再現手順
  • 環境の詳細
  • 証拠(スクリーンショット、ログ)
  • 重大度と優先度

アンチパターン

避けるべきこと理由代わりに
曖昧なテスト手順再現できない具体的な操作と期待される結果を記述する
前提条件の欠落テストが予期せず失敗するすべてのセットアップ要件を文書化する
テストデータがないテスターが作業できないサンプルデータまたは生成方法を用意する
汎用的なバグタイトル追跡しにくい具体的に: "[Feature] issue when [action]"
エッジケースの省略重大なバグを見逃す境界値、null を含める

検証チェックリスト

テスト計画:

  • 範囲が明確に定義されている(対象内/対象外)
  • 開始/終了基準が指定されている
  • リスクが特定され、軽減策が示されている
  • スケジュールが現実的である

テストケース:

  • 各ステップに期待される結果がある
  • 前提条件が文書化されている
  • テストデータが利用可能である
  • 優先度が割り当てられている

バグレポート:

  • 再現手順がある
  • 環境が文書化されている
  • スクリーンショット/証拠が添付されている
  • 重大度/優先度が設定されている

参考資料


詳細解説: テストケースの構造
標準のテストケース形式
## TC-001: [Test Case Title]

**Priority:** High | Medium | Low
**Type:** Functional | UI | Integration | Regression
**Status:** Not Run | Pass | Fail | Blocked

### Objective
[What are we testing and why]

### Preconditions
- [Setup requirement 1]
- [Setup requirement 2]
- [Test data needed]

### Test Steps
1. [Action to perform]
   **Expected:** [What should happen]

2. [Action to perform]
   **Expected:** [What should happen]

3. [Action to perform]
   **Expected:** [What should happen]

### Test Data
- Input: [Test data values]
- User: [Test account details]
- Configuration: [Environment settings]

### Post-conditions
- [System state after test]
- [Cleanup required]

### Notes
- [Edge cases to consider]
- [Related test cases]
- [Known issues]
テストの種類
種類焦点例
機能テストビジネスロジック有効な認証情報でのログイン
UI/ビジュアルテスト外観、レイアウトボタンが Figma のデザインと一致する
統合テストコンポーネント間の連携API がフロントエンドにデータを返す
リグレッションテスト既存機能以前の機能が引き続き動作する
パフォーマンステスト速度、負荷への対応ページが 3 秒以内に読み込まれる
セキュリティテスト脆弱性SQL インジェクションが防止されている
詳細解説: テスト計画テンプレート
テスト計画の構成
# Test Plan: [Feature/Release Name]

## Executive Summary
- Feature/product being tested
- Testing objectives
- Key risks
- Timeline overview

## Test Scope

**In Scope:**
- Features to be tested
- Test types (functional, UI, performance)
- Platforms and environments
- User flows and scenarios

**Out of Scope:**
- Features not being tested
- Known limitations
- Third-party integrations (if applicable)

## Test Strategy

**Test Types:**
- Manual testing
- Exploratory testing
- Regression testing
- Integration testing
- User acceptance testing

**Test Approach:**
- Black box testing
- Positive and negative testing
- Boundary value analysis
- Equivalence partitioning

## Test Environment
- Operating systems
- Browsers and versions
- Devices (mobile, tablet, desktop)
- Test data requirements
- Backend/API environments

## Entry Criteria
- [ ] Requirements documented
- [ ] Designs finalized
- [ ] Test environment ready
- [ ] Test data prepared
- [ ] Build deployed

## Exit Criteria
- [ ] All high-priority test cases executed
- [ ] 90%+ test case pass rate
- [ ] All critical bugs fixed
- [ ] No open high-severity bugs
- [ ] Regression suite passed

## Risk Assessment

| Risk | Probability | Impact | Mitigation |
|------|-------------|--------|------------|
| [Risk 1] | H/M/L | H/M/L | [Mitigation] |

## Test Deliverables
- Test plan document
- Test cases
- Test execution reports
- Bug reports
- Test summary report
詳細解説: バグ報告
バグレポートテンプレート
# BUG-[ID]: [Clear, specific title]

**Severity:** Critical | High | Medium | Low
**Priority:** P0 | P1 | P2 | P3
**Type:** Functional | UI | Performance | Security
**Status:** Open | In Progress | Fixed | Closed

## Environment
- **OS:** [Windows 11, macOS 14, etc.]
- **Browser:** [Chrome 120, Firefox 121, etc.]
- **Device:** [Desktop, iPhone 15, etc.]
- **Build:** [Version/commit]
- **URL:** [Page where bug occurs]

## Description
[Clear, concise description of the issue]

## Steps to Reproduce
1. [Specific step]
2. [Specific step]
3. [Specific step]

## Expected Behavior
[What should happen]

## Actual Behavior
[What actually happens]

## Visual Evidence
- Screenshot: [attached]
- Video: [link if applicable]
- Console errors: [paste errors]

## Impact
- **User Impact:** [How many users affected]
- **Frequency:** [Always, Sometimes, Rarely]
- **Workaround:** [If one exists]

## Additional Context
- Related to: [Feature/ticket]
- Regression: [Yes/No]
- Figma design: [Link if UI bug]
重大度の定義
レベル基準例
Critical (P0)システムクラッシュ、データ損失、セキュリティ決済が失敗する、ログインできない
High (P1)主要機能が故障し、回避策がない検索が機能しない
Medium (P2)機能が一部動作し、回避策があるフィルターの選択肢が 1 つ欠けている
Low (P3)見た目の問題、まれなエッジケース誤字、わずかな配置のずれ
詳細解説: Figma MCP 連携
デザイン検証ワークフロー

前提条件:

  • Figma MCP サーバーが設定されていること
  • Figma のデザインファイルにアクセスできること
  • コンポーネントやページの Figma URL があること

手順:

  1. Figma からデザイン仕様を取得する
"Get the button specifications from Figma file [URL]"

Response includes:
- Dimensions (width, height)
- Colors (background, text, border)
- Typography (font, size, weight)
- Spacing (padding, margin)
- Border radius
- States (default, hover, active, disabled)
  1. 実装を比較する
TC: Primary Button Visual Validation
1. Inspect primary button in browser dev tools
2. Compare against Figma specs:
   - Dimensions: 120x40px
   - Border-radius: 8px
   - Background color: #0066FF
   - Font: 16px Medium #FFFFFF
3. Document discrepancies
  1. 不一致があればバグを作成する
BUG: Primary button color doesn't match design
Severity: Medium
Expected (Figma): #0066FF
Actual (Implementation): #0052CC
Screenshot: [attached]
Figma link: [specific component]
検証項目
要素確認内容ツール
色16 進数の値が完全一致しているかブラウザのカラーピッカー
間隔パディング/マージンのピクセル値DevTools の計算済みスタイル
タイポグラフィフォント、サイズ、ウェイトDevTools のフォントパネル
レイアウト幅、高さ、位置DevTools のボックスモデル
状態ホバー、アクティブ、フォーカス手動での操作
レスポンシブブレークポイントでの挙動DevTools のデバイスモード
クエリの例
"Get button specifications from Figma design [URL]"
"Compare navigation menu implementation against Figma design"
"Extract spacing values for dashboard layout from Figma"
"List all color tokens used in Figma design system"
詳細解説: リグレッションテスト
スイートの構成
スイートの種類所要時間実行頻度カバレッジ
スモーク15〜30 分毎日重要なパスのみ
ターゲット30〜60 分変更ごと影響を受ける領域
フル2〜4 時間毎週/リリース時包括的
サニティ10〜15 分ホットフィックス後簡易的な検証
リグレッションスイートの構築

ステップ 1: 重要なパスを特定する

  • ユーザーが絶対に手放せない機能は何か?
  • 収益を生み出している機能は何か?
  • 機密データを扱う機能は何か?
  • 最も頻繁に使われている機能は何か?

ステップ 2: テストケースに優先順位を付ける

優先度説明必ず実行
P0ビジネス上重要、セキュリティ常に
P1主要機能、一般的なフロー毎週以上
P2軽微な機能、エッジケースリリース時

ステップ 3: 実行順序

  1. まずスモークテスト。失敗した場合は中止し、ビルドを修正する
  2. 次に P0 テスト。先に進む前に必ず合格させる
  3. 次に P1、その後 P2。すべての失敗を追跡する
  4. 探索的テストで、予期しない問題を見つける
合否基準

合格:

  • すべての P0 テストが合格
  • P1 テストの 90% 以上が合格
  • 未解決の重大なバグがない

不合格(リリースをブロック):

  • P0 テストが 1 件でも失敗
  • 重大なバグが発見された
  • セキュリティ上の脆弱性
  • データ損失のシナリオ

条件付き:

  • 回避策のある P1 の失敗
  • 既知の問題が文書化されている
  • 修正計画が用意されている
詳細解説: テスト実行の追跡
テスト実行レポートのテンプレート
# Test Run: [Release Version]

**Date:** 2024-01-15
**Build:** v2.5.0-rc1
**Tester:** [Name]
**Environment:** Staging

## Summary
- Total Test Cases: 150
- Executed: 145
- Passed: 130
- Failed: 10
- Blocked: 5
- Not Run: 5
- Pass Rate: 90%

## Test Cases by Priority

| Priority | Total | Pass | Fail | Blocked |
|----------|-------|------|------|---------|
| P0 (Critical) | 25 | 23 | 2 | 0 |
| P1 (High) | 50 | 45 | 3 | 2 |
| P2 (Medium) | 50 | 45 | 3 | 2 |
| P3 (Low) | 25 | 17 | 2 | 1 |

## Critical Failures
- TC-045: Payment processing fails
  - Bug: BUG-234
  - Status: Open

## Blocked Tests
- TC-112: Dashboard widget (API endpoint down)

## Risks
- 2 critical bugs blocking release
- Payment integration needs attention

## Next Steps
- Retest after BUG-234 fix
- Complete remaining 5 test cases
- Run full regression before sign-off
カバレッジの追跡
## Coverage Matrix

| Feature | Requirements | Test Cases | Status | Gaps |
|---------|--------------|------------|--------|------|
| Login | 8 | 12 | Complete | None |
| Checkout | 15 | 10 | Partial | Payment errors |
| Dashboard | 12 | 15 | Complete | None |
QA プロセスのワークフロー
フェーズ 1: 計画
  • 要件とデザインをレビューする
  • テスト計画を作成する
  • テストシナリオを特定する
  • 工数とスケジュールを見積もる
  • テスト環境をセットアップする
フェーズ 2: テスト設計
  • テストケースを作成する
  • テストケースをチームでレビューする
  • テストデータを準備する
  • リグレッションスイートを構築する
  • Figma デザインへのアクセス権を取得する
フェーズ 3: 実行
  • テストケースを実行する
  • 明確な手順でバグを記録する
  • Figma と照合して検証する(UI テスト)
  • テストの進捗を追跡する
  • ブロッカーを共有する
フェーズ 4: レポート作成
  • テスト結果をまとめる
  • カバレッジを分析する
  • リスクを文書化する
  • Go/No-Go の推奨を提示する
  • テスト成果物をアーカイブする
ベストプラクティス
テストケースの作成

DO:

  • 具体的で曖昧さのない記述にする
  • 各ステップに期待される結果を含める
  • 1 つのテストケースでは 1 つのことだけをテストする
  • 一貫した命名規則を使用する
  • 保守しやすいテストケースにする

DON'T:

  • 知識があることを前提にしない
  • テストケースを長くしすぎない
  • 事前条件を省略しない
  • エッジケースを見落とさない
  • 期待される結果を曖昧なままにしない
バグレポート

DO:

  • 再現手順を明確に示す
  • スクリーンショットや動画を添付する
  • 正確な環境の詳細を記載する
  • ユーザーへの影響を説明する
  • UI のバグには Figma へのリンクを付ける

DON'T:

  • 再現手順なしで報告しない
  • 曖昧な説明を使わない
  • 環境の詳細を省略しない
  • 優先度の設定を忘れない
  • 既存のバグを重複して報告しない
リグレッションテスト

DO:

  • 可能な場合は反復的なテストを自動化する
  • リグレッションスイートを定期的にメンテナンスする
  • 重要なパスを優先する
  • スモークテストを頻繁に実行する
  • リリースごとにスイートを更新する

DON'T:

  • リリース前のリグレッションを省略しない
  • スイートを古いままにしない
  • 毎回すべてをテストしない
  • 失敗したリグレッションテストを無視しない

例

例: ログインフローのテストケース
## TC-LOGIN-001: Valid User Login

**Priority:** P0 (Critical)
**Type:** Functional
**Estimated Time:** 2 minutes

### Objective
Verify users can successfully login with valid credentials

### Preconditions
- User account exists ([email protected] / Test123!)
- User is not already logged in
- Browser cookies cleared

### Test Steps
1. Navigate to https://app.example.com/login
   **Expected:** Login page displays with email and password fields

2. Enter email: [email protected]
   **Expected:** Email field accepts input

3. Enter password: Test123!
   **Expected:** Password field shows masked characters

4. Click "Login" button
   **Expected:**
   - Loading indicator appears
   - User redirected to /dashboard
   - Welcome message shown: "Welcome back, Test User"
   - Avatar/profile image displayed in header

### Post-conditions
- User session created
- Auth token stored
- Analytics event logged

### Edge Cases to Consider
- TC-LOGIN-002: Invalid password
- TC-LOGIN-003: Non-existent email
- TC-LOGIN-004: SQL injection attempt
- TC-LOGIN-005: Very long password
例: レスポンシブデザインのテストケース
## TC-UI-045: Mobile Navigation Menu

**Priority:** P1 (High)
**Type:** UI/Responsive
**Devices:** Mobile (iPhone, Android)

### Objective
Verify navigation menu works correctly on mobile devices

### Preconditions
- Access from mobile device or responsive mode
- Viewport width: 375px (iPhone SE) to 428px (iPhone Pro Max)

### Test Steps
1. Open homepage on mobile device
   **Expected:** Hamburger menu icon visible (top-right)

2. Tap hamburger icon
   **Expected:**
   - Menu slides in from right
   - Overlay appears over content
   - Close (X) button visible

3. Tap menu item
   **Expected:** Navigate to section, menu closes

4. Compare against Figma mobile design [link]
   **Expected:**
   - Menu width: 280px
   - Slide animation: 300ms ease-out
   - Overlay opacity: 0.5, color #000000
   - Font size: 16px, line-height 24px

### Breakpoints to Test
- 375px (iPhone SE)
- 390px (iPhone 14)
- 428px (iPhone 14 Pro Max)
- 360px (Galaxy S21)

「テストはバグの不在ではなく、存在を示すことしかできない。」 - Edsger Dijkstra

「品質は行為ではなく習慣である。」 - Aristotle

コメント