The Software Testing Course
    test planningfundamentals

    Writing a Test Plan That People Actually Use

    Part 7 of the Software Testing Course: what belongs in a test plan, what to leave out, and how to keep it a living document instead of shelfware.

    Last updated: July 13, 2026
    by Manta AI Team4 min read

    Most test plans are written once, circulated for a round of approvals, and never opened again. A useful test plan is the opposite: short, specific, and updated as the team learns. This part covers what to put in one and — just as important — what to leave out.

    What a test plan is for

    A test plan answers three questions for a specific release or feature: what are we testing, how, and how do we know we're done. Its value is alignment before the work starts, so that "is this tested?" has a documented answer instead of becoming an argument in the release meeting.

    It is not a compliance artifact. If your test plan is twenty pages, follows a heavyweight template, and nobody reads past the first section, it's failing at its only job. The format should be whatever your team will actually keep current — often a section in the feature's design doc or a structured comment on the ticket.

    What belongs in it

    • Scope. What's being tested, and — explicitly — what isn't. "We are not testing the legacy import path this release" is as valuable as any inclusion, because it makes a deliberate decision visible instead of leaving a silent gap.
    • Risk areas. Where you think this is most likely to break, and why. "The new caching layer means stale data is the top risk" tells everyone where to concentrate. This section drives the rest of the plan.
    • Approach per area. Which layer covers what: unit and integration for the logic, a scripted end-to-end check for the exact assertion that must hold, autonomous coverage for breadth, an exploratory session for the risky new flow. See choosing your test distribution.
    • Test scenarios. A list of scenarios — things to verify, one line each — not fully written test cases. "A user with an expired card is prompted to update it before renewal" is a scenario. The steps to check it are the suite's job, not the plan's.
    • Entry and exit criteria. When can testing start (build deployed to staging, test data seeded), and when is it done (all scenarios covered, no open high-severity defects, critical journeys passing). See entry and exit criteria.
    • Environments and data. Where testing runs and what state it needs — which staging environment, which test accounts, any data that has to be seeded first.
    • Owners. Who is responsible for each part. A plan with no names is a plan with no accountability.

    What to leave out

    • Restating the requirements. Link to them. Copying them in guarantees the two drift apart.
    • A step-by-step for every test case. That's the test suite. The plan says what to verify; the suite says how.
    • Boilerplate about testing philosophy. Nobody reads it, and it pads the document past the point where people will engage with it.
    • Anything you won't keep current. An out-of-date section is worse than a missing one, because people trust it.

    A lightweight example

    For a single feature, the whole plan can live in the ticket:

    Scope: the new bulk-export feature. Not testing: the existing single-record export. Top risks: large exports timing out; permission check missing on the bulk endpoint; CSV encoding of non-ASCII names. Approach: unit tests for the CSV formatting; one scripted E2E test asserting a 3-record export has the right columns and totals; an autonomous run over the admin area; a 30-minute exploratory session on large exports and permissions. Done when: those pass, no open high-severity bugs, and an export of 10k rows completes under 30s.

    That's a real test plan. It fits in a comment, and everyone knows what's covered.

    Keeping it alive

    A test plan is a working document, not a deliverable. When you discover a new risk area mid-testing, add it. When a scenario turns out not to matter, cross it out. When the exit criteria prove too strict (blocking a release over a cosmetic bug) or too loose (a regression slipped through), adjust them and write one line about why. A plan that reflects what the team actually did becomes something the next release can learn from; a plan frozen at its approved state is archaeology.

    Scale the formality to the stakes. A payments change or a data migration warrants a real plan with named owners and explicit criteria. A copy tweak warrants a sentence.

    The takeaway

    A test plan is a short alignment document: scope (including exclusions), risk areas, approach per area, scenarios, done-criteria, environments, and owners — kept current as you learn. Its value is agreement before the work, not paperwork after it. Part 8 covers the artifact testing produces most often: the bug report.