Barcode Scanner Emulator
Så testar du inmatning från streckkodsläsare
En upprepbar QA-metod för att verifiera att ett program hanterar inmatning från streckkodsläsare korrekt. Den täcker tio områden där buggar ofta döljer sig.
1. Grundläggande infångning av inmatning
Bekräfta att det avlästa värdet kommer fram intakt, tecken för tecken, i målfältet. Testa med streckkoder av olika längd och teckenuppsättningar (endast siffror, alfanumeriskt, symboler) som är relevanta för ditt användningsfall. Verifiera den exakta infångade strängen med streckkodsinmatningstestaren.
2. Suffixbeteende
Verifiera om ENTER eller TAB läggs till efter avläsningen och bekräfta att formuläret hanterar det rätt — antingen skickar formuläret, flyttar fokus till nästa fält eller uttryckligen ignorerar suffixet, beroende på det avsedda flödet.
3. Timing och detektering av skurar
Om programmet försöker skilja läsarinmatning från manuell inskrivning ska du testa med både en riktig läsare och manuella tangenttryckningar. Tidströskeln du använder (ofta 30–100 ms mellan tecken för läsardetektering) får inte ge falska positiva eller falska negativa resultat.
4. Korrekt tangentbordslayout
Läs av streckkoder som innehåller siffror, symboler och (om det är relevant) accenterade tecken eller tecken utanför ASCII, och bekräfta att de kommer fram som förväntat. Avvikande tangentbordslayouter mellan läsare och operativsystem är en vanlig orsak till diskret felaktiga avlästa värden.
5. Fokusbeteende
Läs av när det avsedda fältet saknar fokus, när ett annat fält har fokus och när ingen inmatning har fokus alls. Eftersom läsare bara skickar tangentbordshändelser försvinner inmatning som läses av utan fokus på rätt fält, eller hamnar på ett oavsiktligt ställe.
6. Snabba upprepade avläsningar
Läs av samma eller olika streckkoder direkt efter varandra och bekräfta att programmet inte tappar, duplicerar eller slår ihop värden när avläsningarna kommer snabbare än gränssnittet hinner uppdateras visuellt.
7. Ogiltiga eller felaktiga streckkoder
Testa avläsningar som inte klarar kontrollsumman (formaten EAN/UPC), okända produktkoder eller avhuggna värden från en skadad etikett. Bekräfta att programmet visar ett tydligt fel i stället för att tyst acceptera dåliga data.
8. Interaktion med modala fönster och dialoger
Läs av medan en modal dialog är öppen, särskilt en utan inmatningsfält. Verifiera att läsarinmatningen inte utlöser oavsiktliga kortkommandon bundna till enskilda tangenter (en snabb skur av tecken kan råka matcha en kortkommandotangent).
9. Flera fält och tabbordning
För flöden som använder ett TAB-suffix för att gå mellan fält ska du verifiera att tabbordningen matchar den avsedda följden (till exempel produktkod → antal → bekräfta) och att inget fält hoppas över.
10. Hela POS-/kassaflödet
Kör ett scenario från början till slut: läs av en produkt, justera antalet, läs av en andra produkt, använd en rabattstreckkod om det stöds och slutför köpet. Det blottar integrationsbuggar som inte syns när enskilda fält testas var för sig. Se guide för POS-streckkodstest för ett detaljerat flöde.
Verktyg för den här metoden
Använd streckkodsinmatningstestaren för punkterna 1–3 och tangentbordshändelsetestaren för punkterna 4 och 8, där råa tangentkoder och modifierare spelar roll.