跳到内容

Barcode Scanner Emulator

如何测试条码扫描器输入

一套可重复的 QA 方法,用于验证应用正确处理条码扫描器输入,覆盖十个经常藏有缺陷的方面。

1. 基本输入捕获

确认扫描值逐字符完整到达目标字段。使用与你的场景相关、长度和字符集不同的条码进行测试(纯数字、字母数字、符号)。用条码输入测试器核对捕获到的精确字符串。

2. 后缀行为

验证扫描后是否追加 ENTER 或 TAB,并确认表单按预期处理:提交表单、把焦点移到下一字段,或明确忽略后缀。

3. 时序与突发检测

如果应用试图区分扫描器输入和手工打字,请同时用真实扫描器和手工按键测试。你使用的时间阈值(扫描器检测通常为字符间隔 30–100 毫秒)不应产生误报或漏报。

4. 键盘布局正确性

扫描包含数字、符号以及(如相关)带重音或非 ASCII 字符的条码,确认它们按预期到达。扫描器与操作系统键盘布局不一致,是扫描值出现细微错误的主要原因。

5. 焦点行为

在目标字段未聚焦、另一字段已聚焦以及没有任何输入获得焦点时分别扫描。扫描器只发出键盘事件,因此没有落在正确字段上的输入要么丢失,要么进入非预期位置。

6. 快速重复扫描

连续扫描相同或不同的条码,确认当扫描速度快于界面视觉更新时,应用不会丢弃、重复或合并数值。

7. 无效或畸形条码

测试校验和失败的扫描(EAN/UPC 格式)、无法识别的商品编码,以及损坏标签产生的截断值。确认应用给出明确错误,而不是静默接受坏数据。

8. 模态框与对话框交互

在模态对话框打开时扫描,尤其是没有输入框的对话框。验证扫描器输入不会触发绑定到单个按键的非预期快捷键,因为快速字符突发可能偶然匹配快捷键。

9. 多字段与 Tab 顺序

对于用 TAB 后缀在字段间移动的流程,验证 Tab 顺序符合预期序列(例如商品编码 → 数量 → 确认),并且没有字段被跳过。

10. 完整 POS / 结账流程

跑通端到端场景:扫描商品、调整数量、扫描第二件商品、在支持时应用折扣条码,并完成结账。这会暴露单独测试字段时不会出现的集成缺陷。详细流程见POS 条码测试指南。

本方法所用工具

第 1–3 项使用条码输入测试器;第 4 项和第 8 项使用键盘事件测试器,因为原始键码和修饰键很重要。