Running tests on a single Android instance underutilized available resources.
Sequential test executions were time consuming, delaying the feedback loop. As a test suite grew, maintaining reasonable test execution times became challenging.
Test suites were divided into subsets that ran concurrently, which significantly reduced overall test execution time.
An automated testing solution that would accommodate mobile testing on both Android and on iOS platforms.
Multiple instances were utilized which helped to speed up the testing process.
Parallel testing was scaled by adding more instance or subsets to accommodate growing test suites.
Our Client is a well-established and reputable British sports-fashion retail business with over 40 years of operation. Their headquarters is located in Bury, Greater Manchester, England, UK, and as of 2022, employs over 44,488 individuals.
They offer a discounted range of merchandise, clothing, and footwear, including top brand names. The Christmas period is crucial for the business, with a significant portion of customer demand concentrated in the second half of the year. During this time, there is a heightened need for a substantial range of Christmas-related products.
Our Client made a business decision decided to develop its own Android application for their eCommerce website which had a presence in multiple regions (fascia). They found their manual testing processes were hindering their commercial agility, so to fast-track their new reward propositions, through onboarding to release to customers, they wanted better testing capabilities. They also wanted to reduce their costs, increase test coverage and future proof their eCommerce platform. This meant their staff needed to be able to easily setup, configure and run regression tests in-house.
To achieve all this, they wanted to automate elements of their testing. Our Client therefore needed to achieve an optimal level of automation on both their mobile app and web app platforms. They did not have the expertise in-house to suggest how they could implement toolsets for automation testing or how automated monitoring solutions could identify testing bottlenecks.
The objective was to reduce dependency and to make sure our Client’s app was user-friendly, easy to maintain, and more compatible for anybody who can easily set up, configure, and run regression testing undertaken by the functional team. They wanted to achieve the following elements:
An automated testing solution that would accommodate mobile testing on both Android and on iOS platforms was built, and an iterative process was planned with three clear phases:
Engineers, automation test specialists and system architects undertook enterprise-level fact-finding into the Client’s existing systems. In the scope business processes, volumetric and system-usage information was identified.
After several proof of concepts, the right solutions were identified to run automated tests: Qualiframe, Selenium + Java, with Appium as the automation testing platform. This would be intelligent enough to understand user parameters and run concurrently for different Fascias using BDD tags.
The simplification of regression testing involved removing manual operations and dependencies on the automation expert. A simple command and single click trigger could therefore complete the regression run. On completion of the run, logs are set apart in their respective folders with evidence and all the pass and failed test scripts were captured along with the execution flow. The tool is user friendly, compatible, easy to maintain and requires no manual intervention during execution.
A simple command triggered the complete regression run on multiple devices; however, the one-time test setup and configuration were performed manually. Upon completion of the run, the logs were saved to their respective folders, including evidence such as all passed and failed test scripts, captured along with the execution flow and screenshots.
The objective was to create an intelligent, platform-independent solution to handle the regression run.
Parallel execution meant test coverage and testing quality were significantly increased, and testing time was reduced significantly, giving a significant ROI boost.