Back to Skills

risk-based-testing

proffesor-for-testing
Updated Today
74 views
99
21
99
View on GitHub
Otherriskprioritizationtest-planningcoverageimpact-analysis

About

This Claude skill prioritizes testing efforts by assessing risk through probability and impact analysis. It allocates testing resources proportionally, focusing 60% of effort on critical risks. Use it during test planning and resource allocation to maximize test coverage efficiency.

Documentation

Risk-Based Testing

<default_to_action> When planning tests or allocating testing resources:

  1. IDENTIFY risks: What can go wrong? What's the impact? What's the likelihood?
  2. CALCULATE risk: Risk = Probability × Impact (use 1-5 scale for each)
  3. PRIORITIZE: Critical (20+) → High (12-19) → Medium (6-11) → Low (1-5)
  4. ALLOCATE effort: 60% critical, 25% high, 10% medium, 5% low
  5. REASSESS continuously: New info, changes, production incidents

Quick Risk Assessment:

  • Probability factors: Complexity, change frequency, developer experience, technical debt
  • Impact factors: User count, revenue, safety, reputation, regulatory
  • Dynamic adjustment: Production bugs increase risk; stable code decreases

Critical Success Factors:

  • Test where bugs hurt most, not everywhere equally
  • Risk is dynamic - reassess with new information
  • Production data informs risk (shift-right feeds shift-left) </default_to_action>

Quick Reference Card

When to Use

  • Planning sprint/release test strategy
  • Deciding what to automate first
  • Allocating limited testing time
  • Justifying test coverage decisions

Risk Calculation

Risk Score = Probability (1-5) × Impact (1-5)
ScorePriorityEffortAction
20-25Critical60%Comprehensive testing, multiple techniques
12-19High25%Thorough testing, automation priority
6-11Medium10%Standard testing, basic automation
1-5Low5%Smoke test, exploratory only

Probability Factors

FactorLow (1)Medium (3)High (5)
ComplexitySimple CRUDBusiness logicAlgorithms, integrations
Change RateStable 6+ monthsMonthly changesWeekly/daily changes
Developer ExperienceSenior, domain expertMid-levelJunior, new to codebase
Technical DebtClean codeSome debtLegacy, no tests

Impact Factors

FactorLow (1)Medium (3)High (5)
Users AffectedAdmin onlyDepartmentAll users
RevenueNoneIndirectDirect (checkout)
SafetyConvenienceData lossPhysical harm
ReputationInternalIndustryPublic scandal

Risk Assessment Workflow

Step 1: List Features/Components

Feature | Probability | Impact | Risk | Priority
--------|-------------|--------|------|----------
Checkout | 4 | 5 | 20 | Critical
User Auth | 3 | 5 | 15 | High
Admin Panel | 2 | 2 | 4 | Low
Search | 3 | 3 | 9 | Medium

Step 2: Apply Test Depth

await Task("Risk-Based Test Generation", {
  critical: {
    features: ['checkout', 'payment'],
    depth: 'comprehensive',
    techniques: ['unit', 'integration', 'e2e', 'performance', 'security']
  },
  high: {
    features: ['auth', 'user-profile'],
    depth: 'thorough',
    techniques: ['unit', 'integration', 'e2e']
  },
  medium: {
    features: ['search', 'notifications'],
    depth: 'standard',
    techniques: ['unit', 'integration']
  },
  low: {
    features: ['admin-panel', 'settings'],
    depth: 'smoke',
    techniques: ['smoke-tests']
  }
}, "qe-test-generator");

Step 3: Reassess Dynamically

// Production incident increases risk
await Task("Update Risk Score", {
  feature: 'search',
  event: 'production-incident',
  previousRisk: 9,
  newProbability: 5,  // Increased due to incident
  newRisk: 15         // Now HIGH priority
}, "qe-regression-risk-analyzer");

ML-Enhanced Risk Analysis

// Agent predicts risk using historical data
const riskAnalysis = await Task("ML Risk Analysis", {
  codeChanges: changedFiles,
  historicalBugs: bugDatabase,
  prediction: {
    model: 'gradient-boosting',
    factors: ['complexity', 'change-frequency', 'author-experience', 'file-age']
  }
}, "qe-regression-risk-analyzer");

// Output: 95% accuracy risk prediction per file

Agent Coordination Hints

Memory Namespace

aqe/risk-based/
├── risk-scores/*        - Current risk assessments
├── historical-bugs/*    - Bug patterns by area
├── production-data/*    - Incident data for risk
└── coverage-map/*       - Test depth by risk level

Fleet Coordination

const riskFleet = await FleetManager.coordinate({
  strategy: 'risk-based-testing',
  agents: [
    'qe-regression-risk-analyzer',  // Risk scoring
    'qe-test-generator',            // Risk-appropriate tests
    'qe-production-intelligence',   // Production feedback
    'qe-quality-gate'               // Risk-based gates
  ],
  topology: 'sequential'
});

Integration with CI/CD

# Risk-based test selection in pipeline
- name: Risk Analysis
  run: aqe risk-analyze --changes ${{ github.event.pull_request.files }}

- name: Run Critical Tests
  if: risk.critical > 0
  run: npm run test:critical

- name: Run High Tests
  if: risk.high > 0
  run: npm run test:high

- name: Skip Low Risk
  if: risk.low_only
  run: npm run test:smoke

Related Skills


Remember

Risk = Probability × Impact. Test where bugs hurt most. Critical gets 60%, low gets 5%. Risk is dynamic - reassess with new info. Production incidents raise risk scores.

With Agents: Agents calculate risk using ML on historical data, select risk-appropriate tests, and adjust scores from production feedback. Use agents to maintain dynamic risk profiles at scale.

Quick Install

/plugin add https://github.com/proffesor-for-testing/agentic-qe/tree/main/risk-based-testing

Copy and paste this command in Claude Code to install this skill

GitHub 仓库

proffesor-for-testing/agentic-qe
Path: .claude/skills/risk-based-testing
agenticqeagenticsfoundationagentsquality-engineering

Related Skills

regression-testing

Other

This skill strategically selects and runs regression tests based on code changes and risk, ensuring fixes don't break existing functionality. It analyzes impact, optimizes test execution for faster feedback, and helps manage continuous regression within CI/CD. Use it for verifying changes, planning test suites, or streamlining test execution.

View skill

testing-strategy-builder

Meta

This skill helps developers create comprehensive testing strategies for applications. It provides templates, coverage targets, and structured guidance for unit, integration, end-to-end, and performance testing. Use it when planning a new project, improving existing test coverage, or establishing quality gates.

View skill

test-automation-strategy

Other

This Claude Skill helps developers design and implement effective test automation frameworks by applying the test pyramid, F.I.R.S.T. principles, and design patterns like Page Object Model. It focuses on integrating automation into CI/CD for fast feedback and improved test efficiency. Use it when building new automation strategies or optimizing existing test suites.

View skill

testability-scoring

Other

This skill provides AI-powered testability assessment for web applications using Playwright and optional Vibium integration. It evaluates applications against 10 principles of intrinsic testability including Observability, Controllability, and Stability. Use it when assessing software testability, identifying improvements, or generating testability reports.

View skill