A TEST CASE is a documented set of preconditions (prerequisites), procedures (inputs / actions) and postconditions (expected results) which a tester uses to determine whether a system under test satisfies requirements or works correctly. A test case can have one or multiple test scripts and a collection of test cases is called a test suite.
ISTQB Definition
- test case: A set of preconditions, inputs, actions (where applicable), expected results and postconditions, developed based on test conditions.
- high-level test case: A test case with abstract preconditions, input data, expected results, postconditions, and actions (where applicable).
- low-level test case: A test case with concrete values for preconditions, input data, expected results and postconditions and detailed description of actions (where applicable).
Table of Contents
Test Case Template
A test case can have the following elements. Note, however, that a test management tool is normally used by companies and the format is determined by the tool used.
| Test Suite ID | The ID of the test suite to which this test case belongs. |
| Test Case ID | The ID of the test case. |
| Test Case Summary | The summary / objective of the test case. |
| Related Requirement | The ID of the requirement this test case relates/traces to. |
| Prerequisites | Any prerequisites or preconditions that must be fulfilled prior to executing the test. |
| Test Script / Procedure |
Step-by-step procedure to execute the test. |
| Test Data | The test data, or links to the test data, that are to be used while conducting the test. |
| Expected Result | The expected result of the test. |
| Actual Result | The actual result of the test; to be filled after executing the test. |
| Status | Pass or Fail. Other statuses can be ‘Not Executed’ if testing is not performed and ‘Blocked’ if testing is blocked. |
| Remarks | Any comments on the test case or test execution. |
| Created By | The name of the author of the test case. |
| Date of Creation | The date of creation of the test case. |
| Executed By | The name of the person who executed the test. |
| Date of Execution | The date of execution of the test. |
| Test Environment | The environment (Hardware/Software/Network) in which the test was executed. |
Test Case Example / Test Case Sample
| Test Suite ID | TS001 |
| Test Case ID | TC001 |
| Test Case Summary | To verify that clicking the Generate Coin button generates coins. |
| Related Requirement | RS001 |
| Prerequisites |
|
| Test Script / Procedure |
|
| Test Data |
|
| Expected Result |
|
| Actual Result |
|
| Status | Fail |
| Remarks | This is a sample test case. |
| Created By | John Doe |
| Date of Creation | 01/14/2020 |
| Executed By | Jane Roe |
| Date of Execution | 02/16/2020 |
| Test Environment |
|
Writing Good Test Cases
- As far as possible, write test cases in such a way that you test only one thing at a time. Do not overlap or complicate test cases. Attempt to make your test cases ‘atomic’.
- Ensure that all positive scenarios AND negative scenarios are covered.
- Language:
- Write in simple and easy-to-understand language.
- Use active voice instead of passive voice: Do this, do that.
- Use exact and consistent names (of forms, fields, etc).
- Characteristics of a good test case:
- Accurate: Exacts the purpose.
- Economical: No unnecessary steps or words.
- Traceable: Capable of being traced to requirements.
- Repeatable: Can be used to perform the test over and over.
- Reusable: Can be reused if necessary.
Last Updated on September 9, 2025 by STF