The right foundations changes everything
The Digital Renaissance

How Argano Uses QA Automation To Elevate Quality and Speed Up Delivery

This is part two of our QA automation series. Part one highlighted the role of quality assurance and how automation helps to accelerate efficiencies. In this second part, we view these benefits from a real-life Argano project. 

It’s a simple formula: quality assurance plus automation equals faster testing of products. And this means accelerating the delivery time of quality products to market. 

Despite the clear benefits of automation, many businesses still struggle to get the most out of test automation tools. Just 31% of large enterprises have achieved a high level of test automation maturity, according to the World Report 2021-22. 

Argano understands the complexities beneath the surface of automation. And we use our expertise to  help clients scale their automation capabilities with confidence.   

Over the last couple of months, we have been developing different QA automation phases for one of our clients, Propac, a marketing and advertising company that offers promotional and digital services. 

We have a long-standing partnership with Propac, having worked together for more than 15 years. 

For our latest project, we implemented QA automation for their PromoHub ecosystem. 

The PromoHub is an integrated platform that lets the Propac team create brand promotions with the help of the automation of key processes, helping to develop promos at speed while cutting down on costs. 

Here we’ll summarize our most recent project that included automated test plans for Propac’s web application. 

Project background 

Around 3 years ago, we built a custom platform for Propac, called the PromoHub. The headless platform supports all of the promotions of Propac’s customers. It provides the ability to set up and manage promotions with all relevant information – such as prizes, stock availability, UPC validations, and grand prize raffles, among other features. 

In addition to providing promotional data, the platform has reporting capabilities regarding how many participants and winners were engaged during the promotion timeframe.  

As the PromoHub grew both in terms of enhancements and customers joining the platform, testing the entire platform manually was beginning to take more and more time for each rollout. With each enhancement (functionalities, views, modules) that we included, the more time it took to test. 

The growing amount of time needed to carry out QA testing was presenting an issue. We determined that QA automation was the solution to: 

  1. Reduce the amount of manual QA time  
  2. Reduce human error in the testing 
  3. Push bug-free production releases 
  4. Know beforehand if something has stopped working or not working as expected 
  5. Provide a straightforward report that helps developers fix what’s broken, reducing bug fixing and troubleshooting time. 

 

Our solution 

The solution that we developed was to build the test suite and test components using webdriver.io (a NodeJS framework made on Selenium). 

These tests are triggered from our CI/CD pipeline in Jenkins according to some predetermined events, for example, before the PromoHub code is deployed to production or before some of the other platform changes are merged into a certain promotion project repository. 

In addition, tests can be executed fully or partially, meaning that they can be used for full regression tests going through all the different test cases or used to validate a particular set of tests. 

All the test results are captured in Allure Report, a flexible and lightweight test reporting tool. Every project team member receives a notification after a test has been executed, with details of whether it passed or failed. In case of a failure, they would also receive a stack trace to identify the issue so that they could address it quickly. 

A three-phased approach to automation 

The project has three phases that contain high-level functionalities. These will be followed to fully automate the PromoHub and its promotional flows. 

  • Phase 1: Promotion creation functionalities and validations; redeem site flows; and test cases report notification creation. 
  • Phase 2: Platforms promotions API and test cases report notification updates. 
  • Phase 3: Promotion site functionalities and validations, integration with developed features from phases one and two, and test cases report notification updates. 

 

Our high-level testing strategy sets out a comprehensive plan to carry out tests following a structured approach. Our QA team implements the testing and analyzes the failures that are identified. 

We then send out an automated test results report by email, detailing the list of tests that have been executed and a status for each of them. 

It is important to note that when it comes to automated testing, as long as the web app continues to grow, the automated tests need to be maintained and updated. This is because element properties may change, and this can impact the code that’s used to locate them. 

This is what the console execution looks like: 

  

The reports were generated on Allure Report, a flexible and lightweight test reporting tool. 

As you can see from the overview dashboard, we carried out 48 test cases in total across 5 areas, from basic flows executions to different redeem sites. 

If we dive into the Suites component of Allure Report, we can see a more detailed description of each of the 5 suites. 

 

As we outlined earlier, a key benefit of automating the quality assurance process is the accelerated speed of testing. To give you an idea of the comparison between automated testing and manual testing, take a look at the average time it took for each suite to be tested. 

A comparison graph between manual and automated QA of certain features of the platform: 

As you can see, automated testing equals faster testing. Running the above tests requires a QA engineer to spend around 2 hours when done manually. Automating the same tests takes just 2 minutes. 

Take, for example, the login suite. When QA is carried out manually, it takes on average 1 minute to test. When this is automated, it takes just 5 seconds to test – that makes automation 170% faster than manual testing.  

Task 

Manual QA 

Automation QA 

Login 

1 minute 

5 seconds 

Promotion filters 

10 minutes 

5 seconds 

Create and edit promotion 

15 minutes 

20 seconds 

Promotion notifications 

5 minutes 

5 seconds 

Submissions 

20 minutes 

21 seconds 

Bellmark and UPC validation 

30 minutes 

16 seconds 

Import promotion 

10 minutes 

8 seconds 

Redeem prize with email validation 

20 minutes 

30 seconds 

Prize out of stock 

20 minutes 

30 seconds 

 

 

 

TOTAL 

2 hours 

2 minutes 

 The speed benefit runs up all the way to the suite that takes the longest to carry out testing on. The email validation on the redeem site for a prize takes around 20 minutes to manually test. That time shrinks to just 40 seconds when the testing is automated. 

Want to know more about how quality assurance can benefit your business? Check out our recent blog or connect with us!