Welcome to my ultimate guide on test case development and execution.
In this article, we will explore the importance of test cases, their components and how to write an effective test case using template.
Whether you’re a seasoned tester or just starting out, this guide will equip you with the knowledge and template to become a pro tester.
What is a Test Case?
Before we dive into the nitty-gritty details, let me first explain what a test case is.
In simple terms, a test case is a crucial document created by testers to ensure the quality and reliability of software features or functions.
It serves as a roadmap, providing step-by-step instructions to make sure that the software performs as expected.
The Key Components of a Test Case
To create comprehensive and effective test cases, it is essential to include the following sections in your test case :
I use the following template.
The header section of a test case contains important information for identification and management purposes. It includes:
- Test case name: This uniquely identifies the test case and can also be represented by a test case ID. I adopt a naming convention such as
<functionality><X001>. Where X=1 or 2, with 1 denoting positive test cases and 2 representing negative test cases.
- Test scenario: This field describes the scenario to which the test case belongs. A scenario can have multiple test cases, enabling traceability and ensuring comprehensive test coverage.
- Requirement/Story: Here, I specify the client requirement or user story for which the test case is written. This establishes a higher-level mapping for requirement-test case traceability, allowing easy modification or removal of test cases based on the needs.
- Developed by: This field indicates the author of the test case, providing visibility into the individual responsible for its creation.
- Test case priority: Test case priority determines the order in which the test cases should be executed.
I indicate the priorities using numbers (1, 2, or 3). Some projects also terms like “Critical,” “High,” and “Medium.”
During smaller testing cycles, it is recommended to focus on executing Priority 1 test cases first, with Priority 2 test cases executed if time permits.
- Test case status: This field reflects the current status of the test case, whether it is active or inactive. Regularly revisiting the status helps identify changes in functionality or user flows, ensuring the relevance and validity of the test cases.
- Reviewed by: A peer review of test cases is crucial for maintaining their quality. This field indicates the person who reviewed the test cases, fostering collaboration and knowledge sharing among team members.
- Review date: This denotes the date when the final review of the test case was conducted.
- Review status: The review status field provides insights into the current status of the test case review process, indicating whether it is “In Progress,” “Reviewed,” or “Returned” for further modifications.
The details section forms the core of the test case, capturing the steps, actions, expected results, and actual results. It includes:
- Steps: Each step in the test case is assigned a serial number for easy reference and execution.
- Action: The action column outlines the specific action to be performed on the application under test. It serves as the heart of the test case, providing clear instructions for the tester. For example, actions can include entering text in a username field or clicking on an “OK” button.
- Test data: This column specifies the data used in each step, providing the necessary input for the application.
I separate test data from the actions.
Separating test data from the action itself ensures clarity and enhances test case maintainability.
- Expected result: Every action performed in a test case should have an expected result. This column describes the expected behavior of the application based on the action performed. The expected result is derived from the client requirements or user stories and serves as a benchmark for evaluating the actual behavior of the application.
- Actual result: In this section, I enter the current behavior of the application in response to the performed action. It describes the outcome observed during the execution of the test case.
For example, it can indicate whether the expected result was achieved or if any errors or unexpected behaviors occurred, such as displaying an invalid login error.
- Pass/Fail: Based on a comparison between the expected and actual results, I mark the test case as either “Pass” or “Fail.”
If the actual result is same the expected result, I pass it. Conversely, if there is a deviation or discrepancy, I mark as a fail.
In cases where a specific action could not be performed due to blockers in previous steps, I mark as “NA.”
- Defect number: If a step fails during execution, I report a new bug in the bug tracking tool and record the corresponding defect number in this column.
If the bug is already known and documented, I enter that existing bug number.
- Remarks: I use this column to highlight any specific notes, comments, or observations related to the test case or its execution.
It allows me to provide additional context or explanations where necessary.
- Executed by: Here, the tester enters their name to indicate who executed the test case.
It helps me in tracking test execution and assigning responsibility.
- Execution date: The execution date column records the date when the test case was executed, enabling traceability and providing a timeline of testing activities.
Download Test Case Development
Now you know how I use test case template and execute. You now have a solid understanding of test cases and their essential components. By following a structured template like the one described above, you can create robust test cases.
Remember, effective test case development and execution play a vital role in ensuring the quality and reliability of software applications.
Whether you choose to create your test case template in MS Excel or utilize a dedicated test management tool, the key is to capture all necessary details and maintain consistency in your documentation. You can download and use this comprehensive test case template, embrace the role of a professional tester, and elevate your testing skills to new heights.