Skip to main content

PoS API Testing

This document outlines 33 tests to be performed on the POS system. Each test includes detailed steps and verification criteria to ensure the system operates as expected.

Test Cases

Test NumberTests to RunVerification
1Configure PoS for test system DNS/IP, plugin id, and auth id -- connectConnectivity, TLS, Authentication, Configuration Events (RCs, terminals, employees), Keep-Alive
2Startup PoS application and sign in as employeeTerminalUp(o), SignIn
3Sign out as employeeSignOut
4Sign back in as employee (different if possible)SignIn
5Create check with qty 1 of item and checkout using cash and change dueNewCheck, ItemAdd, SubTotal, TaxDue, TotalDue, TenderApply, ChangeDue, CloseCheck
6Create a return for the previous transaction using cashNewCheck, ReturnAdd, SubTotal, TaxDue, TotalDue, ChangeDue, CloseCheck
7Create check with qty 1 of item and checkout using CCNewCheck, ItemAdd, SubTotal, TaxDue, TotalDue, TenderApply, CloseCheck
8Create a return for the previous transaction using CCNewCheck, ReturnAdd, SubTotal, TaxDue, TotalDue, TenderApply, CloseCheck
9Create check with two items -- one qty 2 and one qty 3 and checkout using cashNewCheck, ItemAdd (qty), ItemAdd (qty), SubTotal, TaxDue, TotalDue, TenderApply, ChangeDue(o), CloseCheck
10Create a return for the previous transaction using cashNewCheck, ReturnAdd (qty), ReturnAdd (qty), SubTotal, TaxDue, TotalDue, ChangeDue, CloseCheck
11Create check with qty 10 of item and then cancelNewCheck, ItemAdd (qty), CancelCheck
12Create check with qty 3 item and "save" check to be recalled laterNewCheck, ItemAdd (qty), SaveCheck
13Create check with qty 5 item, total, pay with CC, then void the checkNewCheck, ItemAdd (qty), SubTotal, TaxDue, TotalDue, TenderApply, CloseCheck (o), RecallCheck (o), VoidCheck
14Recall the saved check from #12, add a qty 1 item, then checkout using cashRecallCheck, ItemAdd, SubTotal, TaxDue, TotalDue, TenderApply, ChangeDue(o), CloseCheck
15Create check with qty 6 item, change item qty to 3, then checkout with CCNewCheck, ItemAdd (qty), ItemCancel (qty), SubTotal, TaxDue, TotalDue, TenderApply, CloseCheck
16Create check with qty 1 item using an option (color, add-on, etc) then checkout with CCNewCheck, ItemAdd, ItemOption, CancelCheck
17Create check with qty 2 item and qty 1 item, remove qty 2 item, checkout with CCNewCheck, ItemAdd (qty), ItemAdd (qty), ItemCancel (qty), SubTotal, TaxDue, TotalDue, TenderApply, CloseCheck
18Create check with qty 1 item that has an automatic discount, checkout with CCNewCheck, ItemAdd, DiscountApply, SubTotal, TaxDue, TotalDue, TenderApply, CloseCheck
19Create a return for the previous transaction using CCNewCheck, ReturnAdd (qty), DiscountVoid (o), SubTotal, TaxDue, TotalDue, TenderApply, CloseCheck
20Create check with qty 2 item and apply manual discount, checkout with CCNewCheck, ItemAdd (qty), DiscountApply (qty), SubTotal, TaxDue, TotalDue, TenderApply, CloseCheck
21Create check with qty 1 item with discount, cancel discount, checkout with CCNewCheck, ItemAdd, DiscountApply, DiscountCancel, SubTotal, TaxDue, TotalDue, TenderApply, CloseCheck
22Create check with qty 1 item, checkout with cash, void tender, checkout with CCNewCheck, ItemAdd, SubTotal, TaxDue, TotalDue, TenderApply, ChangeDue (o), TenderVoid, TenderApply, CloseCheck
23Create check with qty 1 item, apply manager override to price, checkout with CCNewCheck, ItemAdd, ((o) DiscountApply, OverrideRequest, OverrideResponse, ManagerProcedure), SubTotal, TaxDue, ...
24Create check with qty 1 item, qty 3 item, total, void qty 1 item, checkout with CCNewCheck, ItemAdd (qty), ItemAdd (qty), SubTotal, TaxDue, TotalDue, ItemVoid, SubTotal, TaxDue, TotalDue, TenderApply, CloseCheck
25Run a "nosale" to open the cash drawerNoSale, DrawerOpen (o), DrawerClose (o)
26Generate a cash-in eventCashIn, DrawerOpen (o), DrawerClose (o)
27Generate a cash-out eventCashOut, DrawerOpen (o), DrawerClose (o)
28Generate a reportReportGenerated
29Change the name of an employeeEmployeeName
30Change the name of a terminalTerminalName
31Change the name of a revenue centerRevCenterName
32Check for delay in timestamps if included, or raw delayAcceptable timestamps (NTP) or minimal real-time delay
33Test a TCP socket dropRe-connection