본문으로 건너뛰기
cccskills
무료GitHub에 공개

risk-based-testing

Allocate testing effort based on risk and failure likelihood using Google's SET/SWE/TE model. Use when user says "risk-based testing", "where should I focus testing", "test coverage strategy", "prioritize what to test", "high risk areas", or needs to decide how to distribute QA effort across a codebase - even if they don't explicitly say "risk-based".

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

설치 방법 보기

포함된 파일(1)

  • SKILL.md5.4 KB

SKILL.md(원문)

설치하기 전에 에이전트에게 전달되는 지시 내용을 확인할 수 있습니다.

Overview

Risk-based testing focuses effort where failures cause the most harm. Based on "How Google Tests Software" by James Whittaker, Jason Arbon, and Jeff Carollo, this approach maps product risk to test investment - instead of testing everything equally, you test the highest-risk components most deeply.

The core insight: not all code carries equal risk. A bug in a payment flow is not the same as a bug in a tooltip. Risk-based testing makes that distinction explicit, then allocates testing hours accordingly.

Workflow

Step 1: Map product into Attribute Component Capability (ACC) format

Break the product into three levels:

  • Attribute: Quality characteristics users care about (reliable, secure, fast, correct)
  • Component: Major subsystems or modules (auth, payments, search, notifications)
  • Capability: Specific behaviors each component must support (login with OAuth, process refund, filter by date)

ACC gives you a structured map of what exists to test. Without it, coverage is guesswork.

Step 2: Score each capability for risk

For every capability in your ACC map, assign two scores (1-3 scale):

Dimension123
Likelihood of failureLow - stable, rarely changedMedium - some recent changesHigh - new, complex, frequently modified
Impact of failureLow - cosmetic, no user harmMedium - UX degraded, workaround existsHigh - data loss, security, revenue, blocking

Risk score = Likelihood x Impact (range: 1-9)

  • Score 7-9: test deeply with all test types
  • Score 4-6: standard coverage
  • Score 1-3: smoke test only

Step 3: Assign testing effort by risk tier

High risk (7-9):

  • Unit tests for every branch
  • Integration tests for all component interactions
  • Exploratory testing sessions
  • Security or performance testing where relevant

Medium risk (4-6):

  • Unit tests for happy path and key edge cases
  • Integration test for primary flow
  • One exploratory session

Low risk (1-3):

  • Smoke test: does it load, does the core path complete
  • No deep coverage needed

Step 4: Map risk to test roles (SET/SWE/TE split)

Google's three engineering roles cover different risk surfaces:

  • SET (Software Engineer in Test): Builds test infrastructure, writes unit and integration tests for high-risk components. Works closest to the code.
  • SWE (Software Engineer): Writes unit tests for their own code. Responsible for low-to-medium risk coverage.
  • TE (Test Engineer): Designs exploratory and system-level tests for high-risk capabilities. Thinks from the user perspective.

Map high-risk capabilities to TE-led sessions. Map medium-risk to SWE-owned tests. Low-risk stays in automated smoke suites.

Step 5: Build a risk register

Document findings in a table:

CapabilityComponentLikelihoodImpactRisk ScoreTest TypeOwner
Process refundPayments236Unit + integrationSET
Login with OAuthAuth339Full suite + TE sessionSET + TE
Update avatarProfile111Smoke onlySWE

Update this register at the start of each sprint as code changes shift the risk landscape.

Step 6: Revisit after significant changes

Risk scores change. A stable module that gets refactored jumps to high likelihood. A new payment method adds high impact. Review and re-score whenever:

  • A component is significantly changed or refactored
  • A production incident reveals a coverage gap
  • New features are added to an existing module

Anti-Patterns

1. Equal coverage everywhere Bad: Spending the same testing effort on user avatar upload and the payment processor. Good: Score risk, allocate proportionally. Low-risk code gets smoke tests. High-risk code gets deep coverage.

2. Risk scoring without impact Bad: Scoring only likelihood - "this code is new so it's risky." Good: Always multiply by impact. New code in a non-critical path is still low priority.

3. Static risk register Bad: Score risk once at project kickoff and never revisit. Good: Update scores at sprint start when code changes. Treat the register as a living document.

4. Treating all bugs as equal Bad: Triaging all bugs with the same urgency regardless of location. Good: A bug in a high-risk capability escalates immediately. A bug in a low-risk capability queues.

5. No owner per capability Bad: Risk register exists but no one knows who tests what. Good: Every high-risk capability has a named role owner (SET, TE, or SWE).

Quality Checklist

  • Product mapped into ACC format (Attribute, Component, Capability)
  • Every capability has a likelihood score and an impact score (1-3 each)
  • Risk tiers drive test type assignment (deep vs. standard vs. smoke)
  • High-risk capabilities have named role owners
  • Risk register is documented and shared with the team
  • Plan exists to re-score after major code changes or incidents
  • No personal names, project-specific paths, or internal tool references in output

리뷰

아직 리뷰가 없습니다. 사용해 본 소감을 남겨 주세요.

댓글

로그인 없이 쓸 수 있습니다. 사용 후기, 질문, 작동하지 않은 환경 등을 편하게 남겨 주세요.

아직 댓글이 없습니다. 첫 댓글을 남겨 보세요.

보내면 바로 공개됩니다. 이메일 주소나 전화번호 같은 개인 정보는 쓰지 마세요. URL은 2개까지입니다.

0 / 1,000자

이 양식은 reCAPTCHA로 보호되며 Google 개인정보처리방침 및 서비스 약관이 적용됩니다.

같은 저장소의 스킬

Rate any product, feature, or experience on the 11-star scale (Brian Chesky's Airbnb thought experiment). Use when user says "rate this experience", "11-star", "star rating", "experience audit", "how good is this", "experience rating", "product audit", "quality assessment", or wants to evaluate product quality and identify improvement paths. Also trigger when user wants to benchmark a feature, assess where a product stands, or map out what "great" looks like - even if they don't explicitly say "11-star".

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

qa-aman/claude-skills212026년 10월 19일 업데이트

Generate A/B copy variants grounded in Eugene Schwartz's awareness and market-sophistication stages and John Caples' tested-headline discipline. Every variant declares its angle, the awareness stage it targets, and a falsifiable hypothesis, and the skill recommends which pair to test first and what delta counts as signal. Use when the user says "A/B test this", "write variants", "give me options", "test different angles", "copy variants", "ab copy", "test this headline", "multiple versions", "which version is better", or wants to test copy before publishing. For reviewing copy that already exists, see copy-review. For sample size and stopping rules, see growth-experiment. For diagnosing a page rather than its words, see page-cro. For full paid ad sets by platform, see ad-campaign-writer.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

qa-aman/claude-skills212026년 10월 19일 업데이트

Design statistically rigorous experiments to test data science hypotheses. Use when the user says "design an A/B test", "run an experiment", "test this hypothesis", "is this difference significant", "how many samples do I need", "randomized controlled trial", "causal inference", "uplift test", "holdout group", "significance test", "power calculation", "avoid p-hacking", or needs to determine whether an observed effect is real before making a product or model decision. For lean build-measure-learn product experiments without the statistics, use experiment-design instead.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

qa-aman/claude-skills212026년 10월 19일 업데이트

Write measurable acceptance criteria for requirements or user stories. Use when the user says "write acceptance criteria", "definition of done", "how do we test this", "fit criteria", "given when then", "Gherkin scenarios", "what does done look like", "testable conditions", "how will we know this works" - even if they don't explicitly say "acceptance criteria".

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

qa-aman/claude-skills212026년 10월 19일 업데이트

Build a strategic account plan for winning, retaining, or expanding a named account. Use when the user says "build an account plan", "strategic account planning", "how do I grow this account", "account expansion strategy", "whitespace analysis", "QBR prep", "key account review", "map the stakeholders in this account", "land and expand plan", "how do I break into [company]", or wants a structured strategy for a specific account.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

qa-aman/claude-skills212026년 10월 19일 업데이트

Write paid ad copy for LinkedIn, Google, Meta, and YouTube. Produces multiple variants per platform, each targeting a different Eugene Schwartz awareness level and Cialdini persuasion principle. Use when the user asks for ad copy, ad variants, "write LinkedIn ads", Google ads, Meta ads, paid social copy, ad headlines, or wants creative for a paid campaign. Reads brand voice, ICP, and positioning from knowledge/. For organic social posts, see linkedin-post or social-calendar. For the landing page the ad points at, see landing-page-writer. For testing variants, see ab-copy-writer.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

qa-aman/claude-skills212026년 10월 19일 업데이트

qa-aman의 스킬 모두 보기

이 스킬의 문제 신고