Перейти к содержимому

Barcode Scanner Emulator

Как тестировать ввод со сканера штрихкодов

Повторяемая методика QA, чтобы проверить, что приложение правильно обрабатывает ввод со сканера штрихкодов. Она охватывает десять областей, где часто прячутся ошибки.

1. Базовый захват ввода

Убедитесь, что считанное значение попадает в целевое поле целиком, символ за символом. Проверяйте штрихкоды разной длины и разных наборов символов (только цифры, буквенно-цифровые, знаки), важных для вашего случая. Точную захваченную строку сверяйте в тестере ввода штрихкода.

2. Поведение суффикса

Проверьте, добавляется ли после сканирования ENTER или TAB, и что форма обрабатывает его правильно: отправляет форму, переносит фокус в следующее поле или явно игнорирует, в зависимости от задуманного сценария.

3. Время и обнаружение пачки

Если приложение пытается отличить ввод со сканера от ручного набора, проверяйте и настоящим сканером, и ручными нажатиями, чтобы порог времени (для обнаружения сканера часто 30–100 мс между символами) не давал ложных срабатываний и пропусков.

4. Правильность раскладки клавиатуры

Сканируйте коды с цифрами, знаками и (если это важно) буквами с диакритикой или символами вне ASCII и убедитесь, что они приходят как ожидается. Несовпадение раскладок сканера и операционной системы — частая причина слегка неверных считанных значений.

5. Поведение фокуса

Сканируйте, когда у нужного поля нет фокуса, когда фокус у другого поля и когда фокуса нет ни у одного поля ввода. Поскольку сканеры посылают только события клавиатуры, ввод без фокуса в нужном поле теряется или попадает не туда.

6. Быстрые повторные сканирования

Сканируйте один и тот же или разные штрихкоды подряд и убедитесь, что приложение не теряет, не дублирует и не склеивает значения, когда сканирования идут быстрее, чем интерфейс успевает обновиться на экране.

7. Недействительные или повреждённые штрихкоды

Проверяйте сканирования, которые не проходят проверку контрольной суммы (форматы EAN/UPC), нераспознанные коды товаров и обрезанные значения с повреждённой этикетки. Приложение должно показать ясную ошибку, а не молча принять плохие данные.

8. Взаимодействие с модальными окнами и диалогами

Сканируйте при открытом модальном диалоге, особенно без поля ввода. Убедитесь, что ввод со сканера не вызывает нежелательные сочетания клавиш, привязанные к отдельным клавишам (быстрая пачка символов может случайно совпасть с сочетанием).

9. Сценарии с несколькими полями и порядок табуляции

В сценариях, где суффикс TAB переходит между полями, проверьте, что порядок табуляции совпадает с задуманной последовательностью (например код товара → количество → подтверждение) и ни одно поле не пропускается.

10. Полный сценарий POS и кассы

Пройдите сценарий от начала до конца: отсканируйте товар, измените количество, отсканируйте второй товар, примените штрихкод скидки, если он поддерживается, и завершите кассу. Так проявляются ошибки интеграции, которых не видно при проверке полей по отдельности. Подробный сценарий — в руководстве по тестированию штрихкодов в POS.

Инструменты для этой методики

Для пунктов 1–3 используйте тестер ввода штрихкода, а для пунктов 4 и 8, где важны сырые коды клавиш и модификаторы, — тестер событий клавиатуры.