What are the key steps in implementing a Top-Down approach and why is it recommended more as compared to the Bottom-Up approach of End-to-End Testing?
The three key steps in implementing a top-down approach:
1. Define workflows from the user perspective
2. Decompose the workflows
3. Decide what you can do
The most successful end-to-end tests are built by starting with defining the experience you want your end users to have and what the workflows will look like based off these experiences. You can then break the workflow down and determine from there, whether or not you have existing tests that address each stage of the user journey and if not, that’s what you need to build next.
With the top down approach, there are two vital SLDC pieces you’ll need: well defined requirements and a solid framework
Advantages of top down approach
- Advantageous if major flaws occur toward the top of the program.
- Once the I/O functions are added, representation of test cases is easier.
- Early skeletal Program allows demonstrations and boosts morale.
- Fault Localization is easier.
- Possibility to obtain an early prototype.
- Critical Modules are tested on priority; major design flaws could be found and fixed first.