The document discusses writing test cases in Agile, including defining a test case, sample test case templates, characteristics of a good test case, typical fields in a test case, different levels of test cases, practical approaches to creating Agile test cases, reasons for writing test cases, pros and cons of writing test cases, and references for further information.
2. What is a
test Case
IEEE Standard 610 (1990) defines test case as follows:
A set of test inputs, execution conditions, and expected results developed for a
particular objective, such as to exercise a particular program path or to verify
compliance with a specific requirement.
4. A Good
Test Case
1. Maintainable
2. Repeatable
3. Traceable
4. Efficient
5. Executable by other Testers
6. Independently executable
5. Fields in
test cases:
1. Test case id
2. Test Title/Summary
3. Prerequisite
4. Test Description
5. Test Data
6. Steps to be Executed
7. Expected Result
8. Actual Result
6. Levels
Level 1: Basic test cases from the available specification and user
stories.Based on Business and Functional/Technical requirements, use cases
and Technical design documents
Level 2: Practical stage in which writing test cases depend on actual functional
and system flow of the application.
Level 3: This is the stage in which you will group some test cases and write a
test procedure. Test procedure is nothing but a group of small test cases.
Level 4: Automation of the project. Saves time in regression testing
7. Practical
Approach to
Creating Agile
Test Cases
● Test case discovery happens throughout the sprint process.
● Exploratory testing will uncover the hidden cases and expand to better
coverage.
● Overall, creating test cases in agile is a challenging process.
● Start with happy path and take following step by step approach to expand
coverage.
8. Why we write
Test Cases
● To assure Quality
● To have better test coverage
● To have consistency in test execution
● To avoid training every new test engineer on the product
● To depend on process rather than a person
● To be used as proof to client for Test areas covered
9. Pros
● Reused again and again(Regression/Retest)
● Form basis for automated test cases down the line
● You find black holes of your design which aren’t covered with user stories,
or requirements
● To provide documentary evidence of exactly what you tested
● Helps in adhering to legal requirements
● Can be used to provide estimate for regression time by QA
10. Cons
● Maintaining test cases a problem due to changing requirements.
● Capturing all scenarios in test cases is a challenge;exploratory testing helps
in agile.
● Test cases are sometimes not worth writing for very small projects(duration)