Xác định đối tượng giao diện UI trong ứng dụng Android
Bài viết được sự cho phép của vntesters.com
Vì Appium được phát triển từ Selenium nên Appium cũng hỗ trợ các cách xác định đối tượng UI tương tự như Selenium, bao gồm: ID, Xpath, Class, Name…. Một điểm đặc điểm khác biệt là, trong lập trình ứng dụng Android, chúng ta không sử dụng CSS để định dạng các đối tượng UI nên Appium không hỗ trợ phương thức xác định đối tượng UI thông qua CSSSelector.
Sử dụng UIAutomatorViewer
Đối với ứng dụng Android, chúng ta sử dụng công cụ UIAutomatorViewer để có thể đọc được mã nguồn giao diện UI của ứng dụng. Tương tự, chúng ta cũng có một công cụ tương ứng như vậy đối với ứng dụng iOS. Công cụ UIAutomatorViewer có thể được tìm thấy trong thư mục tools sau khi cài đặt Android SDK.
- Kết nối thiết bị thực/ảo với máy tính PC
- Khởi động ứng dụng trên thiết bị và đi đến màn hình cần thiết
- Khởi động công cụ UIAutomatorViewer trên PC
- Nhấn nút Device Screenshot để hiển thị thông tin của đối tượng UI
Dưới đây là ví dụ dùng UIAutomatorViewer với thiết bị thật, ứng dụng ví dụ các bạn có thể tải từ Google Play:
Sử dụng Appium Inspector
Trong ứng dụng Appium Server, hệ thống Appium hỗ trợ một công cụ riêng dùng để xác định các đối tượng UI. Công cụ này chỉ có thể sử dụng sau khi khởi động Appium Server và thiết lập các cấu hình để kết nối với thiết bị. Điểm đặc biệt của công cụ này là chúng ta có thể tương tác (chạm và truyển ký tự) với thiết bị đồng thời có thể ghi lại các hành động tương tác và phát sinh các mã kiểm thử.
- Kết nối thiết bị thực/ảo với máy tính PC
- Khởi động ứng dụng Appium Server
- Khởi động một phiên hoạt động với các thông tin cấu hình tương ứng của thiết bị và ứng dụng (package và activity)
- Khởi động chức năng ghi nhận hành động (nếu cần)
- Lựa chọn các đối tượng UI trên phần thông tin và tương tác (nếu cần)
Dưới đây là ví dụ dùng Appium Inspector với thiết bị ảo, ứng dụng ví dụ các bạn có thể tải từ đây:
Vài phương thức xác định đối tượng UI với Appium
- ID: Trong ứng dụng Android, chúng ta có resource-id và appium sử dụng giá trị này trong quá trình xác định đối tượng UI – ID.
- XPath: Cấu trúc của các đối tượng UI trong ứng dụng được sắp xếp với định dạng XML, vậy nên chúng ta có thể sử dụng XPath cùng với các cú pháp và hàm xử lý của XPath để xác định đối tượng UI một cách chính xác và đơn nhất/unique.
- Classname: Khác với Selenium, class là một thuộc tính của thẻ HTML, với Appium, giá trị Class chính là tên của thẻ XML.
- Name/Text: Tương ứng với giá trị ký tự được hiển thị trên giao diện của ứng dụng.
Bài viết gốc được đăng tải tại vntesters.com
Có thể bạn quan tâm:
- 9 ứng dụng tuyệt vời được viết bằng React Native
- Lập trình hướng chức năng đang thống trị mảng UI với Pure Views
- Sử dụng ConstraintLayout trong Android
Xem thêm tuyển android lương cao hấp dẫn trên TopDev
- B BenQ RD Series – Dòng Màn Hình Lập Trình 4k+ Đầu Tiên Trên Thế Giới
- i iOS 18 có gì mới? Có nên cập nhật iOS 18 cho iPhone của bạn?
- G Gamma AI là gì? Cách tạo slide chuyên nghiệp chỉ trong vài phút
- P Power BI là gì? Vì sao doanh nghiệp nên sử dụng PBI?
- K KICC HCMC x TOPDEV – Bước đệm nâng tầm sự nghiệp cho nhân tài IT Việt Nam
- T Trello là gì? Cách sử dụng Trello để quản lý công việc
- T TOP 10 SỰ KIỆN CÔNG NGHỆ THƯỜNG NIÊN KHÔNG NÊN BỎ LỠ
- T Tìm hiểu Laptop AI – So sánh Laptop AI với Laptop thường
- M MySQL vs MS SQL Server: Phân biệt hai RDBMS phổ biến nhất
- S SearchGPT là gì? Công cụ tìm kiếm mới có thể đánh bại Google?