News and Insights
INNOVATE. INSPIRE. DELIVER.
The Rise of the Robots – Why Automated Software Testing Makes Business Sense
Your warehouse management system, POS and card payment devices are the beating heart of your retail business. Incorrect data that blocks the flow of information, goods and money isn’t good for any business.
Key to continuous healthy systems is automated testing. By checking for blockages and weaknesses, it allows you to take corrective action before a minor problem becomes critical.
However, manual testing relies on huge amounts of people power, takes a remarkable amount of time and can result in human error. REPL is working hard to significantly reduce human intervention by creating automation testing innovation that make software testing faster, more effective and accurate.
We explore two REPL projects where automation testing has delivered massive business benefits.
What Are the Different Types of Software Testing?
The demand for rapid execution of increasingly complicated orders means warehouse management systems need to perform progressively more complex functions. This often means upgrading software or finding ways to automate manual processes.
Testing is critical to changes like these to ensure the new approach will work once implemented. It can be carried out manually using regression scripts that humans must follow repeating the same processes to identify any errors, gaps or problems in the software.
The drawbacks to this approach are numerous:
- Regression testing scripts must be created which takes time and money
- The scripts can be lengthy and testing often takes a large number of people hours
- The work is repetitive and it’s easy for people to make mistakes, overlook a critical issue or give the green light when it should have been red
- Humans become fatigued and prone to making more errors, particularly when the work is repetitive
- With limited human resource, testing usually cannot run alongside fixes resulting in an even lengthier process
- Manual testing doesn’t provide sufficient scale or enable load testing due to the small numbers of transactions that can be carried out
With such an important piece of work sucking up significant labour without the guarantee of a flawless end result, retailers needed a new solution. And they looked to REPL to provide it.
What is Automation Testing?
Automated software testing is the solution to the many drawbacks experienced with manual testing. In other industries, automation testing has leaped ahead, yet the complexity of technology and systems has slowed advances in the retail sector.
That is, until REPL were invited to work with two major UK retailers to automate their testing in two very different scenarios: warehouse management and card payment.
Taking Card Payment Software Testing to New Levels
When testing director, Antony Kaplan, spoke with one high street retailer, they didn’t believe it was possible to automate card payment testing. Antony said: “We didn’t accept that and said that there must be a way around the manual interactions.”
Antony’s team worked with a robotics provider to build an auto-payment robot linked to automated testing software. The system would enable the team to test a range of cards including payment, loyalty and fuel cards.
Based on the existing testing scripts, converted to behaviour driven development format, the automation testing tools were designed to replicate the work carried out by human testers. The system worked by:
- Sending commands through an application programming interface (API) to the robot which employs a probe to insert the card into the payment device
- The robot then uses its finger to enter the PIN onto the payment device keypad
- Once complete, the robot removes the card and the transaction completes automatically through the point of sale system
To speed up the software testing process, the team used a multiplexer, giving the robot 16 payment cards to test, each with its own automated test script. If the robot selected slot one, five and nine, the programme dynamically chose the right test script. Then it reprogrammed the probe with the chip from the test card in those slots in the multiplexer.
The information provided to the robot included data like the PIN and the dynamic currency conversion (DCC) code to test overseas transactions. In fact, the robot could be provided with any information that could come up during a transaction allowing it to run a full range of test scenarios automatically.
The team also tackled the tricky issue of how to test cards that use magnetic strips, like some US cards and most loyalty and fuel cards. By taking data from the magnetic strip and programming it into the automation software, the robot could read the data from the probe. This enabled automated software testing to take place for any card without a chip.
The only testing that has not yet been automated is for contactless cards. However, the team is not far from cracking this conundrum. Look out for the results soon.
Executive Chairman, Mike Callender, says:
“I’m delighted to see another example of our teams using their expertise to make the impossible possible. It’s typical of our approach to find solutions that deliver significant cost savings and apply them fast. It will be interesting to see where we can take automated testing next and the benefits it can bring to our clients.”
What Are the Advantages of Card-Testing Automation?
Not only is automated testing much quicker, but there are other significant additional benefits to adopting this approach.
Improved Software Testing Tactics
By automating the process, human testers can take a more varied, interesting and value-adding role in the process.
Instead of following traditional test scripts, testers could follow Gherkin scripts written in BDD format. This approach enables requirements to be written as assets so the user acceptance testing requirements also become a test case. Not only does this save time and effort but it makes test cases traceable and places business requirements at the heart of the process.
Collaborative Working and Learning
Antony says that he also prefers this approach as the software testing could be “stored in a cloud based server to enable collaborative working. With all the scripts, images and development code available to testers, they can learn how to write in a more automated fashion. This means they can develop automated scripts themselves.”
Once the framework has been built a test engineer can add as many new automated tests as is required which further enhances the testing process. Instead of repeatedly re-running manual regressions, the team can also write new tests, run them, tick them off and then allow them to run on their own. Which makes for a faster, more efficient testing project.
Faster Fixes Through Parallel Processing
In addition to the time savings generated through automated software testing, testers can also update new developments in parallel. By completing more software releases and hot fixes than were previously possible, systems can be up and running far faster. All thanks to the human power that has been freed up.
This alone saves significant amounts of time as Antony describes: “In one case, automated testing running across three countries saved 35 people days even though only 19% of the process had been automated.”
With over a month of working time saved by taking a small slice of the automation pie, there’s plenty of scope for further processing speed improvements.
But what about cost? Yes, there’s an initial investment for the robot. But by relieving testers from mind-numbing testing tasks and moving them to value-adding roles, the savings can be ploughed back into automating more of the software testing process. Reinvesting in this way will help retailers move towards even greater savings in time and effort all while controlling costs.
Bringing Automation to Warehouse Management
In a separate but similar piece of work, REPL were asked for proof of concept to automate WMS JDA dispatcher work for a major retailer.
By using image recognition software, REPL created an automated programme that could find any item on the screen, no matter its location. The handheld devices were complicated as they were separate tools used to pick stock from and put stock back into pallets. These are programmed so the operator simply entered menu options and stock numbers which automatically found the item and removed it from the warehouse. REPL achieved this using an online emulator to prove the automation between the JDA dispatcher and the handheld device. This meant there was no need to tie up the physical hardware so testing enabled productivity to continue unabated
This proof of concept was welcomed by the retailer and REPL are now in talks to find ways to do more of this kind of automation testing.
Money and goods are the lifeblood of your retail business. Slow and inaccurate software testing is a recipe for poor business health and potential disaster. Leading retailers are already investing in automated software testing to deliver better results faster and are reaping the benefits. Don’t get left behind.
If it’s time for your business to consider automation, get in touch with REPL on+44 (0) 808 200 7375.