Now lets looks at the question below:
- What is the biggest benefit or goal ?
- What is the cost ?
- How is the team?
- What training team needs?
- What is holding automation back?
The best way to start is to look into smaller objectives but add test slowly to make it mature.
Advantages: Each testcases are atomic in nature so no dependency on anything. Test takes clean start as precondition creates all test data No polluted data inflow our outflow. We can execute the test in different order on need based. We can create more molecularity which increase code re usability. As each testcase is atomic,parallel execution is still possible.The deep advantages are:
- Increase confidence in software quality.
- Earlier time to produce the software to the market means more revenue.
- Reduce the cost in testing.
- Consistent repeatable testing
- Run tests unattended.
- Find more regression bugs
- Run tests more often
- Better quality software
- Coverage is high
- Find more bugs
- Test on different systems.
Disadvantages: Duplication of code increases if not created modular type. Design testdata for each testcase Execution time increases. High resource utilisation.