Skip to content
Flows
QA Intermediate · 60-120 minutes

Test Every User Path

Systematically walk every path a user can take and verify each works - the complete functional test pass.

Start Route · 5 steps

The route

5 steps to Done

  1. 01

    Map every user path

    You test what you have mapped - build the complete path inventory.

    Preview prompt + verify gate ▾

    Map every user path in this app. Produce a table organized by persona/state (new visitor, logged-out, new user, returning user, admin if exists): each path as a numbered sequence of actions (e.g. 'land on home -> search X -> open result -> start action -> complete'). Include: all happy paths, alternate paths (back buttons, cancels, edits), and error paths (invalid input, missing data, unauthorized access). Number every path for tracking.

    • All personas/states covered
    • Error paths are included per feature
    • Paths are concrete action sequences
  2. 02

    Execute the happy paths

    Prove the core promises work end to end first.

    Preview prompt + verify gate ▾

    Execute every happy path from the map in a real session. For each: perform the actions exactly, record PASS/FAIL with what you observed at each step (including data persisting where expected - refresh to confirm), and capture any friction even on passing paths (slow loads, confusing labels). Use a fresh account where the path implies one. Report the results table.

    • Every path was actually performed
    • Persistence checked with refreshes
    • Friction notes captured
  3. 03

    Execute alternate and error paths

    Real users cancel, go back, and type garbage - test that world.

    Preview prompt + verify gate ▾

    Execute every alternate and error path. Alternates: back/cancel mid-flow (state preserved or cleanly reset?), editing existing data, repeating actions. Errors: invalid/empty/hostile input in every form, direct URLs to unauthorized or nonexistent resources, actions on deleted items, double submissions. Record PASS/FAIL per variation - graceful handling (visible message, no crash, no silent loss) is the bar.

    • Every form was fed invalid input
    • Unauthorized/nonexistent access tested
    • Grace, not just survival, was assessed
  4. 04

    Fix all failures

    Convert the FAIL list to fixes, worst-first.

    Preview prompt + verify gate ▾

    Fix every FAIL from the executed paths, ordered by severity (data loss > blocked core path > bad error handling > friction). For each: diagnose the cause, implement the fix, then RE-RUN the exact failed path to verify, and note the evidence. Do not batch-claim fixes - each failed path gets its own re-run. Update the results table as you go.

    • Fixes ordered by severity
    • Each fix verified by re-running its path
    • The table reflects final state
  5. 05

    Final regression sweep

    Fixes break things - run the full map once more.

    Preview prompt + verify gate ▾

    Run the complete path map one final time (happy, alternate, error) as a regression sweep, since fixes can break previously-passing paths. Record the final PASS/FAIL table. Anything still failing gets fixed and the affected section re-run. Deliver the final table plus a short list of known limitations consciously accepted (with reasons).

    • The full map was re-run after fixes
    • New regressions were caught and fixed
    • Known limitations are explicit