When comparing the frequency and granularity of test planning and execution in products developed under Waterfall and Agile methods, we observed that in Agile: we have more tests, in the story level and we have a progressive increment of test coverage all over the product and higher frequency running those tests.
Let’s try to understand the reason behind this fact. In Agile:
- Test scenarios are more feature oriented and not project oriented;
- Test plan is done in a Story level and should be part of the definition of Ready and test execution part of the definition of done;
Only considering those 2 facts, we note the respect for 2 mandatory test principles:
- Early testing – testing should start as early as possible in the software development life cycle, so any defect can be captured in requirements and design phase.
- Absence of error is a fallacy – Software is defect free but doesn’t meet the needs and requirements of the client. In Agile This doesn’t apply: tests are plan to cover features and features are oriented to provide value for the customer.
In the image below you can see my illustration of the famous V model where in each phase of the Software Development Life-cycle we can start to plan different test type.