Chuyển đến nội dung chính

Kiểm Thử OCR

Kiểm thử tự động trên ứng dụng di động và trang web máy tính có thể đặc biệt khó khăn khi xử lý các phần tử không có định danh duy nhất. Bộ chọn WebdriverIO tiêu chuẩn có thể không phải lúc nào cũng giúp được bạn. Hãy khám phá thế giới của @wdio/ocr-service, một dịch vụ mạnh mẽ sử dụng OCR (Nhận dạng ký tự quang học) để tìm kiếm, chờ đợi và tương tác với các phần tử trên màn hình dựa trên văn bản hiển thị của chúng.

Các lệnh tùy chỉnh sau đây sẽ được cung cấp và thêm vào đối tượng browser/driver để bạn có được bộ công cụ phù hợp để thực hiện công việc của mình.

Cách hoạt động

Dịch vụ này sẽ

  1. tạo ảnh chụp màn hình của màn hình/thiết bị của bạn. (Nếu cần, bạn có thể cung cấp một haystack, có thể là một phần tử hoặc một đối tượng hình chữ nhật, để xác định một khu vực cụ thể. Xem tài liệu cho từng lệnh.)
  2. tối ưu hóa kết quả cho OCR bằng cách chuyển ảnh chụp màn hình thành đen/trắng với độ tương phản cao (độ tương phản cao cần thiết để ngăn nhiễu nền ảnh. Điều này có thể được tùy chỉnh cho mỗi lệnh.)
  3. sử dụng Nhận dạng ký tự quang học từ Tesseract.js/Tesseract để lấy tất cả văn bản từ màn hình và làm nổi bật tất cả văn bản tìm thấy trên hình ảnh. Nó có thể hỗ trợ nhiều ngôn ngữ khác nhau có thể được tìm thấy tại đây.
  4. sử dụng Fuzzy Logic từ Fuse.js để tìm các chuỗi xấp xỉ bằng với một mẫu đã cho (thay vì chính xác). Điều này có nghĩa là ví dụ như giá trị tìm kiếm Username cũng có thể tìm thấy văn bản Usename hoặc ngược lại.
  5. Cung cấp một trình hướng dẫn cli (npx ocr-service) để xác thực hình ảnh của bạn và truy xuất văn bản thông qua terminal

Một ví dụ về các bước 1, 2 và 3 có thể được tìm thấy trong hình ảnh này

Các bước xử lý

Nó hoạt động với KHÔNG CẦN phụ thuộc vào hệ thống nào (ngoài những gì WebdriverIO sử dụng), nhưng nếu cần, nó cũng có thể làm việc với cài đặt cục bộ từ Tesseract để giảm thời gian thực thi đáng kể! (Xem thêm Tối ưu hóa Thực thi Kiểm thử về cách tăng tốc các bài kiểm tra của bạn.)

Hứng thú? Bắt đầu sử dụng ngay hôm nay bằng cách làm theo hướng dẫn Bắt đầu.

Quan trọng

Có nhiều lý do khiến bạn có thể không nhận được đầu ra chất lượng tốt từ Tesseract. Một trong những lý do lớn nhất có thể liên quan đến ứng dụng của bạn và module này là do không có sự phân biệt màu sắc phù hợp giữa văn bản cần tìm và nền. Ví dụ, văn bản màu trắng trên nền tối dễ dàng được tìm thấy, nhưng văn bản sáng màu trên nền trắng hoặc văn bản tối trên nền tối khó có thể được tìm thấy.

Xem thêm trang này để biết thêm thông tin từ Tesseract.

Đừng quên đọc FAQ.

Welcome! How can I help?

WebdriverIO AI Copilot