Point Of Sale (POS) Testing - Aspire Sys

Transcription

WHITE PAPERPoint of Sale (POS) TestingAuthor:Divya MadaanPractice Head – RetailAspire Systems Consulting PTE Ltd.60, Paya Lebar Road, No.08-43,Paya Lebar Square, Singapore – 409 051.a t t e n t i o n.a l w a y s.

C O N T E N T STesting Challenges in POSLong Test CyclesMultiple Build ReleasesMultiple Configuration SettingsManual Backend Verification & Missing Transaction ValidationCustomized feature ComplexityTesting POS on multiple platformsPeripheral issuesSecurity & Regulatory ComplianceSolution through Test AutomationDesigning an Automation FrameworkChallenges in POS AutomationInteraction with Peripheral devicesCustom UI ObjectsDynamic UIMultiple Configuration and Interaction with other interfacesConclusionAspire Systems - Point of Sale (POS) Testing2

Point of Sale (POS) TestingIntroductionA POS (point of sale) is a computer which isconnected to a receipt printer, cash drawer,credit/debit card reader and a bar code scanner etc.Retailers use an automated retail system where thestore cash registers are linked to computerprocessing systems. Merchandise is ticketed withcoloured bar code tags, which are read with wandreaders at the checkout counter. The computeraccumulates sales transaction information onmagnetic tape for daily input into the computermemory bank or storage system. It is input into thesales journal, which is rolled up into the stockledger.Testing Challenges in POSTesting a POS software package manually can posemany challengesLong Test CyclesThe world of retail is dynamic; retailers have to beon their toes to meet the market demand and stayahead in the competition. Manual testing leads tolong regression test cycles which prolongs the timeto hit the market.Multiple Build ReleasesRapid technological advancements necessitatefrequent hardware and software upgrades whichrequire more testing effort hence slowing down theQA build certification process.Testing Point-Of-Sale systems can bechallenging for the QA team for variousreasons. This paper discusses the testingchallenges surrounding POS systemsand how a comprehensive test strategycan be developed to help retailers inachieving their quality goals.Aspire Systems - Point of Sale (POS) TestingMultiple Configuration SettingsTesting a POS application with different settingsand configurations is a cumbersome task. Test casespertaining to user profiles and access levels shouldbe designed covering each and every scenario(positive or negative) in detail. Therefore, significantbudget and effort needs to be put in testing of suchapplications to prevent any major issues at thecustomer end.Manual Backend Verification & MissingTransaction ValidationThe POS transaction verification is incompletewithout validating the data at the backend i.e. in thedatabase and in the Journal application. Testersneed to validate that the data correctly gets storedat the backend and additionally there should not beany missing transactions. This verification requirestime and is prone to human error.Customized feature ComplexityIntegration of POS System involves numerousinterconnected systems and third party elementswhich poses testing challenges to the QA.Testing POS on multiple platformsAs most of the retailers are now moving to mobilePOS, effort of testing increases as the system has tobe tested on desktop and mobile-OS combinations.Peripheral issuesThe peripheral issues may be related to deviceswhich are connected to a POS like barcodescanners, scales, printers, towers and cash drawers.Security & Regulatory ComplianceAs customer’s sensitive data is being processedduring the transactions, it’s critical to test POSsystem as per the regulatory compliances.3

Point of Sale (POS) TestingSolution through Test AutomationTo ensure quality of POS software, proper testing ofthe application is crucial. Talking about softwaretesting, automation testing has gained a lot ofmileage over the last decade. Automation Testing isnothing but a software development process thatlends itself to test software. Automation testingpractices if implemented efficiently can yieldeffective results in delivering high quality softwarewhile keeping the cost at bay. Studies have provedthat, companies that increase the proportion ofautomated testing have a decisive advantage overtheir competitors. To save manual testing time, asound test automation strategy is paramount andan automation framework can be built. It is proventhat automation testing has an edge over manualtesting because it provides enhanced test coverage,saves testing time and cost, gives objective testingevidence in the form of customized reports, easydefect tracking for faster troubleshooting.Designing an AutomationFrameworkFor automating the test cases of POS software, a testautomation tool is required which can recognize theUI controls of the application. Selecting anappropriate automation test tool for a givenapplication involves a step-by-step process. Withouta proper process being followed, one might end upin either wastage of effort or selecting inappropriatetool(s) for the application under test (AUT). Thereare plenty of commercial and open sourceautomation test tools available in the market. Aproof-of-concept (PoC) exercise can be performed toselect the best-suited tool for the POS application.The framework for POS should be designed usingbest practices of automation testing coupled withthe needs to test the POS systems effectively. Thearchitecture and design of the automationframework decides its effectiveness. Just to name afew of the best practices – Page object model, Testdata and UI elements externalization, implementingeasy to interpret and informative Test Reports,integrating the framework with test casemanagement tool and continuous integration tooletc.An automation framework can be designed on thelines depicted in the diagram below:Image Source: www.winpos.comWhile most of the POS testing challenges can beovercome by automation, security testing can be atricky area to deal with. Care must be taken toadopt PCI-compliant, tamper-proof infrastructure atall POS terminals to protect cardholder data andidentity.Let’s now see how an effective test automationsolution can be developed for POS.Aspire Systems - Point of Sale (POS) TestingTest Automation ToolTest DataTest ScriptsPage ObjectsDriver ScriptRe-UsableComponentsOther UtilitiesCustom ReportsContinuousIntegration ToolDesktop & MobilePOS SupportTest ExecutionReportsTest CaseManagementToolTest Results4

Point of Sale (POS) TestingThe first & foremost is an Automation Tool – Itcan be Open Source or commercial tool thatbest suits the POS system under test. There canbe various parameters to judge a tool e.g. it’scapability to identify the UI elements in theapplication, whether it supports automation onmultiple platforms or not, what languages doesit support, cost and post-sales support etc.Second component is the Test CaseManagement Tool – As the name suggests, atest case management tool can be used to storethe test cases. This tool should be integratedwith the automation tool so that after testexecution, the status of test cases likePass/Fail/Not run etc should get updated in thetest case management tool itself.Thirdly, a Continuous Integration Tool – It’s animportant component of an effectiveautomation solution. This tool can enable theuser to kick-start execution by just the click of abutton and after the execution the reports canbe delivered to the inbox of the stakeholders.And lastly the Test Reports – An integralcomponent of the framework, is easy tointerpret and informative test report. The testreports helps you to understand usefulinformation of the test cases executed likePass/Fail%, Test Coverage, screenshots of thefailure which is very critical to understand whatwent wrong during the execution.In a nutshell, all of these components can becombined to build an integrated solution. In order toget the maximum ROI from automation testing, it’sutmost important to design the framework keepingthe simplicity, usability, flexibility and scalabilityparameters in mind.Aspire Systems - Point of Sale (POS) TestingChallenges in POS AutomationWhile developing test automation strategy for POSone might face few challenges:Interaction with Peripheral devicesThe scenarios covering scanning a bar-code,swiping a card, pin-pad-entry, opening and closingcash-drawer etc involve peripheral devices whichrequire human intervention. Such scenarios aredifficult to automate and automation of peripheraldevices can be managed only to a certain level.Custom UI ObjectsIncompatibility of the automation tools with nonstandard objects on the UI poses lot of challenges. Insuch situations, an automation engineer has to lookfor workarounds to overcome such technicalchallenges. With expertise and experience suchtechnical barriers can be overcome.Dynamic UIThe UI is often highly dynamic to allow it to cater tothe changing business needs. Also, businessprocesses are frequently modified and the cost andtime required maintaining an automated regressiontest suite increases steeply. This can become achallenge if the framework is not designed well. Ifthe framework is designed as per automation bestpractices, the code can be managed easily.Multiple Configuration and Interactionwith other interfacesPOS application generally interfaces with theexternal systems such as Sales Audit, CRM, ECommerce etc. The test cases require interactingwith such applications as well which increases thechallenge and the complexity. Also, POS vendorsmight have multiple versions/formats of POShardware and software. So, maintaining the scriptsfor different versions and configurations becomesdifficult and needs prior planning.Best-in-class automation testing frameworks andsolutions would do well to cater to the needs of theretailers in overcoming their challenges.5

Point of Sale (POS) TestingConclusionFor complicated and business critical systems like POS, test strategy can be a combination of automation andmanual testing. Also one should understand that testing of POS systems is different from other software andrequires 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 theirquality goals.ABOUTASPIRESINGAPORE 65 3163 3050Aspire Systems is a global technology service firm serving as a trusted technology partner for its customers.The company works with some of the world’s most innovative enterprises and independent software vendors,helping them leverage technology and outsourcing in Aspire’s specific areas of expertise. Aspire System’s servicesinclude Product Engineering, Enterprise Solutions, Independent Testing Services, Oracle Application Services andIT infrastructure & Application Support Services. The company currently has over 2,400 employees andover 100 customers globally. The company has a growing presence in the US, UK, Middle East, Europe andSingapore. For the eighth time in a row, Aspire has been selected as one of India’s “Best Companies to Work For”by the the Great Place to Work Institute, in partnership with The Economic Times.NORTH AMERICA 1 630 368 0970Aspire Systems - Point of Sale (POS) TestingEUROPE 44 203 170 6115INDIA 91 44 6740 4000MIDDLE EAST 971 50 658 88316

Aspire Systems - Point of Sale (POS) Testing 4 Point of Sale (POS) Testing Solution through Test Automation 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.