Kiểm thử Robo là một công cụ kiểm thử được tích hợp với Firebase Test Lab. Kiểm thử Robo phân tích cấu trúc của giao diện người dùng (UI) của ứng dụng, sau đó khám phá cấu trúc đó một cách có phương pháp, tự động mô phỏng các hoạt động của người dùng. Quy trình kiểm thử Robo luôn mô phỏng cùng một hoạt động của người dùng theo cùng một thứ tự khi bạn sử dụng quy trình này để kiểm thử một ứng dụng trên một cấu hình thiết bị cụ thể với cùng một chế độ cài đặt. Phương pháp kiểm thử lặp lại này cho phép bạn sử dụng kiểm thử Robo để xác thực bản sửa lỗi và kiểm thử hồi quy.
Kiểm thử Robo sẽ ghi lại các tệp nhật ký, lưu một loạt ảnh chụp màn hình được chú thích, sau đó tạo một video từ các ảnh chụp màn hình đó để cho bạn thấy các thao tác mô phỏng của người dùng mà nó đã thực hiện. Những nhật ký, ảnh chụp màn hình và video này có thể giúp bạn xác định nguyên nhân gốc rễ của sự cố ứng dụng. Các tính năng kiểm thử Robo này cũng có thể giúp bạn tìm thấy vấn đề với giao diện người dùng của ứng dụng.
Ngoài việc chạy các kiểm thử Robo thông thường, bạn có thể tuỳ chỉnh các kiểm thử bằng cách sử dụng tập lệnh Robo. Đây là một tính năng của kiểm thử Robo. Để tìm hiểu thêm, hãy xem bài viết Chạy tập lệnh Robo.
Nếu bạn muốn dùng thử phiên bản Beta của Robo dành cho iOS trở lên, hãy xem phần Chạy kiểm thử Robo.
Số liệu thống kê về hoạt động thu thập dữ liệu của thử nghiệm Robo
Để giúp bạn diễn giải kết quả kiểm thử Robo, kiểm thử Robo sẽ ghi lại số liệu thống kê trong mỗi lần thu thập dữ liệu kiểm thử. Test Lab hiển thị số liệu thống kê ở đầu thẻ kiểm thử Robo trong trang kết quả kiểm thử:
Hành động: Tổng số hành động được thực hiện trong quá trình thu thập dữ liệu, bao gồm cả hành động tập lệnh Robo, hành động monkey và lệnh Robo.
Hoạt động: Số lượng hoạt động riêng biệt được thu thập trong quá trình thu thập dữ liệu.
Màn hình: Số màn hình riêng biệt được truy cập trong quá trình thu thập dữ liệu.
Test Lab cũng sử dụng số liệu thống kê để tạo bản trình bày trực quan về quy trình kiểm thử Robo dưới dạng biểu đồ thu thập dữ liệu. Biểu đồ có các màn hình làm nút và các hành động làm cạnh. Bằng cách theo dõi các cạnh giữa các màn hình, bạn có thể biết được cách kiểm thử Robo đã di chuyển qua ứng dụng của bạn trong suốt quá trình thu thập thông tin.
Hết thời gian chờ kiểm thử Robo
Tuỳ thuộc vào độ phức tạp của giao diện người dùng của ứng dụng, quy trình kiểm thử Robo có thể mất từ 5 phút trở lên để hoàn tất một loạt các hoạt động tương tác với giao diện người dùng. Bạn nên đặt thời gian chờ kiểm thử ít nhất là 120 giây (2 phút) đối với hầu hết các ứng dụng và 300 giây (5 phút) đối với các ứng dụng có độ phức tạp trung bình. Giá trị mặc định cho thời gian chờ là 300 giây (5 phút) đối với các chương trình kiểm thử chạy từ Android Studio và bảng điều khiển Firebase, và 900 giây (15 phút) đối với các chương trình kiểm thử chạy từ dòng lệnh gcloud
.
Lỗi hết thời gian chờ khi khởi động ứng dụng
Nếu ứng dụng của bạn mất nhiều thời gian để khởi động, thì quy trình kiểm thử Robo có thể gửi lỗi và sẽ không thể thu thập thông tin về ứng dụng của bạn. Điều này chỉ xảy ra trong trường hợp thời gian khởi động cực kỳ lâu và chỉ có thể được giải quyết bằng cách sửa đổi ứng dụng để ứng dụng khởi động nhanh hơn.
Tăng quyền kiểm soát bằng tập lệnh Robo
Đôi khi, bạn cần có nhiều quyền kiểm soát hơn đối với các chương trình kiểm thử. Ví dụ: bạn có thể muốn kiểm thử một hành trình phổ biến của người dùng hoặc cung cấp dữ liệu đầu vào cụ thể trên giao diện người dùng như tên người dùng và mật khẩu. Bạn có thể sử dụng tập lệnh Robo. Để tìm hiểu thêm về tập lệnh Robo, hãy xem bài viết Chạy tập lệnh Robo và Hướng dẫn tham khảo về tập lệnh Robo.
Kiểm thử Robo và các tiện ích giao diện người dùng không phải Android
Các kiểm thử Robo sử dụng API Android để trực tiếp thực hiện các thao tác trên các tiện ích giao diện người dùng Android. Điều đó giúp các chương trình kiểm thử tự động khám phá giao diện người dùng của bạn, nhưng cũng có nghĩa là các chương trình kiểm thử đó cần có khả năng trích xuất hệ phân cấp giao diện người dùng Android cho một màn hình để chạy kiểm thử trên màn hình đó.
Nếu một màn hình trong ứng dụng của bạn không sử dụng tiện ích giao diện người dùng Android, thì các kiểm thử Robo sẽ quay lại sử dụng Hành động Monkey để kiểm thử màn hình đó. Không giống như các thao tác kiểm thử Robo có phương pháp hơn, Hành động Monkey chỉ mô phỏng các sự kiện nhấn vào các vị trí bán ngẫu nhiên trên màn hình thiết bị.
Để kiểm thử tốt hơn các màn hình không sử dụng tiện ích giao diện người dùng Android, bạn có thể thay thế các thao tác nhấn tuỳ ý của một Hành động Monkey bằng một tập hợp các thao tác nhấn và tương tác theo tập lệnh thông qua Kiểm thử vòng lặp trò chơi Firebase Test Lab.
Tích hợp với Google Play
Bạn có thể sử dụng tính năng kiểm thử Robo trong Google Play Console khi tải lên và phát hành tệp APK của ứng dụng bằng kênh alpha hoặc beta. Kiểm thử Robo chạy trên một nhóm thiết bị thực phổ biến ở nhiều vị trí địa lý, cung cấp phạm vi kiểm thử trên nhiều kiểu dáng và cấu hình phần cứng. Để tìm hiểu thêm, hãy xem bài viết Sử dụng báo cáo trước khi ra mắt để xác định các vấn đề.
Kiểm thử tính năng đăng nhập vào tài khoản và nhập văn bản được xác định trước
Kiểm thử Robo hỗ trợ đăng nhập vào tài khoản kiểm thử và cũng cho phép bạn nhập văn bản được xác định trước vào các trường trong ứng dụng. Đối với tính năng đăng nhập tuỳ chỉnh và phương thức nhập văn bản được xác định trước khác, kiểm thử Robo có thể nhập văn bản vào các trường EditText
trong ứng dụng. Đối với mỗi chuỗi, bạn cần xác định trường EditText
bằng tên tài nguyên Android. Để tìm hiểu thêm, hãy xem phần Truy cập vào tài nguyên.
Đăng nhập
Kiểm thử Robo có hai phương thức không thể cùng tồn tại để hỗ trợ đăng nhập:
Đăng nhập tuỳ chỉnh: Nếu cung cấp thông tin đăng nhập vào tài khoản thử nghiệm, bạn cần cho Robo test biết vị trí nhập thông tin đăng nhập đó và cũng cung cấp thông tin đăng nhập đó.
Tự động đăng nhập: Nếu ứng dụng của bạn có màn hình đăng nhập sử dụng tài khoản Google để xác thực, thì kiểm thử Robo sẽ sử dụng tài khoản thử nghiệm của Google, trừ phi bạn cung cấp thông tin xác thực tài khoản thử nghiệm để đăng nhập tuỳ chỉnh.
Để cung cấp thông tin đăng nhập cho tài khoản thử nghiệm để đăng nhập tuỳ chỉnh, hãy làm như sau:
Trên trang Chọn phương diện, hãy chọn Tuỳ chọn khác.
Trong phần Thông tin đăng nhập cho tài khoản thử nghiệm (Không bắt buộc), hãy nhập tên tài nguyên tên người dùng và mật khẩu, cũng như tên người dùng và mật khẩu cho tài khoản thử nghiệm.
Nhập văn bản được xác định trước
Bạn có thể cung cấp văn bản nhập tuỳ chỉnh cho các trường văn bản khác mà ứng dụng của bạn sử dụng. Để cung cấp văn bản nhập cho các trường bổ sung, hãy làm như sau:
Trên trang Chọn phương diện, hãy chọn Tuỳ chọn khác.
Trong mục Additional fields (Optional) (Trường bổ sung (Không bắt buộc)), hãy nhập một hoặc nhiều tên tài nguyên và các chuỗi cần nhập vào các trường văn bản tương ứng.
Lỗi nhập văn bản được xác định trước {:#predefined-text}
Kiểm thử Robo tìm kiếm các trường EditText
có tên tài nguyên Android khớp với một biểu thức chính quy được cung cấp. Nếu không tìm thấy trường khớp, Robo sẽ không nhập văn bản của bạn, nhưng sẽ tiếp tục thu thập dữ liệu như bình thường.
Đường liên kết sâu
Bạn có thể cung cấp tối đa 3 đường liên kết sâu mà ứng dụng của bạn hỗ trợ để thử nghiệm.
Đường liên kết sâu được cấp cho ứng dụng của bạn dưới dạng ý định ACTION_VIEW
của Android. Do đó, mỗi đường liên kết phải khớp với một bộ lọc ý định trong ứng dụng.
Nếu bạn cung cấp một hoặc nhiều đường liên kết sâu, thì ứng dụng sẽ được khởi chạy bình thường (sử dụng ý định ACTION_MAIN
) và được thu thập dữ liệu cho đến khi hết thời gian chờ đã chỉ định. Sau lần thu thập thông tin chính, mỗi đường liên kết sâu sẽ được thu thập thông tin thêm 30 giây.
Lỗi liên kết sâu
Nếu kiểm thử Robo không tìm thấy hoạt động nào khớp với đường liên kết sâu của bạn, thì Test Lab sẽ bỏ qua đường liên kết đó. Các vấn đề về đường liên kết sâu thường là do sự khác biệt giữa đường liên kết sâu được cung cấp và định nghĩa của đường liên kết đó trong ứng dụng. Hãy kiểm tra cả URL được cung cấp và ứng dụng của bạn để tìm lỗi chính tả hoặc các điểm không nhất quán khác.
Hỗ trợ cấp phép ứng dụng
Test Lab hỗ trợ các ứng dụng sử dụng dịch vụ Cấp phép ứng dụng do Google Play cung cấp. Để kiểm tra giấy phép thành công khi kiểm thử ứng dụng bằng Test Lab, bạn phải phát hành ứng dụng lên kênh phát hành công khai trong Cửa hàng Play. Để kiểm thử ứng dụng trong kênh alpha hoặc beta bằng Test Lab, hãy xoá quy trình kiểm tra cấp phép trước khi tải ứng dụng lên Test Lab.
Các bước tiếp theo
- Tuỳ chỉnh kiểm thử bằng cách sử dụng tập lệnh Robo.