After executing a project to test a cloud-based microservices platform, we experienced a lot of challenges in both of technical and social manners and tried to develop solutions to cope with them. Finally, I have wrapped them up to make a list of golden rules to successfully manage a test project.
- Technically, if not managed properly, automated testing will lead to extra costs and could even be less effective than manual testing.
- From another aspect, at some point, we had too many complaints in our retrospective meetings about the heavy deployment activities and redundant executions. We had lots of flaky tests, execution lists full of not clear test definitions. Everyone was sick and tired of maintenance issues and team was not happy. We took actions to improve motivation in the team.
- Being truly agile: Adapt new solutions quickly.
- Manage the progress: Be aware of what is going on by setting KPIs to track & monitor with tools like CloudWatch, Grafana
- Technical part: Automation principles for the sake of robustness. Solutions to reduce flaky tests & analysis effort & costs: Code demos on Java API polling libraries, Selenium usage and others.
- Team spirit! Demonstration with a game.
Results & Conclusion
After application of our proposals, we observed that waste is eliminated by prioritization and removing duplicated or dispensable work. After all, we believe that this submission has an interesting content which can make great attention. Instead of theoretical claims, we discuss faced challenges and applied solutions. We analyze effects of solutions with before-after situations, graphs and evidences. Instead of what to do, we go over how to do.
Proposed approaches can be applied by any organization by adapting according to the related work to achieve time and cost reduction. After this talk:
- Attendees will know our 4 golden milestones for successful agile testing: Being truly agile, Managing and improving internal processes, building a Good Automation Framework and Improving Efficiency.
- Attendees will be able to realize the importance of test coverage and see how it affects defects coming from production.
- Attendees will be able to realize the effect of test suites on sprint planning and execution effort.
- Attendees will be able to have some insights about increasing efficiency.
- Attendees will be able to utilize automation not only in implementation, but also in Executions, Reporting and other phases.
- Attendees will be able to analyze bugs. Just resolve and close them, or gain some lessons-learnt from them?