本文へ移動
cccskills
無料GitHub で公開

qa-persona-testing

Tests apps as an ICP persona through browser automation and reports friction, fixes, and risks. Use when running persona-based, ICP, or synthetic-user testing.

インストール方法を見る

含まれるファイル(11)

  • SKILL.md12.8 KB
  • agents/openai.yaml333 B
  • assets/findings-report.md2.3 KB
  • assets/persona-profile.md2.8 KB
  • assets/session-log.md2.1 KB
  • data/sources.json9.3 KB
  • learnings.consolidated.md593 B
  • learnings.md186 B
  • references/browser-execution.md9.2 KB
  • references/persona-construction.md12.3 KB
  • references/reporting-and-validity.md10.7 KB

SKILL.md(原文)

インストールする前に、エージェントに与えられる指示の中身を確認できます。

QA Persona Testing

Turn an evidence-backed ICP or user segment into a behavioral specification, drive its scenarios through browser automation, and report traced defects and preference hypotheses.

This is persona simulation, not E2E test authoring. It finds friction, confusion, trust breaks, and abandonment; it does not replace assertion-based regression tests (qa-testing-playwright) or research with real users (software-ux-research).

Quick Reference

TaskRead or useOutcome
Find/derive the ICP or persona group## Phase 1 — DEFINE + sibling skills tableEvidence-backed persona candidates
Turn a persona into an executable specassets/persona-profile.md + references/persona-construction.mdPersona profile with behavioral traits and scenario pack
Run a browser test session as the personareferences/browser-execution.mdFilled assets/session-log.md per scenario
Keep the simulation honest (anti-sycophancy)references/persona-construction.mdPersona that abandons, complains, and stays in character
Write the improvement reportassets/findings-report.md + references/reporting-and-validity.mdRanked findings, prioritized fixes, validity caveats
Decide what simulation can and cannot claimreferences/reporting-and-validity.mdCorrectly-hedged conclusions

When to Use

  • "Test this app like a {{first-time user / busy accountant / 60-year-old iPad user / our ICP}}"
  • "Would our target customer actually get through onboarding?"
  • "Run a synthetic user / persona-based walkthrough and tell me what to improve"
  • Pre-launch UX sanity pass when real-user testing is not yet feasible
  • Regression of a redesigned flow against the personas that matter commercially

When NOT to Use

SituationUse instead
Writing assertion-based E2E/regression testsqa-testing-playwright
Research with real users (interviews, usability tests, surveys)software-ux-research
Heuristic/accessibility audit without persona framingsoftware-ui-ux-design, qa-testing-accessibility
Validating whether the ICP itself is right for the businessstartup-idea-validation
Testing an LLM agent or bot (agent is the system under test)qa-agent-testing
Load, performance, or security testingqa-testing-performance, qa-security-testing

ASCII Flow

persona-testing request
  -> Phase 1 DEFINE: find ICP / segment (sibling skills + evidence) -> persona candidates
  -> Phase 2 SETUP:  persona profile (traits, budgets, scenario pack, anti-sycophancy contract)
  -> Phase 3 EXECUTE: browser session per scenario as the persona
       +-- Playwright MCP or Chrome DevTools MCP (preferred)
       +-- Playwright script fallback (headless CI)
       -> session log: step trace, think-aloud, friction events, screenshots
  -> Phase 4 REPORT: rank findings by severity, then reproducibility
       -> improvements / avoid-list / keep-list / validity caveats
  -> Hand off: severity>=3 -> qa-testing-playwright regression tests
              preference findings -> software-ux-research real-user validation

Workflow

Phase 1 — DEFINE the profile

Goal: an evidence-backed persona, not an invented stereotype.

  1. Ask (or infer from context) what decision the test must inform: launch readiness, redesign check, conversion friction, accessibility fit.
  2. Source the ICP with the smallest sufficient chain of sibling skills:
Evidence you needSkill to invoke
Who the ICP is at all (segment, JTBD, willingness to pay)startup-idea-validation, startup-gtm-strategy
What real users complain about in this categoryresearch-review-mining, research-painpoint-scanner
Behavioral data from an existing product (funnels, drop-offs)marketing-product-analytics
Persona craft, research method, bias controlsoftware-ux-research
Product context: roadmap, target users already definedproduct-management, project-specific skills
  1. Pick 1-3 personas maximum per run. Prefer one primary ICP plus one edge persona (low tech fluency or accessibility needs) — more personas dilute session depth.
  2. Record provenance and confidence in the persona profile. An assumed persona is allowed but must be labeled assumed and its findings hedged accordingly.

Phase 2 — SETUP the persona

  1. Copy assets/persona-profile.md; fill every field. Behavioral traits (patience, tech fluency, reading style, trust posture, error reaction) are the levers that make the simulation diverge from generic QA — do not leave them at defaults.
  2. Write the scenario pack: 3-7 tasks phrased in the persona's words, each with an entry point, an observable success criterion, and the persona-specific risk it probes.
  3. Adopt the anti-sycophancy contract (in the profile): patience budgets, mandatory abandonment, in-character confusion, no tester knowledge. See references/persona-construction.md for calibration and persona-drift checks.
  4. Configure the environment to match the persona: viewport/device emulation, locale, network throttling if the persona is mobile/low-bandwidth.

Phase 3 — EXECUTE browser sessions

  1. One session = one persona x one scenario. Start each session from the persona's real entry point (marketing page, app store link, shared URL) — not from a deep link the persona would never have.
  2. Drive the app with browser tooling per references/browser-execution.md:
    • Playwright MCP (browser_navigate, browser_snapshot, browser_find, browser_click, ...) — default.
    • Chrome DevTools MCP — when you also need console/network/performance evidence, device/network emulation, or isolated browser contexts per scenario.
    • Playwright script — fallback for CI or when no MCP browser is available.
  3. At every step, log the dual-channel trace into assets/session-log.md: in-character think-aloud + out-of-character observation + evidence (screenshot, console error, latency).
  4. Enforce the persona: act only on what is visible in the snapshot, respect patience budgets, abandon when the persona would. An agent that always completes every task is a broken simulation.
  5. Capture friction events with Nielsen severity 0-4 as they happen.

Phase 4 — REPORT and improve

  1. Aggregate session logs into assets/findings-report.md: rank confirmed mechanical defects by severity, then independent reproducibility; keep unconfirmed observations in a verification queue. Report persona repetition separately; simulated frequency does not estimate real-user prevalence.
  2. Every finding must cite a logged step and, where possible, a persona quote and evidence artifact. No finding without a trace.
  3. Separate three lists: improve (prioritized fixes with expected effect), avoid (changes that would hurt this ICP), keep (flows that passed — protect with regression tests).
  4. Apply the validity rules in references/reporting-and-validity.md: evidenced and independently reproduced mechanical failures (broken flows, errors, dead ends) are confirmed defects; emotional/preference findings are hypotheses for real-user validation. Name the missing analytics or real-user study needed to estimate prevalence or conversion impact.
  5. Hand off follow-ups: severity ≥3 → qa-testing-playwright regression tests; top preference hypotheses → software-ux-research; ICP doubts surfaced by testing → startup-idea-validation.

Known Traps

  • Sycophantic persona: the LLM completes every task and praises the app. Counter: patience budgets and mandatory abandonment rules are in the profile's Anti-Sycophancy Contract — enforce them, and run the sycophancy audit before shipping the report.
  • Persona drift: over a long session the agent tends to slide back into QA-engineer voice (not yet measured at which step count). Counter: re-read the profile at each scenario start; keep the dual-channel log, and flag any step where the persona voice used tester vocabulary.
  • Tester knowledge leak: persona "finds" a page via URL guessing or dev shortcuts. Counter: navigation only via visible UI from the declared entry point.
  • Over-claiming: presenting simulated emotions as user research. Counter: the report's Validity section is mandatory, and preference findings are labeled hypotheses.
  • Persona flattening / stereotyping: demographic caricature instead of behavioral spec. Counter: traits must map to observable behaviors (see profile trait table), and provenance must name evidence.
  • The fidelity trap: flawless persona adherence reads as success but correlates with caricature — models with the highest persona fidelity produce the most stereotyped populations (arXiv:2604.24698). Counter: check sessions for stereotyped behavior as well as drift; discount findings that reduce to "this demographic behaved as expected". See references/persona-construction.md.
  • One giant session: testing all scenarios in one browser context bleeds state (auth, carts, cookies) between scenarios. Counter: fresh context per session.

Navigation

Resources:

Assets:

Related skills:

Verification Notes

  • Browser tooling behavior (Playwright MCP tool names, Chrome DevTools MCP capabilities, emulation flags) drifts fast — verify against current official docs before prescribing exact tool calls.
  • Research claims about synthetic-user validity (what LLM personas do and do not reproduce) must cite the specific study; do not generalize a single benchmark result.
  • Known bugs, framework footguns, and version-specific workarounds must be verified against current primary sources before being treated as current fact.
  • Never present simulated persona reactions as evidence from real users.

Learnings Loop

When prior decisions or pitfalls are relevant, consult learnings.consolidated.md if present; use learnings.md only for needed history or as the available fallback. Otherwise skip both.

After applying it, if you encountered a pattern worth remembering, a mistake worth preventing, or a domain fact that surprised you, append one dated bullet to learnings.md via agents-skills-feedback-loop/scripts/append_learning.py. Do not modify SKILL.md itself.

レビュー

まだレビューはありません。使ってみた感想をお寄せください。

同じリポジトリのスキル

概要と使いどころ

Configures Claude Code hooks and Codex hooks.json/notify. Use when adding PreToolUse guards, Stop hooks, managed hooks, format-on-save, preflight, audits, or worktree/budget hooks.

日本語の概要は準備中です。原文の説明を表示しています。

vasilyu1983/AI-Agents-public952026年10月12日 更新

Configures and hardens Claude Code and Codex MCP servers. Use when connecting databases, APIs, SaaS, building servers, or serving a clearance-filtered knowledge base.

日本語の概要は準備中です。原文の説明を表示しています。

vasilyu1983/AI-Agents-public952026年10月12日 更新

Owns instruction files: AGENTS.md, CLAUDE.md, personal and repo rules. Use when writing, pruning, auditing them, sharing rules across Claude and Codex, or fixing ignored rules.

日本語の概要は準備中です。原文の説明を表示しています。

vasilyu1983/AI-Agents-public952026年10月12日 更新

Creates and audits agent skills: SKILL.md, references, scripts, runtime metadata. Use when writing, validating, or security-reviewing a skill, or fixing truncated skill listings.

日本語の概要は準備中です。原文の説明を表示しています。

vasilyu1983/AI-Agents-public952026年10月12日 更新

Adds per-skill learnings loops for dated patterns, mistakes, and domain facts. Use when wiring skill memory, consolidation, or drift audits.

日本語の概要は準備中です。原文の説明を表示しています。

vasilyu1983/AI-Agents-public952026年10月12日 更新

Chooses subagent, team, workflow, or debate and launches it on Claude Code or Codex. Use when delegating, running agent review boards, or installing shared agents.

日本語の概要は準備中です。原文の説明を表示しています。

vasilyu1983/AI-Agents-public952026年10月12日 更新

vasilyu1983 のスキルをすべて見る

このスキルの問題を報告する