Skip to main content
Screendesk
Free tool

Test Case, Test Plan & User Story Template

Fill in a test case, test plan, or user story with Given/When/Then acceptance criteria. Copy as Markdown or plain text, or export CSV for import.

Open source on GitHub

Test case details

One per line.

One per line.

Steps
1.
2.
3.

One per line.

# Log in with valid email and password

**ID:** TC-101  
**Section:** Authentication  
**Priority:** High  
**Type:** Functional

## Preconditions
- A verified user account exists
- The user is logged out

## Test data
- Email: qa.user@example.com
- Password: (from the test vault)

## Steps
| # | Step | Expected result |
|---|------|-----------------|
| 1 | Open the login page | The login form is shown with email and password fields |
| 2 | Enter a valid email and password | Both fields accept the input; the password is masked |
| 3 | Click “Log in” | The user lands on the dashboard within 3 seconds |

## Expected result
The user is logged in and sees their dashboard. A session cookie is set.

## Postconditions
- Log out to reset the session
Best practice

What makes a good test case. Clear enough that anyone on the team gets the same result.

  • One clear outcome

    Each test case checks one behavior with an expected result specific enough that two testers would agree on pass or fail.

  • Repeatable steps

    Steps are short actions anyone on the team can follow, with preconditions and test data stated up front instead of assumed.

  • Traceable

    An ID, a feature or section, and a link back to the user story or requirement make coverage and regressions easy to track.

Fields

Test case fields explained. What each column in the template is for.

Test case template fields
FieldPurposeExample
IDUnique reference used in test runs and bug reportsTC-101
TitleWhat is being verified, in one lineLog in with valid email and password
Section / featureWhere the test lives in your suiteAuthentication
PriorityHow important the test is to runHigh
TypeKind of testingFunctional, regression, smoke
PreconditionsState the system must be in before step 1A verified account exists
Test dataInputs used by the stepsqa.user@example.com
StepsNumbered actions, each with its own expected resultClick “Log in”
Expected resultThe overall outcome that means passThe dashboard loads
PostconditionsCleanup or resulting state after the testLog out
Terms

Scenarios, cases, criteria, and plans. How the documents fit together.

Test scenario, test case, acceptance criteria, and test plan compared
DocumentWhat it isExample
Test scenarioA high-level situation to test, often one lineUser pays with a saved card
Test caseDetailed steps, data, and expected results for one path through a scenarioTC-210: Pay with a saved Visa card
Acceptance criteriaConditions a user story must meet to be accepted, often written as Given/When/ThenGiven I have a saved card, when I pay, then the order is confirmed
Test planThe scope, approach, environments, schedule, and exit criteria for a test effortCheckout redesign test plan, v2.4
FAQ

Frequently asked questions

What should a test case template include?

At minimum: an ID, a title, preconditions, test data, numbered steps with expected results, and an overall expected result. Priority, type, and the section or feature help you organize and filter cases in larger suites.

What is the difference between a test plan and a test case?

A test plan describes the whole testing effort: what is in and out of scope, the approach, environments, schedule, roles, risks, and entry and exit criteria. A test case is a single, specific check with steps and an expected result. One test plan usually covers many test cases.

How do I write acceptance criteria for a user story?

Use the Given/When/Then format: Given describes the starting context, When the action the user takes, and Then the observable outcome. Write one scenario per behavior, including failure paths, and keep each outcome testable.

Can I import these test cases into a test management tool?

Download the CSV. It has one row per test case with columns for ID, title, section, priority, type, preconditions, test data, steps, and expected result. Most test management tools let you map CSV columns to their own fields during import; check your tool’s import guide for required columns.

What happens when a test case fails?

Record the actual result, then file a bug report that references the test case ID, the steps, and the environment. A screen recording with console logs and network requests makes the failure much easier for a developer to reproduce.

Customer support runs on Screendesk.

Start for free