Перейти до основного вмісту

Тестування OCR

Автоматизоване тестування на мобільних нативних додатках та сайтах для комп'ютерів може бути особливо складним, коли маєш справу з елементами, які не мають унікальних ідентифікаторів. Стандартні селектори WebdriverIO не завжди можуть допомогти. Тут на допомогу приходить @wdio/ocr-service — потужний сервіс, який використовує OCR (Оптичне розпізнавання символів) для пошуку, очікування та взаємодії з елементами на екрані на основі їхнього видимого тексту.

Наступні користувацькі команди будуть надані та додані до об'єкта browser/driver, щоб ви отримали правильний набір інструментів для виконання своєї роботи.

Як це працює

Цей сервіс:

  1. створить знімок екрану вашого пристрою. (За потреби ви можете вказати область пошуку — елемент або об'єкт прямокутника, щоб вказати конкретну область. Дивіться документацію для кожної команди.)
  2. оптимізує результат для OCR, перетворюючи знімок екрану на чорно-білий з високим контрастом (високий контраст потрібен для запобігання фонового шуму зображення. Це можна налаштувати для кожної команди.)
  3. використовує Оптичне розпізнавання символів з Tesseract.js/Tesseract для отримання всього тексту з екрану та виділення всього знайденого тексту на зображенні. Підтримує кілька мов, які можна знайти тут.
  4. використовує нечітку логіку з Fuse.js для пошуку рядків, які приблизно дорівнюють заданому шаблону (а не точно). Це означає, наприклад, що пошукове значення Username також може знайти текст Usename або навпаки.
  5. Надає CLI майстер (npx ocr-service) для перевірки ваших зображень та отримання тексту через термінал

Приклад кроків 1, 2 та 3 можна побачити на цьому зображенні

Process steps

Працює з НУЛЬОВИМИ системними залежностями (крім тих, які використовує WebdriverIO), але за потреби може також працювати з локальною інсталяцією Tesseract, що значно зменшить час виконання! (Також дивіться Оптимізацію виконання тестів про те, як прискорити ваші тести.)

Зацікавились? Почніть використовувати вже сьогодні, дотримуючись інструкцій Початок роботи.

Важливо

Існує безліч причин, через які ви можете не отримати якісного результату від Tesseract. Одна з найбільших причин, яка може бути пов'язана з вашим додатком та цим модулем, полягає в тому, що немає належного кольорового розрізнення між текстом, який потрібно знайти, та фоном. Наприклад, білий текст на темному фоні можна легко знайти, але світлий текст на білому фоні або темний текст на темному фоні навряд чи можна виявити.

Див. також цю сторінку для отримання додаткової інформації від Tesseract.

Також не забудьте прочитати FAQ.

Welcome! How can I help?

WebdriverIO AI Copilot