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

Thử nghiệm Robo là một công cụ thử nghiệm được tích hợp với Phòng thử nghiệm Firebase. 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á cấu trúc này 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ác hoạt động tương tự của người dùng theo cùng một thứ tự khi bạn sử dụng để kiểm thử ứng dụng trên một cấu hình thiết bị cụ thể với các chế độ cài đặt tương tự. Phương pháp kiểm thử lặp lại này cho phép bạn sử dụng phương pháp kiểm thử Robo để xác thực các bản sửa lỗi và kiểm thử sự 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 được mô phỏng của người dùng mà thử nghiệm đó đã 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 khiến ứng dụng gặp sự cố. Các tính năng kiểm thử Robo này cũng có thể giúp bạn phát hiện các 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 cách sử dụ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 phần 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+, hãy xem phần Chạy thử nghiệm Robo.

Số liệu thống kê về quá trình 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 tra Robo, quy trình kiểm tra Robo sẽ ghi lại số liệu thống kê trong mỗi lần thu thập thông tin kiểm thử. Phòng thử nghiệm hiển thị số liệu thống kê ở đầu thẻ thử nghiệm Robo trong trang kết quả thử nghiệm của bạn:

  • 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 khỉ 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 thông tin.

  • Màn hình: Số màn hình riêng biệt đã truy cập trong quá trình thu thập thông tin.

Phòng thử nghiệm cũng sử dụng số liệu thống kê để tạo bản trình bày trực quan về kiểm thử Robo dưới dạng biểu đồ thu thập thông tin. Biểu đồ có màn hình là các nút và hành động là cạnh. Bằng cách theo các cạnh giữa các màn hình, bạn có thể nắm được cách quy trình kiểm thử Robo di chuyển qua ứng dụng của bạn trong 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 trên ứng dụng, quy trình kiểm thử Robo có thể mất ít nhất 5 phút để hoàn thành một tập hợp toàn diện các lượt tương tác trên giao diện người dùng. Bạn nên đặt thời gian chờ kiểm thử thành í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 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 thử nghiệm chạy từ Android Studio và bảng điều khiển của Firebase và 900 giây (15 phút) đối với các thử nghiệm chạy từ dòng lệnh gcloud.

Lỗi hết thời gian 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ể báo lỗi và không thu thập được thông tin của ứ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 được bằng cách sửa đổi ứng dụng để giúp ứng dụng khởi động nhanh hơn.

Kiểm soát tốt hơn nhờ tập lệnh Robo

Đôi khi, bạn cần kiểm soát nhiều hơn đối với thử nghiệm. Ví dụ: bạn có thể muốn kiểm thử một hành trình chung 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. Tập lệnh Robo có thể giúp bạn khắc phục vấn đề này. Để tìm hiểu thêm về tập lệnh Robo, hãy xem phần Chạy tập lệnh RoboHướng dẫn tham khảo về tập lệnh Robo.

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

Các bài 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 của 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à chúng cần có khả năng trích xuất mộ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 đó.

Nếu một màn hình trong ứng dụng của bạn không sử dụng các tiện ích trên giao diện người dùng của Android, thì các quy trình kiểm thử Robo sẽ sử dụng Monkey Actions để kiểm thử màn hình đó. Không giống như các hành động kiểm thử Robo có phương pháp hơn, Monkey Actions chỉ mô phỏng các sự kiện nhấn ở 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 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 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 công cụ Thử nghiệm vòng lặp trò chơi trong Phòng thử nghiệm Firebase.

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à xuất bản tệp APK của ứng dụng bằng kênh alpha hoặc beta. Chương trình kiểm thử Robo chạy trên một tập hợp các thiết bị thực phổ biến từ nhiều vị trí địa lý, cung cấp phạm vi kiểm thử trên nhiều cấu hình phần cứng và kiểu dáng. Để tìm hiểu thêm, hãy xem phần 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ợ việc đăng nhập vào 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 hoạt động đăng nhập tuỳ chỉnh và thông tin nhập văn bản định sẵn khác, quy trình kiểm thử 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 cách sử dụ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 pháp 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 cho tài khoản thử nghiệm, bạn cần cho chương trình kiểm thử Robo biết vị trí cần nhập thông tin đăng nhập đó, đồng thời cung cấp các 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ì quy trình 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 đăng nhập vào tài khoản thử nghiệm để đăng nhập tuỳ chỉnh.

Để cung cấp thông tin đăng nhập vào tài khoản thử nghiệm cho chế độ đă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 Tuỳ chọn khác.

  2. Trong phần Thông tin xác thực tài khoản kiểm thử (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 kiểm thử.

Phương thức 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 sử dụng. Để cung cấp giá trị nhập văn bản 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 Tuỳ chọn khác.

  2. Trong mục 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à chuỗi để nhập vào trường văn bản tương ứng.

Lỗi đầu vào văn bản định trước {:#defined-text}

Kiểm thử Robo sẽ 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 đã cung cấp. Nếu không tìm thấy trường nào khớp, thì Robo sẽ không nhập văn bản của bạn mà sẽ tiếp tục thu thập thông tin như bình thường.

Bạn có thể cung cấp tối đa 3 đường liên kết sâu mà ứng dụng hỗ trợ để kiểm thử. Đường liên kết sâu được phát hành cho ứng dụng của bạn dưới dạng ý định ACTION_VIEW trên 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ẽ chạy trước tiên như bình thường (bằng ý định ACTION_MAIN) và được thu thập thông tin cho đến thời gian chờ đã chỉ định. Sau quá trình 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 cho mỗi đường liên kết.

Nếu quy trình 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ì Phòng thử nghiệm sẽ bỏ qua đường liên kết này. Các vấn đề về đường liên kết sâu thường là do có sự không nhất quán giữa đường liên kết sâu được cung cấp và định nghĩa về đường liên kết đó trong ứng dụng của bạn. Hãy kiểm tra cả URL bạn cung cấp và ứng dụng để xem có lỗi chính tả hoặc những điểm không thống nhất khác hay không.

Hỗ trợ cấp phép ứng dụng

Phòng thử nghiệm 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 việc cấp phép khi kiểm thử ứng dụng bằng Phòng thử nghiệm, 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 của bạn trong kênh alpha hoặc beta bằng Phòng thử nghiệm, hãy xoá chế độ kiểm tra cấp phép trước khi tải ứng dụng lên Phòng thử nghiệm.

Các bước tiếp theo