skills/by-role/qa/exploratory-testing/SKILL.md
Run structured exploratory testing sessions using test charters, timeboxing, and heuristics. Use when user says "exploratory testing", "charter-based testing", "explore the app", "unscripted testing", "session-based testing", "find unknown bugs", or needs to test an area without predefined scripts - even if they don't explicitly say "exploratory".
npx skillsauth add qa-aman/claude-skills exploratory-testingInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Exploratory testing is simultaneous learning, test design, and execution. Based on "Exploratory Software Testing" by Elisabeth Hendrickson and "Explore It!" (same author), this approach replaces rigid test scripts with structured investigation using charters, timeboxes, and heuristics.
The core insight: scripted tests only find bugs you already imagined. Exploratory testing finds the bugs you didn't anticipate - the ones that emerge from real usage patterns, unexpected interactions, and system behaviors that scripted coverage can never reach.
A charter defines the scope and mission of one exploratory session. Format:
Explore [area or feature]
Using [technique, tool, or approach]
To discover [information or risk type]
Examples:
One charter = one session. Keep scope narrow enough to complete in 60-90 minutes.
Sessions should be 60-90 minutes. Beyond 90 minutes, attention degrades and notes become inconsistent.
Structure your timebox:
Use a timer. When time is up, stop even if you're mid-investigation. Log what you found and write a follow-up charter for the remaining thread.
Heuristics are structured prompts that direct attention to known failure patterns. The HICCUPPS heuristics (based on Hendrickson and Cem Kaner) are a reliable starting set:
Apply at least 3 heuristics per session. Different heuristics reveal different bug classes.
Notes should capture three categories:
Example note format:
[Observation] Uploading a 4.9 MB file succeeds in 800ms on 3G emulation.
[Anomaly] Uploading a 5.1 MB file shows no error - just hangs indefinitely.
[Question] Is there a max file size limit enforced server-side? Not mentioned in UI.
Do not triage during the session. Log everything, evaluate afterward.
After the timebox ends, review your notes and classify each anomaly:
| Category | Description | |----------|-------------| | Bug | Confirmed unexpected behavior - file for the team |
Write follow-up charters for every Risk item. These become inputs for future sessions.
Share a session note with the team after each session:
Charter: [charter text]
Duration: [actual minutes]
Tester: [your role]
Coverage: [what was explored]
Bugs found: [count and severity]
Risks identified: [count]
Follow-up charters: [count]
Session notes build a coverage record that shows where exploratory effort has been invested.
1. Exploring without a charter Bad: "I'll just click around and see what I find." Good: Write a charter before starting. Aimless exploration wastes time and leaves inconsistent coverage.
2. Ignoring the timebox Bad: Running an open-ended session for 3 hours. Good: 60-90 minutes per session. Longer sessions produce diminishing returns and poor note quality.
3. Triaging bugs during the session Bad: Stopping to file detailed bug reports mid-session. Good: Log anomalies briefly during the session, classify and file after the timebox ends.
4. Using only one heuristic Bad: Always testing with "what does the UI claim" and nothing else. Good: Apply at least 3 different heuristics per session to surface different bug classes.
5. No follow-up charters Bad: Session ends, risks are noted, nothing is scheduled to investigate them. Good: Every Risk item from debrief becomes a charter for the next session.
6. Treating exploratory testing as informal Bad: No notes, no debrief, no session report - "I tested it." Good: Structured notes, timebox discipline, and a session report make exploratory testing auditable and reproducible.
development
Plan a webinar end-to-end using April Dunford's Obviously Awesome positioning framework to find the topic angle that makes the webinar obviously valuable to the right audience. Produces topic positioning, abstract, speaker brief, registration page, promotion sequence, day-of run-of-show, and post-webinar follow-up. Use when the user asks to plan a webinar, virtual event, online workshop, "we need a webinar on X", host a webinar, online masterclass, or any live virtual event with promotion and follow-up. Reads ICP, services, and brand voice from knowledge/.
development
Write long-form thought leadership articles, opinion pieces, industry POV essays, and CEO/founder bylines using the Made to Stick SUCCESs framework (Chip and Dan Heath). Use when the user asks for a long-form article, executive byline, opinion piece, industry POV, manifesto, "explain our point of view on X", or wants to publish an authority-building piece (1200-2500 words). Reads brand voice and positioning from knowledge/.
development
Plan a monthly content calendar across channels using the Content Marketing Matrix (Dave Chaffey, Smart Insights) - Entertain/Inspire/Educate/Convince. Every post gets a quadrant label. The monthly calendar must hit 40% Educate, 40% Inspire+Convince, 20% Entertain. Produces a week-by-week posting schedule with topics, formats, channels, and asset links. Use when the user says "content calendar", "social calendar", "plan next month's content", "what should we post", "content plan", "editorial calendar", "schedule posts for the month", or wants a structured posting plan for LinkedIn, Twitter, email, or blog. Reads brand voice, ICP, and past learnings from knowledge/.
development
Write SEO-optimized long-form articles targeting specific keywords using the They Ask You Answer Big 5 framework (Marcus Sheridan). Articles are categorized by Big 5 type (Cost, Problems, Versus, Best/Reviews, How-To) and structured accordingly. The "answer first" rule applies to every article. Use when the user asks for an SEO article, blog post for ranking, "rank for keyword X", organic content, search-optimized post, pillar page, or content for organic traffic. Includes keyword targeting, search intent matching, internal linking suggestions, and meta tags.