Manual testers from the client side did not have enough time to test all the workflows before each release due to the frequent release schedule.As a result, both the QA cycle and the release cycle experienced delays due to manually handled regression tests, as bugs identified during manual regression testing had to be rectified by software developers and then retested manually.
The frequent releases addressing minor issues fully occupied the manual testers with regression testing, thereby causing delays in releasing new features or updates to existing features/functionality. They needed to be allocated time to thoroughly test major releases containing new features or added functionalities. Additionally, the repeated manual testing of common modules for each regression following minor issues increased the testing costs. Consequently, they sought a solution to accelerate the entire release cycle, in addition to addressing the need for expediting the QA cycle.
To expedite the QA cycle, Testvox software testers formulated a strategy to automate all frequently executed test cases for each regression linked with every release. Demonstrating the effectiveness of automation, the client witnessed a significant reduction in the time required for regression testing with each release, thereby substantially enhancing the QA cycle. Testvox developed a framework for executing test automation on this app, customizing it to function seamlessly on both Android and iOS platforms. Regression testing for basic functionalities was conducted daily, while UI changes, features, and functionalities incorporated at that time were tested during the major release each week.
To expedite the release cycle, automated scripts were integrated into the development pipeline. Consequently, before the software application is handed over to QA personnel following the addition of a new feature or a functionality change, regression testing is automatically performed on existing functionalities and features, eliminating the need for software testers to intervene. Any identified bugs are promptly rectified by software developers, bypassing the need to wait for the QA cycle. This facilitates detailed testing by QA engineers on major releases containing changes in features/functionalities or the addition of new features/functionalities, thus expediting the major releases and reducing project costs in the long run.
Test automation with this framework is performed using Appium with Java. Codemagic, BrowserStack, and GitHub Actions are utilized for implementing the CI/CD setup. GitHub is utilized for version control when pushing code. Pearl commands for CI/CD actions are embedded within GitHub Actions. All new builds are deployed via Codemagic. Upon completion of the automated run, an extensive report is generated on the BrowserStack dashboard. Each test case appears as a link in the report, directing to the execution details of every test case, including necessary screenshots and videos, as well as reasons for any test case failures.
The generated reports are made available for viewing before the start of office hours each day. The Bugs are promptly reported, and changes in scripts or UI that cause test case failures are promptly updated.
The release cycle experienced a significant acceleration following the implementation of the CI/CD pipeline. Moreover, the speed of software development improved significantly following the adoption of automation and CI/CD technology.