Test Automation and CI-CD Integration
**Challenge:** The customer had over 2,000 written scripts, but these scripts had never been executed concurrently, integrated into continuous integration (CI) systems, or incorporated into the software development pipeline. Around 80% of the code was duplicated. They engaged us to address this chaotic situation.
**Our Approach:** Utilizing a Divide and Conquer strategy, we identified multiple issues, including flaky test cases, code quality, reporting, and execution. We prioritized improving test reliability and execution to rebuild trust. We initiated a basic software development pipeline that triggered automatic execution of an initial set of test cases whenever new code was pushed to the repository, sharing the results with the developers. This pipeline was subsequently enhanced with additional stages and more test cases. Results were exported to Jira, and failed tests were re-executed, with integration into Slack for notifications. Finally, we concentrated on improving code quality, successfully reducing code duplication from 80% to 20%, and set up a monitoring dashboard to track the reliability of test scripts and gather metrics. Consequently, the client restored their confidence in test automation, cut test execution time by 75%, and made their one million euro investment viable again.
**Technologies Used:** Python, Jira, Docker, Jenkins, AWS, and Grafana.
**Services Provided:** Test Automation Services.