Barcode Scanner Emulator
Scannerinvoer van barcodes testen
Een herhaalbare QA-methode om te controleren of een toepassing barcodescannerinvoer correct verwerkt, met tien gebieden waarin fouten vaak verborgen blijven.
1. Basisinvoer vastleggen
Controleer of de gescande waarde ongeschonden, teken voor teken, in het doelveld aankomt. Test met barcodes van verschillende lengte en tekensets (alleen cijfers, alfanumeriek, symbolen) die bij het gebruik passen. Gebruik de barcode-invoertester om de exact vastgelegde tekenreeks te controleren.
2. Achtervoegselgedrag
Controleer of ENTER of TAB na de scan wordt toegevoegd en of het formulier dat correct afhandelt: het formulier verzenden, de focus naar het volgende veld verplaatsen of het expliciet negeren, afhankelijk van de bedoelde workflow.
3. Timing en burstdetectie
Als de toepassing scannerinvoer van handmatig typen probeert te onderscheiden, test dan met zowel een echte scanner als handmatige toetsaanslagen. Zo controleer je of de gebruikte tijdsdrempel (vaak 30–100 ms tussen tekens voor scannerdetectie) geen fout-positieven of fout-negatieven oplevert.
4. Juistheid van de toetsenbordindeling
Scan barcodes met cijfers, symbolen en (indien relevant) tekens met accenten of niet-ASCII-tekens, en controleer of ze aankomen zoals verwacht. Een verschil in toetsenbordindeling tussen scanner en besturingssysteem is een belangrijke oorzaak van subtiel verkeerde scanwaarden.
5. Focusgedrag
Scan terwijl het bedoelde veld geen focus heeft, terwijl een ander veld focus heeft en terwijl geen enkel invoerveld focus heeft. Omdat scanners alleen toetsenbordgebeurtenissen uitzenden, gaat invoer zonder focus op het juiste veld verloren of komt die op een onbedoelde plek terecht.
6. Snelle herhaalde scans
Scan dezelfde of verschillende barcodes direct na elkaar en controleer of de toepassing waarden niet laat vallen, dupliceert of samenvoegt wanneer scans sneller gaan dan de interface visueel kan bijwerken.
7. Ongeldige of misvormde barcodes
Test scans die de controlesom niet halen (bij EAN/UPC), onbekende productcodes of afgekapte waarden van een beschadigd etiket. Controleer of de toepassing een duidelijke fout toont en slechte gegevens niet stilzwijgend accepteert.
8. Interactie met modale vensters en dialogen
Scan terwijl een modaal dialoogvenster open is, vooral een zonder invoerveld. Controleer of scannerinvoer geen onbedoelde sneltoetsen activeert die aan losse toetsen zijn gebonden (een snelle tekenreeks kan toevallig met een sneltoets overeenkomen).
9. Workflows met meerdere velden en tabvolgorde
Bij workflows die een TAB-achtervoegsel gebruiken om tussen velden te gaan, controleer je of de tabvolgorde de bedoelde volgorde volgt (bijvoorbeeld productcode → aantal → bevestigen) en of geen veld wordt overgeslagen.
10. Volledige POS- en afrekenworkflow
Voer een scenario van begin tot eind uit: scan een product, pas het aantal aan, scan een tweede product, pas indien ondersteund een kortingsbarcode toe en rond het afrekenen af. Dit legt integratiefouten bloot die niet zichtbaar zijn bij het apart testen van velden. Zie de testhandleiding voor POS-barcodes voor een uitgewerkte workflow.
Hulpmiddelen voor deze methode
Gebruik de barcode-invoertester voor punten 1–3 en de toetsenbordevenemententester voor punten 4 en 8, waar ruwe toetscodes en modifiers ertoe doen.