mcpField
Q
qe-requirements-validation

qe-requirements-validation

github.com/proffesor-for-testingテスト・品質519105 回インストール今日更新
リポジトリ

qe-requirements-validation について

qe-requirements-validationは、受け入れ基準を評価し、要件とテストを関連付けるチーム向けスキルです。BDDシナリオの生成やカバレッジの不足分析にも対応します。

主な機能

  1. 01受け入れ基準の検証
  2. 02要件トレーサビリティマトリクスの作成
  3. 03BDDシナリオの生成
  4. 04要件カバレッジの分析
  5. 05スプリント要件のレビュー

活用シーン

  1. 01ストーリーの曖昧さや不足する境界条件の確認
  2. 02要件とテストおよびコードの関連付け
  3. 03ユーザーストーリーからGherkinシナリオを作成
  4. 04テストと自動化のカバレッジ不足の特定

インストール

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

$npx skills add https://github.com/proffesor-for-testing/agentic-qe --skill qe-requirements-validation

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

同梱ファイル

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

evals/
qe-requirements-validation.yaml
schemas/
output.json
scripts/
validate-config.json

詳細

QE 要件検証

目的

受け入れ基準の解析、要件トレーサビリティ、BDD シナリオの生成、カバレッジのギャップ特定など、v3 の要件検証機能の使い方を説明します。

有効化するタイミング

  • 要件を検証するとき
  • 要件とテストのトレーサビリティを確認するとき
  • BDD シナリオを生成するとき
  • 要件のカバレッジを評価するとき
  • 受け入れ基準をレビューするとき

クイックスタート

# Parse acceptance criteria
aqe requirements parse --source jira --project MYAPP

# Build traceability matrix
aqe requirements trace --requirements reqs/ --tests tests/

# Generate BDD scenarios
aqe requirements bdd --story US-123 --output features/

# Check requirements coverage
aqe requirements coverage --sprint current

エージェントのワークフロー

// Requirements validation
Task("Validate acceptance criteria", `
  Review acceptance criteria for sprint stories:
  - Check SMART criteria (Specific, Measurable, Achievable, Relevant, Testable)
  - Identify ambiguous requirements
  - Flag missing edge cases
  - Suggest improvements
`, "qe-acceptance-criteria")

// Traceability matrix
Task("Build traceability", `
  Create requirements traceability matrix:
  - Map user stories to test cases
  - Identify untested requirements
  - Find orphan tests (no linked requirement)
  - Calculate coverage metrics
`, "qe-traceability-builder")

要件の操作

1. 受け入れ基準の検証
await acceptanceCriteria.validate({
  source: {
    type: 'jira',
    project: 'MYAPP',
    stories: 'sprint=current'
  },
  validation: {
    specific: true,
    measurable: true,
    achievable: true,
    relevant: true,
    testable: true
  },
  output: {
    score: true,
    issues: true,
    suggestions: true
  }
});
2. トレーサビリティマトリクス
await traceabilityBuilder.build({
  requirements: {
    source: 'jira',
    types: ['story', 'task', 'bug']
  },
  artifacts: {
    tests: 'tests/**/*.test.ts',
    code: 'src/**/*.ts',
    documentation: 'docs/**/*.md'
  },
  output: {
    matrix: true,
    coverage: true,
    gaps: true,
    orphans: true
  }
});
3. BDD シナリオの生成
await bddGenerator.generate({
  requirements: userStory,
  format: 'gherkin',
  scenarios: {
    happyPath: true,
    edgeCases: true,
    errorCases: true,
    dataVariations: true
  },
  output: {
    featureFile: true,
    stepDefinitions: 'skeleton'
  }
});
4. カバレッジ分析
await requirementsCoverage.analyze({
  scope: 'sprint-23',
  metrics: {
    requirementsCovered: true,
    testCasesCoverage: true,
    automationCoverage: true,
    riskAssessment: true
  },
  report: {
    summary: true,
    details: true,
    recommendations: true
  }
});

トレーサビリティマトリクス

interface TraceabilityMatrix {
  requirements: {
    id: string;
    title: string;
    type: string;
    priority: string;
    status: string;
    linkedTests: string[];
    linkedCode: string[];
    coverage: 'full' | 'partial' | 'none';
  }[];
  tests: {
    id: string;
    name: string;
    type: 'unit' | 'integration' | 'e2e';
    linkedRequirements: string[];
    automated: boolean;
  }[];
  coverage: {
    requirementsCovered: number;
    requirementsPartial: number;
    requirementsUncovered: number;
    orphanTests: number;
  };
  gaps: {
    requirement: string;
    missingCoverage: string[];
    risk: 'high' | 'medium' | 'low';
  }[];
}

BDD との統合

# Generated feature file
Feature: User Registration
  As a new user
  I want to create an account
  So that I can access the platform

  @happy-path
  Scenario: Successful registration with valid details
    Given I am on the registration page
    When I enter valid email "[email protected]"
    And I enter valid password "SecurePass123!"
    And I click the register button
    Then I should see a success message
    And I should receive a confirmation email

  @edge-case
  Scenario: Registration with existing email
    Given a user exists with email "[email protected]"
    When I try to register with email "[email protected]"
    Then I should see an error "Email already registered"

要件の品質

quality_checks:
  acceptance_criteria:
    has_given_when_then: preferred
    is_testable: required
    is_measurable: required
    no_ambiguity: required

  user_story:
    follows_template: "As a <role>, I want <feature>, so that <benefit>"
    has_acceptance_criteria: required
    estimated: preferred

  completeness:
    edge_cases_identified: required
    error_scenarios_covered: required
    non_functional_considered: preferred

スプリントとの統合

await requirementsValidator.sprintReview({
  sprint: 'current',
  checks: {
    storiesComplete: true,
    criteriaValidated: true,
    testsLinked: true,
    coverageAdequate: true
  },
  gates: {
    minCoverage: 80,
    maxUntested: 2,
    requireDemo: true
  }
});

連携

主なエージェント: qe-acceptance-criteria、qe-traceability-builder、qe-bdd-specialist コーディネーター: qe-requirements-coordinator 関連スキル: qe-test-generation、qe-quality-assessment

コメント