As mentioned in my earlier blog post(POS Testing – Part 1), in competitive businesses such as retail, POS can be a key differentiator. It is very important for POS applications to be reliable, scalable, easily maintainable, highly secured, and easily customizable by the customer and hence it demands a lot of focus on effectively testing the solution before it gets deployed. In the first part, I have mentioned how to test POS and what are the various challenges in manual testing of applications. Now, let me try to explain the benefits of Test Automation, the different challenges in automation of POS, and how to select an automation testing tool to surpass all those roadblocks.
How can Automation Testing help?
To save manual testing time, a test automation strategy can be developed. Test automation frameworks reduce time to market and testing costs while increasing and improving test coverage, product quality, and end-user acceptance. Companies that increase the proportion of automated testing have a decisive advantage over their competitors. It is proven that automation testing has an edge over manual testing because it provides enhanced test coverage, saves testing time and cost, gives objective testing evidence in the form of customized reports, easy defect tracking for faster troubleshooting.
Having said this, before proposing automation testing as a solution, it is important to carefully analyze the ROI on the whole effort. Test automation is a strategy to reduce timelines, cut costs and improve quality. But before we reap the benefits of automation we have to make significant investments. It is also possible to calculate the possible returns of the test automation investment. Based on the inputs (such as releases planned per year, number of regression test cases, size of the manual testing team, etc), an ROI report can be generated which:
- Analyzes the cost involved in automation
- Compares the effort and cost for both manual testing and test automation
- Provides the break-even period
- Presents the saving in percentage
How to select an automation testing tool?
For automating the test cases of POS software, a test automation tool is required which can recognize the UI controls of the application. Selecting an appropriate automation test tool for a given application involves a step-by-step process. Without a proper process being followed, one might end up in either wastage of effort or selecting an inappropriate tool for the application under test (AUT). There are plenty of commercial and open-source automation test tools available in the market. A proof-of-concept (PoC) exercise should be performed to select the best-suited tool for the POS application. In a typical PoC, evaluation of two or three shortlisted tools is carried out to judge the capability and fitment of the tool for an AUT. Also, the best framework design based upon the requirements is suggested. As a result of PoC, one is able to select the test automation tool along with the test framework design.
What are the challenges in the automation of POS?
We should consider the fact that 100% automation may not achievable. While developing a test automation strategy for POS one might face few challenges:
- Interaction with Peripheral devices: The scenarios covering scanning a bar-code, swiping a card, pin-pad-entry, opening, and closing cash drawer, etc involve peripheral devices which require human intervention. Such scenarios are difficult to automate.
- Custom UI Objects: The UI of POS applications might contain non-standard objects which are difficult to be recognized by an automation tool.
- Dynamic UI: The UI is often highly dynamic to allow it to cater to changing business needs. Also, business processes are frequently modified and the cost and time required to maintain an automated regression test suite increase steeply and in some cases become infeasible to maintain.
- Multiple Configuration and Interaction with other interfaces: POS application generally interfaces with the external systems such as Sales Audit, CRM, E-Commerce, etc. The test cases require interacting with such applications as well which increases the challenge and the complexity. Also, POS vendors might have multiple versions/formats of POS hardware and software. So, maintaining the scripts for different versions and configurations becomes difficult and needs prior planning.
However, these are not roadblocks, solution providers having good experience in automation testing have devised ways to come over these constraints.
We can conclude by saying that for a complicated and business-critical system like POS, test strategy can be a combination of automation and manual testing. Also one should understand that testing of POS systems is different from other software and requires an in-depth understanding of POS-specific challenges. To overcome such challenges and mitigate risks, the subject matter expert should carefully design the test strategy and approach in order to achieve the quality goal.
Follow us on Aspire Systems Testing to get detailed insights and updates about Testing!