Khi tạo workflow trong AkaBot Studio, đôi khi phần tử (element) được nhận diện thành công trong quá trình thiết lập các activity như Click hoặc Text Input, nhưng khi chạy thực tế lại xảy ra lỗi như "element not found" hoặc không thể nhận diện phần tử.
Dưới đây là một số nguyên nhân thường gặp và giải pháp tương ứng.
Mục lục
[Tạo Workflow] Áp dụng cho cả Trình duyệt và Ứng dụng Window
Trường hợp: Giá trị của phần tử cần lấy thay đổi mỗi lần khởi chạy
[Tạo Workflow] Trình duyệt
Trường hợp 1: Chưa cài đặt extension (Chrome, Firefox, Edge)
Trường hợp 2: Phần tử xuất hiện động (ví dụ: Flash) không có thẻ (tag) gán
Trường hợp 3: Không thể thao tác các màn hình mở ra mà không chỉ định URL (Chrome, Firefox, Edge)
[Tạo Workflow] Ứng dụng Window
Trường hợp 1: Ứng dụng quá cũ (UIA3 không thể nhận diện phần tử chính xác)
Trường hợp 2: Chương trình cấu tạo ứng dụng không có cấu trúc rõ ràng
[Tạo Workflow] Khác
[Thực thi Workflow] Áp dụng cho cả Trình duyệt và Ứng dụng Window
Trường hợp 1: Màn hình mong muốn chưa tải xong khi thực thi (mạng chậm, bị treo, v.v.)
Trường hợp 2: Nếu phần tử xuất hiện động, nó chỉ có thể được nhận diện khi hiển thị trên màn hình
Trường hợp 3: Màn hình mục tiêu hiển thị ở phía trước (foreground) nhưng không được nhận diện là màn hình mục tiêu ở mức hệ thống
1. [Tạo Workflow] Áp dụng cho cả Trình duyệt và Ứng dụng Window
Trường hợp: Giá trị của phần tử bạn muốn lấy thay đổi mỗi lần khởi chạy
Ví dụ Giải pháp:
Làm cho phần tử trở nên duy nhất bằng cách chỉ định phần tử với wildcard hoặc kiểm tra một phần tử khác.
Chuyển các phần thay đổi ở mỗi lần khởi động (ví dụ: ClassName,file name ) thành wildcard "*".
Bỏ chọn các phần tử thay đổi, và chọn các phần tử cố định thay thế.
Nếu AutomationID được chọn khi lấy selector, hãy thử kiểm tra các giá trị khác như IndexInParent.
2. [Tạo Workflow] Trình duyệt
Trường hợp 1: Chưa cài đặt extension (Chrome, Firefox, Edge)
Giải pháp ví dụ:
Cài đặt các extension tương thích cho từng trình duyệt.
Xác nhận lại quy trình cài đặt tại đây.
Trường hợp 2: Các phần tử xuất hiện động (ví dụ: Flash) không được gán thẻ
Lưu ý: Hỗ trợ Adobe Flash Player đã kết thúc vào cuối năm 2020.
Giải pháp ví dụ:
Thử các giải pháp được liệt kê trong phần "Khác" bên dưới.
Trường hợp 3: Không thể thao tác với các màn hình mở ra mà không chỉ định URL (Chrome, Firefox, Edge)
Giải pháp ví dụ:
Thử các giải pháp được liệt kê trong phần "Khác" bên dưới.
3. [Tạo Workflow] Ứng dụng Window
Trường hợp 1: Ứng dụng quá cũ (UIA3 không thể nhận diện phần tử chính xác)
Giải pháp ví dụ:
Thay đổi thuộc tính "AutomationBase" từ "UIA3" sang "UIA2".
Trường hợp 2: Chương trình cấu thành ứng dụng không có cấu trúc
Giải pháp ví dụ:
Thử các giải pháp được liệt kê trong phần "Khác" bên dưới.
4. [Tạo Workflow] Khác
Nếu các giải pháp trong phần 1 đến 3 không hiệu quả, hãy thử các cách sau (ví dụ):
Sử dụng activity "Click Image" để đặt phần tử cần lấy dưới dạng hình ảnh.
Sử dụng activity "Send Hotkey" để tận dụng các phím tắt tương thích với ứng dụng (ví dụ: Ctrl + C).
(Đối với trình duyệt) Sử dụng activity "Inject Javascript" để thao tác thông qua Javascript.
5. [Thực thi Workflow] Áp dụng cho cả Trình duyệt và Ứng dụng Window
Trường hợp 1: Vị trí mong muốn chưa tải xong khi thực thi (mạng chậm, treo, v.v.)
Giải pháp ví dụ:
Sử dụng activity "Element Exists" để xác nhận vị trí mong muốn đã tải xong.
Tránh thực hiện bước tiếp theo cho đến khi quá trình tải hoàn tất.
Đặt activity "Delay" trong vài giây (2–5 giây).
Trường hợp 2: Nếu phần tử xuất hiện động, nó chỉ có thể được nhận diện khi hiển thị trên màn hình
Lưu ý: Ví dụ, các phần tử trong cấu trúc cây (tree structure) chỉ có thể nhận diện sau khi bấm "hiển thị phần tử tiếp theo".
Giải pháp ví dụ:
Hiển thị phần tử trên màn hình trước khi thực hiện thao tác mong muốn.
Trường hợp 3: Màn hình mục tiêu hiển thị ở phía trước nhưng không được nhận diện là mục tiêu ở mức hệ thống
Giải pháp ví dụ:
Làm rõ mục tiêu.
Chèn activity "Attach Browser" hoặc tương tự để chọn rõ ràng trình duyệt/ứng dụng cần thao tác (đưa nó ra foreground).
Bài viết này có hữu ích không?
Thật tuyệt!
Cám ơn phản hồi của bạn
Rất tiếc là chúng tôi không giúp được nhiều!
Cám ơn phản hồi của bạn
Đã gửi phản hồi
Chúng tôi đánh giá cao nỗ lực của bạn và sẽ cố gắng sửa bài viết