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 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 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: