Chạy thử nghiệm Robo (Android)

Thử nghiệm Robo là một công cụ kiểm thử được tích hợp với Firebase Test Lab. Thử nghiệm Robo phân tích cấu trúc giao diện người dùng (UI) của ứng dụng, sau đó khám phá giao diện người dùng đó 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. Thử nghiệm 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 dùng thử nghiệm này để kiểm thử một ứng dụng trên một cấu hình thiết bị cụ thể có cùng chế độ cài đặt. Phương pháp thử nghiệm lặp lại này cho phép bạn sử dụng thử nghiệm Robo để xác thực các bản sửa lỗi và thử nghiệm cho các hồi quy.

Thử nghiệm Robo 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ừ những ả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à thử nghiệm này đã 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 gây ra sự cố ứng dụng. Các tính năng thử nghiệm Robo này cũng có thể giúp bạn tìm thấy vấn đề về giao diện người dùng của ứng dụng.

Ngoài việc chạy các thử nghiệm Robo thông thường, bạn có thể tuỳ chỉnh các thử nghiệm của mình bằng tập lệnh Robo, một tính năng của thử nghiệm 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 thử nghiệm của Robo cho iOS+, hãy xem bài viết Chạy thử nghiệm 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ả thử nghiệm Robo, thử nghiệm Robo sẽ ghi lại số liệu thống kê trong mỗi lần thu thập thông tin thử nghiệm. Test Lab hiển thị số liệu thống kê ở đầu thẻ Thử nghiệm Robo trên trang kết quả thử nghiệm:

  • 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 của tập lệnh Robo, hành động của Monkey và lệnh Robo.

  • Hoạt động: Số lượng hoạt động riêng biệt được đề cậ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ề thử nghiệm 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à 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 thử nghiệm Robo duyệt qua ứng dụng của bạn trong suốt quá trình thu thập dữ liệu.

Hết thời gian chờ thử nghiệm Robo

Tuỳ thuộc vào độ phức tạp của giao diện người dùng trong ứng dụng, thử nghiệm Robo có thể mất 5 phút trở lên để hoàn tất một tập hợp đầy đủ 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) cho hầu hết các ứng dụng và 300 giây (5 phút) cho các ứng dụng có độ phức tạp vừa phải. Giá trị mặc định cho thời gian chờ là 300 giây (5 phút) đối với các 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 kiểm thử chạy từ dòng lệnh gcloud.

Lỗi hết thời gian chờ 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ì thử nghiệm Robo có thể báo lỗi và không thể thu thập dữ liệu ứng dụng. Điều này chỉ xảy ra trong trường hợp thời gian khởi động cực kỳ dài và chỉ có thể giải quyết bằng cách sửa đổi ứng dụng để ứng dụng khởi động nhanh hơn.

Kiểm soát nhiều hơn 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 thử nghiệm của mình. 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 thông tin đầu vào cụ thể cho giao diện người dùng, chẳng hạn như tên người dùng và mật khẩu. Kịch bản Robo có thể giúp bạn. Để 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.

Thử nghiệm Robo và các tiện ích giao diện người dùng không phải Android

Thử nghiệm Robo sử dụng API Android để trực tiếp thực hiện các thao tác trên tiện ích giao diện người dùng Android. Điều này 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ì thử nghiệm Robo sẽ quay lại Hành động Monkey để kiểm thử màn hình đó. Không giống như các hành động có phương pháp hơn của thử nghiệm Robo, Monkey Actions chỉ đơn giản là 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 của thiết bị.

Để kiểm thử hiệu quả hơn những 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 Monkey Action 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 Firebase Test Lab Kiểm thử vòng lặp trò chơi.

Tích hợp với Google Play

Bạn có thể sử dụng Thử nghiệm 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 Kênh thử nghiệm Beta. Thử nghiệm 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 thử nghiệm 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 vấn đề.

Đăng nhập vào tài khoản thử nghiệm và nhập văn bản được xác định trước

Thử nghiệm Robo hỗ trợ đăng nhập bằng tài khoản thử nghiệm, đồng thời 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 thông tin đăng nhập tuỳ chỉnh và dữ liệu nhập văn bản được xác định trước khác, thử nghiệm Robo có thể nhập văn bản vào các trường EditText trong ứng dụng của bạn. Đố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

Thử nghiệm Robo có hai phương thức loại trừ lẫn nhau để hỗ trợ đăng nhập:

  • Đăng nhập tuỳ chỉnh: Nếu cung cấp thông tin đăng nhập tài khoản thử nghiệm, bạn cần cho Thử nghiệm Robo biết nơi nhập thông tin đăng nhập đó, đồng thời cung cấp thông tin đăng nhập đó.

  • Tự động đăng nhập: Nếu bạn không cung cấp thông tin đăng nhập tài khoản thử nghiệm để đăng nhập tuỳ chỉnh, thì hệ thống sẽ sử dụng chế độ tự động đăng nhập. Thử nghiệm Robo có thể tự động đăng nhập vào các ứng dụng được xây dựng bằng tiện ích Android tiêu chuẩn hoặc ứng dụng Compose, bằng cách sử dụng Tài khoản thử nghiệm của Google.

Để cung cấp thông tin đăng nhập tài khoản thử nghiệm cho quy trình đăng nhập tuỳ chỉnh, hãy làm như sau:

  1. Trên trang Chọn phương diện, hãy chọn Lựa chọn khác.

  2. Trong phần Thông tin đăng nhập tài khoản thử nghiệm (Không bắt buộc), hãy nhập tên tài nguyên của 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.

Nội dung 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:

  1. Trên trang Chọn phương diện, hãy chọn Lựa chọn khác.

  2. Trong phần 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}

Thử nghiệm Robo tìm kiếm các trường EditText có tên tài nguyên Android khớp với biểu thức chính quy được cung cấp. Nếu Robo không tìm thấy trường phù hợp, thì Robo sẽ không nhập văn bản của bạn, nhưng vẫn tiếp tục thu thập dữ liệu như bình thường.

Bạn có thể cung cấp tối đa 3 đường liên kết sâu được ứ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 của bạn.

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 lần đầu tiên theo cách thông thường (bằng cách 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.

Nếu thử nghiệm 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 đó. 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 sâu đó trong ứng dụng của bạn. 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 thành công giấy phép khi thử nghiệm ứ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 Kênh thử nghiệm Beta bằng Test Lab, hãy xoá quy trình kiểm tra giấy phép trước khi tải ứng dụng lên Test Lab.

Các bước tiếp theo