Test Cases - Software Testing and Automation
1. What is a Test Case?
A test case is a set of conditions and steps used by a tester to check whether a software application behaves correctly.
- It includes inputs, preconditions, expected results, and actual results.
- Ensures the software meets client needs and behaves correctly.
- Helps in systematic testing and future regression testing.
- Test cases come from test scenarios based on requirements.
2. Why Do We Write Test Cases?
- To maintain consistency in testing steps.
- To improve test coverage.
- To help new testers understand the process.
- To avoid missing functionality.
- To reuse for future testing and avoid repetition.
3. When and Who Writes the Test Cases?
- Written when client requirements are received.
- Testing team writes while development is ongoing.
- Used after the product is built and sent for evaluation.
- Test engineers primarily write them, developers may write unit tests.
- Helps maintain clarity and quality of testing.
4. Structure and Template of a Test Case
Header:
- Test Case ID, Release, Version, Application Name, Type, Severity, Status, Precondition, Summary
Body:
- Step No | Description | Input | Expected Result | Actual Result | Status | Comments
Footer:
- Author | Reviewed By | Approved By | Date
5. Important Elements in a Test Case
Precondition:
Test Cases - Software Testing and Automation
- Setup needed before testing begins.
Test Results:
- Inputs and what output is expected.
Severity:
- Tells importance: Critical, Major, Minor.
- Example (Gmail): Login - Critical, Help - Minor, Compose - Critical.
6. Types of Test Cases
Functional Test Cases:
- Test features and outputs based on inputs.
- Use correct terminology and object names.
- Avoid unnecessary steps, be accurate.
Integration Test Cases:
- Test interaction between modules.
- Do not duplicate functional tests.
System Test Cases:
- Test the entire application as a whole.
7. Other Key Points
- Test cases must be clear, accurate, and reusable.
- Use simple language.
- Expand description area if required.
- Helps even new testers execute correctly.
8. Example - Gmail Module Severity
Login - Critical
Help - Minor
Compose Mail - Critical
Settings - Minor
Inbox - Critical
Sent Items - Major
Test Cases - Software Testing and Automation
Logout - Critical
9. Conclusion
- Test cases verify that software meets requirements.
- Improve quality and consistency.
- Help testers and ensure coverage.
- Lead to reliable, efficient software.