A one-hour exploratory test session template
Exploratory testing fails when it's unstructured wandering. Here's the one-hour, charter-driven template I use to make it focused, repeatable, and easy to report.
part ofManual QA that still mattersThe complaint I hear about exploratory testing is always the same: "it's just clicking around." It can be — if you skip the part that makes it work. A good session is time-boxed, aimed at a single charter, and produces notes someone else can read. This is the template I run, broken into the minutes I actually spend on each part.
The charter (5 minutes)
Before touching the app, write one sentence: explore [area] using [approach] to discover [information]. For example: "Explore the checkout flow using invalid and partial payment data to discover error-handling gaps." The charter is what keeps the session from becoming aimless — when you notice yourself testing something outside it, you either note it for later or write a new charter. This is the same discipline that makes exploratory testing genuinely valuable rather than a synonym for "no plan."
Setup and recon (10 minutes)
Get the environment ready and do a quick orientation pass: what are the inputs, the states, the boundaries? Open dev tools so you can see network calls and console errors as you go — half of the bugs worth finding announce themselves in the console before the UI shows anything. Note the build/version you're testing so the report is reproducible.
The session (35 minutes)
This is the core. Work through the charter using explicit test ideas, not random clicks. I keep a running list of heuristics in view and apply them deliberately:
Exploratory heuristics to apply during the session
- Boundaries: zero, negative, max length, empty, one-over-the-limit
- Interruption: navigate away mid-action, refresh, back button, double-submit
- Bad input: wrong type, special characters, pasted whitespace, emoji
- State: do it out of order, repeat it, do it when already done
- Network: slow it down, kill it mid-request, see what the UI claims happened
- Permissions: try it as the wrong role or while logged out
The rule that makes this work: when you find something interesting, follow it, but write down what you skipped to do so. A bug is rarely alone — the area around it is where the next two live. Capture each finding as you go with enough detail to reproduce it later: what you did, what happened, what you expected.
Debrief and notes (10 minutes)
Stop on time. Spend the last ten minutes turning your scratch notes into something a developer or lead can act on. I capture four things: what I covered, what I found (bugs with repro steps), what I didn't get to (the skipped threads), and questions raised. That last bucket is underrated — "is it intended that you can submit this twice?" is often more valuable than a confirmed bug.
The "didn't get to" list is your charter for next time. One session almost never finishes an area; it tells you where the next session should aim.
Why the time-box matters
The hour isn't arbitrary. Long enough to get past the surface, short enough that you stay sharp and the debrief is fresh. Two focused one-hour sessions with clear charters beat a whole vague afternoon, because each one produces a written artifact and a clear next step. That's the difference between exploratory testing as a documented technique and "clicking around" — same activity, completely different value.
// RELATED QA.CODES RESOURCES
Course
Template
// related
The QA weekly status report I'd actually send
A short, risk-first status format: lead with a one-line risk verdict, then what's at risk, key findings, light coverage numbers, and explicit asks — built to drive a decision.
What good QA handover notes look like
Write an operating manual for the arriver, not a diary: current state, setup, known issues with status, gotchas, and pointers — so someone can take over without asking you.