Can you afford to NOT automate your testing?
We have been building EFT/POS terminal test automation tools for over 10 years. Why?
Up Goes Complexity
Most players in the card payments industry have worked very successfully to reduce friction for payments. Contactless technology has made using a even easier than before. Mobile apps hold cards and become a sleeker and simpler all the time. Terminals now have touch screens and can run apps, or can be connected with phones acting as POS. There are many more examples for this one thing: From a user perspective, payments have simplified.
This simplification is however inverse proportional to the complexity of terminal software. With every simplification for the user, the complexity on the system side is increased. Old features must still be supported and new features are constantly added. Increasingly so with rising diversity of payment means (Eco Systems like Alipay, pay later schemes like Zip Pay or Afterpay, etc.) and add-on features like mobile top up or petrol card features and many more.
Back in the days, terminal payment applications had to support a simple UX flow and a single payment protocol. These days are over. Nowadays, a multitude of features, languages, flows etc. have to be supported.
Quality Impacts Business
More complexity and features means more software to code and more testing to be done. Increasing competition and levels of expectation require faster adoption. While many terminal software vendors still move at relatively slow pace (e.g. 4 releases per year), many managers would love to have faster output. IF, and there is a big IF, the quality can be guaranteed. Everyone knows quality in this market is crucial. Merchants and cardholders have no patience for wrong transactions or even bad UX.
One of the reasons for this slow pace in DevOps is testing. There are real examples where one day of coding requires many more days of testing. Having to do 5-10 days of regression testing for a release can be quite normal for complex terminal software applications. Compare that with a modern host system that can be built, deployed and tested in a few hours.
The business is forced to decide to either move fast and have uncertainty about quality, or to move slow and have uncertainty about the position in the market.
Automate or Die
The only way forward is test automation. This has been state of the art for a long time in software development. Not so much for payment terminals.
To be able to compete, release new features, move fast and be agile, testing has to be automated. The question is not if you can afford terminal test automation. The question is if you can afford NOT to do it.
I believe that within the next three years, terminal test automation will become state of the art. Manual testing will only be used for special cases or while writing new test cases.
What do you think?