The Client
The client is one of the largest health and beauty retailers in the UK. They have over 2,500 stores selling health and beauty products and provide optical and hearing care services. They also operate a retail website and has run a loyalty card programme since 1997.
This client has many projects running in parallel, each with a slightly different approach to software delivery. The client had a desire to streamline these to enable a Quality Engineering model. It was also recognised that testing was carried out too late in the software development life cycle and defects that should have been identified much earlier, were often found during system integration and user acceptance testing, significantly increasing the cost of software delivery.
The client aimed to work in an Agile way, de-coupling from the existing COTS fragile test automation framework and wanted to embrace a BDD approach to test case scripting and also adopt industry standard open source tools, to reduce associated licence fees. Ultimately the goal was to increase the reliability of testing, whilst reducing the associated manual testing time and cost.
Roq’s Solution
Roq completed an automation feasibility study and considered current in-house skillsets to ascertain which tool choice would be appropriate for a seamless transition across new and existing projects. The scope included the design and development of the test automation framework using the selected tooling, ensuring high re-use of test automation assets, ease of maintenance, comprehensive reporting, training and supporting documentation.
A java-based solution was selected and implemented to functionally test three types of applications, each accessed in different ways; web browser, windows desktop and application programming interface (API). For each of the application types automated, a common BDD approach to test case scripting was implemented using Cucumber. This allowed business analysts and software testers to create requirements as user stories and to specify how these would be tested using acceptance criteria.
For web-based applications, the open source tool Selenium WebDriver was chosen, providing cross-browser testing capabilities, parallel execution and the ability to extend testing to mobile devices using Appium (“Selenium for Apps”). This was successfully implemented to functionally test the client’s online retail and pharmacy applications accessed by customers and used to place orders, book appointments and request prescriptions.
Windows desktop applications were tested using the open source tool Winium (“Selenium for Windows”) and this was used to test the clients’ photo kiosk software – which enabled customers to print photos in-store or place orders for collection on larger items, including cushions and wall canvases.
For API testing, the open source tool REST Assured was selected. This tool was used to test the clients’ migration and consolidation of customer information, supporting both GDPR compliance and a centralised “data lake” that could be used by the business to make more informed decisions.
The Outcome
The solution that Roq delivered supported the desired Quality Engineering approach by preventing defects earlier in the lifecycle, rather than finding defects later in the lifecycle. This ensured that the delivery of new software was accelerated, feedback loops had been amplified and the client was now using the information gained from project delivery much more effectively providing an environment of continuous learning and improvement. In addition, the client achieved some significant benefits as highlighted below:
Roq helped the client save thousands of pounds on licences by utilising open source tools which significantly reduced the reliance on COTS products, meaning that fewer licenses were required and those that remained could be put to more effective use elsewhere, e.g. applications that could not be automated using an open source tool.
The client benefited from some significant time and cost savings. Within one project Roq achieved execution of 19,000 tests overnight in 11 hours – previously just 12,000 tests were executed in 5-man weeks! Another project’s test execution time was reduced by 98% for the full regression test.
The client is now able to achieve multiple releases per week compared to monthly (or longer) on several technologies, including customer facing kiosks and websites. This massively increases their competitive edge in a challenging retail environment.
Through the solution, Roq almost doubled test coverage which significantly increased quality and end user satisfaction helping to drive growth, for example in the eCommerce space.
Implementing a common approach to test automation and test scripting meant resources could be moved between projects much easier – easing the on-boarding process for projects. Using industry standard tools and approaches also ensured that as many people could use the frameworks as possible.
If you’d like to find out more about how Roq can support your business, please email us at ask@roq.co.uk.