Creating Test Stability To Achieve Continuous Delivery
In our company, our automated tests were taking 30 minutes of execution time and the occurrence of flaky tests was just multiplying this time and reducing the confidence in the results. Our automated tests were maintained by various team members and some of them were not following leading practices - I needed to find out the root causes. I started my investigation and found the common issues were because of the environment, locators, coding practices, and a lack of knowledge sharing and code reviews. I improved our locators, coding practices, debugging, and simultaneously the developers helped us to fix all environment issues and slow page load times, it was a long journey but it was definitely worth it. Currently, our automated test suites take just 5 minutes to run in our CI environment - a huge improvement! Now my team members are more encouraged to see why a test is failing because the majority of failures now are genuine, and are providing valuable information. I want to share the insights from that journey with you. After this session, you’ll learn techniques to 1. Treat test code as production code and test environments as production environments 2. Improve the stability of your tests which in turn improves your continuous delivery pipeline 3. Make tests faster to enable fast feedback.