MCP HubMCP Hub
Retour aux compétences

regression-testing

proffesor-for-testing
Mis à jour Today
371 vues
267
56
267
Voir sur GitHub
Autreregressiontest-selectionimpact-analysisci-cdchange-basedrisk-based

À propos

Cette compétence sélectionne et exécute stratégiquement des tests de régression en fonction des modifications de code et de l'analyse des risques. Elle est utilisée pour vérifier que les corrections ne compromettent pas les fonctionnalités existantes et pour optimiser les suites de tests afin d'obtenir un retour plus rapide dans les pipelines CI/CD. Les principales fonctionnalités incluent l'analyse d'impact, la sélection de tests basée sur les changements et la gestion continue de la régression.

Installation rapide

Claude Code

Recommandé
Principal
npx skills add proffesor-for-testing/agentic-qe
Commande PluginAlternatif
/plugin add https://github.com/proffesor-for-testing/agentic-qe
Git CloneAlternatif
git clone https://github.com/proffesor-for-testing/agentic-qe.git ~/.claude/skills/regression-testing

Copiez et collez cette commande dans Claude Code pour installer cette compétence

Documentation

Regression Testing

<default_to_action> When verifying changes don't break existing functionality:

  1. ANALYZE what changed (git diff, impact analysis)
  2. SELECT tests based on change + risk (not everything)
  3. RUN in priority order (smoke → selective → full)
  4. OPTIMIZE execution (parallel, sharding)
  5. MONITOR suite health (flakiness, execution time)

Quick Regression Strategy:

  • Per-commit: Smoke + changed code tests (5-10 min)
  • Nightly: Extended regression (30-60 min)
  • Pre-release: Full regression (2-4 hours)

Critical Success Factors:

  • Smart selection catches 90% of regressions in 10% of time
  • Flaky tests waste more time than they save
  • Every production bug becomes a regression test </default_to_action>

Quick Reference Card

When to Use

  • After any code change
  • Before release
  • After dependency updates
  • After environment changes

Test Selection Strategies

StrategyHowReduction
Change-basedGit diff analysis70-90%
Risk-basedPriority by impact50-70%
HistoricalFrequently failing40-60%
Time-budgetFixed time windowVariable

Change-Based Test Selection

// Analyze changed files and select impacted tests
function selectTests(changedFiles: string[]): string[] {
  const testsToRun = new Set<string>();

  for (const file of changedFiles) {
    // Direct tests
    testsToRun.add(`${file.replace('.ts', '.test.ts')}`);

    // Dependent tests (via coverage mapping)
    const dependentTests = testCoverage[file] || [];
    dependentTests.forEach(t => testsToRun.add(t));
  }

  return Array.from(testsToRun);
}

// Example: payment.ts changed
// Runs: payment.test.ts, checkout.integration.test.ts, e2e/purchase.test.ts

CI/CD Integration

# .github/workflows/regression.yml
jobs:
  quick-regression:
    runs-on: ubuntu-latest
    timeout-minutes: 15
    steps:
      - name: Analyze changes
        id: changes
        uses: dorny/paths-filter@v2
        with:
          filters: |
            payment:
              - 'src/payment/**'
            auth:
              - 'src/auth/**'

      - name: Run affected tests
        run: npm run test:affected

      - name: Smoke tests (always)
        run: npm run test:smoke

  nightly-regression:
    if: github.event_name == 'schedule'
    timeout-minutes: 120
    steps:
      - run: npm test -- --coverage

Agent-Driven Regression

// Smart test selection
await Task("Regression Analysis", {
  pr: 1234,
  strategy: 'change-based-with-risk',
  timeBudget: '15min'
}, "qe-regression-risk-analyzer");

// Returns:
// {
//   mustRun: ['payment.test.ts', 'checkout.integration.test.ts'],
//   shouldRun: ['order.test.ts'],
//   canSkip: ['profile.test.ts', 'search.test.ts'],
//   estimatedTime: '12 min',
//   riskCoverage: 0.94
// }

// Generate regression test from production bug
await Task("Bug Regression Test", {
  bug: { id: 'BUG-567', description: 'Checkout fails > 100 items' },
  preventRecurrence: true
}, "qe-test-generator");

Agent Coordination Hints

Memory Namespace

aqe/regression-testing/
├── test-selection/*     - Impact analysis results
├── suite-health/*       - Flakiness, timing trends
├── coverage-maps/*      - Test-to-code mapping
└── bug-regressions/*    - Tests from production bugs

Fleet Coordination

const regressionFleet = await FleetManager.coordinate({
  strategy: 'comprehensive-regression',
  agents: [
    'qe-regression-risk-analyzer',  // Analyze changes, select tests
    'qe-test-executor',             // Execute selected tests
    'qe-coverage-analyzer',         // Analyze coverage gaps
    'qe-quality-gate'               // Go/no-go decision
  ],
  topology: 'sequential'
});

Related Skills


Remember

With Agents: qe-regression-risk-analyzer provides intelligent test selection achieving 90% defect detection in 10% of execution time. Agents generate regression tests from production bugs automatically.

Skill Composition

  • Test failing? → Use /test-failure-investigator to diagnose root cause
  • File a bug → Use /bug-reporting-excellence for proper bug reporting
  • Test selection → Use /risk-based-testing for risk-based prioritization

Gotchas

  • Agent defaults to "run everything" despite being told to select — explicitly constrain with --affected or file list
  • Change-based selection misses transitive dependencies — a model change can break a controller test 3 hops away
  • Flaky tests in regression suites erode trust faster than missing tests — quarantine immediately, don't skip
  • Agent may report "0 regressions" when tests simply weren't run — verify test count in output, not just pass/fail
  • Running full regression in containers often OOMs — use --workers=2 and --shard for CI environments

Dépôt GitHub

proffesor-for-testing/agentic-qe
Chemin: .claude/skills/regression-testing
agenticqeagenticsfoundationagentsquality-engineering

Compétences associées

test-automation-strategy

Autre

This Claude Skill helps developers design and implement effective test automation frameworks by applying the test pyramid, design patterns like Page Object Model, and CI/CD integration. It's used when building automation frameworks or improving test efficiency to detect anti-patterns and ensure robust testing. The skill utilizes specialized agents for test generation, execution, coverage analysis, and flaky test detection.

Voir la compétence

github-release-management

Autre

This Claude Skill automates GitHub release workflows using AI swarm coordination for versioning, testing, deployment, and rollback. It's ideal for developers needing automated CI/CD pipelines with intelligent changelog generation and multi-platform deployment management. Use it when you want to orchestrate complex releases with minimal manual intervention.

Voir la compétence

Verification & Quality Assurance

Autre

This skill provides automated quality verification for code and agent outputs using truth scoring and quality checks. It automatically rolls back changes that fall below a 0.95 accuracy threshold, ensuring codebase reliability. Use it for CI/CD integration and maintaining high-quality standards in development workflows.

Voir la compétence

github-workflow-automation

Autre

This skill automates GitHub Actions workflows with AI swarm coordination for intelligent CI/CD pipelines and repository management. It generates, analyzes, and orchestrates workflows using adaptive automation capabilities. Use it when you need to streamline GitHub automation with self-organizing, multi-agent coordination.

Voir la compétence