Catch up on highlights from Firebase at Google I/O 2023. Learn more

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

Kiểm tra Robo là một công cụ kiểm tra được tích hợp với Phòng thí nghiệm kiểm tra Firebase. Thử nghiệm rô-bốt 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 đó 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 rô-bốt luôn mô phỏng các hoạt động giống nhau của người dùng theo cùng một thứ tự khi bạn sử dụng nó để thử nghiệm một ứng dụng trên một cấu hình thiết bị cụ thể với cùng các cài đặt. Phương pháp thử nghiệm có thể 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à kiểm tra 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 video từ những ảnh chụp màn hình đó để hiển thị cho bạn các thao tác người dùng mô phỏng mà nó đã thực hiện. Các 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 tra Robo này cũng có thể giúp bạn tìm ra các vấn đề với giao diện người dùng của ứng dụng.

Ngoài việc chạy thử nghiệm Robo thông thường, bạn có thể tùy chỉnh thử nghiệm của mình bằng cách sử dụng tập lệnh Robo, đây là một tính năng của thử nghiệm Robo. Để tìm hiểu thêm, hãy xem Chạy tập lệnh Robo .

Nếu bạn muốn dùng thử phiên bản Beta của Robo cho iOS+, hãy xem Chạy thử nghiệm Robo .

Số liệu thống kê thu thập thông tin thử nghiệm Robo

Để giúp bạn giải thích kết quả kiểm tra Robo của mình, kiểm tra Robo ghi lại số liệu thống kê trong mỗi lần thu thập thông tin kiểm tra. Test Lab hiển thị số liệu thống kê ở đầu tab Kiểm tra Robo trong trang kết quả kiểm tra 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 thông tin, bao gồm hành động tập lệnh Robo, hành động khỉ và chỉ thị 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ố lượng màn hình riêng biệt được truy cập trong quá trình thu thập thông tin.

Test Lab cũng sử dụng số liệu thống kê để tạo biểu diễn 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à các nút và các hành động của nó là các cạnh. Bằng cách đi theo các cạnh giữa các màn hình, bạn có thể biết cách Robo kiểm tra ứng dụng của bạn trong suốt quá trình thu thập thông tin.

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

Tùy thuộc vào mức độ phức tạp của giao diện người dùng ứng dụng của bạn, thử nghiệm Robo có thể mất năm phút trở lên để hoàn thành một tập hợp kỹ lưỡng các tương tác giao diện người dùng. Chúng tôi khuyên bạn nên đặt thời gian chờ kiểm tra í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 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 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 để bắt đầu, thử nghiệm Robo có thể gây ra lỗi và sẽ không thể thu thập dữ liệu ứ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 quá lâu và chỉ có thể được giải quyết bằng cách sửa đổi ứng dụng của bạn để giúp ứng dụng khởi động nhanh hơn.

Kiểm soát nhiều hơn với tập lệnh Robo

Đôi khi bạn cần kiểm soát nhiều hơn đối với các bài kiểm tra của mình. Ví dụ: bạn có thể muốn kiểm tra hành trình chung của người dùng hoặc cung cấp đầu vào giao diện người dùng cụ thể như tên người dùng và mật khẩu. Tập lệnh Robo có thể giúp ích. Để tìm hiểu thêm về tập lệnh Robo, hãy xem Chạy tập lệnh Robohướng dẫn tham khảo tập lệnh Robo .

Kiểm tra Robo và tiện ích giao diện người dùng không phải của Android

Thử nghiệm rô-bốt sử dụng API Android để trực tiếp thực hiện các tác vụ trên tiện ích giao diện người dùng Android. Điều đó giúp các thử nghiệm 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 hệ thống phân cấp giao diện người dùng Android cho một màn hình để chạy thử nghiệm trên đó.

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 thử nghiệm Robo sẽ quay lại Monkey Actions để kiểm tra màn hình đó. Không giống như các hành động thử nghiệm Robo có phương pháp hơn, Monkey Actions chỉ mô phỏng các sự kiện chạm 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 tra 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 lần nhấn tùy ý của Hành động khỉ bằng một tập hợp các lần nhấn và tương tác theo kịch bản thông qua Thử nghiệm vòng lặp trò chơi của Firebase Test Lab .

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. Thử nghiệm rô-bốt chạy trên một tập hợp các thiết bị vật lý phổ biến từ các vị trí địa lý khác nhau, cung cấp phạm vi thử nghiệm trên các yếu tố hình thức và cấu hình phần cứng khác nhau. Để tìm hiểu thêm, hãy xem Sử dụng báo cáo trước khi ra mắt để xác định vấn đề .

Kiểm tra đăng nhập tài khoản và nhập văn bản được xác định trước

Kiểm tra Robo hỗ trợ đăng nhập tài khoản kiểm tra 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 của mình. Đối với đăng nhập tùy chỉnh và kiểu nhập văn bản được xác định trước khác, Thử nghiệm rô-bốt 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 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 tùy 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 Robo test biết nơi nhập thông tin đăng nhập và cũng cung cấp các thông tin đăng nhập đó.

  • Đăng nhập tự động: 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ì thử nghiệm Robo sẽ sử dụng tài khoản thử nghiệm của Google, trừ khi bạn cung cấp thông tin đăng nhập tài khoản thử nghiệm để đăng nhập tùy chỉnh.

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

  1. Trên trang Chọn kích thước , chọn Tùy chọn bổ sung .

  2. Trong Thông tin xác thực tài khoản kiểm tra (Tùy chọn) , 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 tra.

Nhập văn bản được xác định trước

Bạn có thể cung cấp văn bản đầu vào tùy chỉnh cho các trường văn bản khác được ứng dụng của bạn sử dụng. Để cung cấp kiểu 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 kích thước , chọn Tùy chọn bổ sung .

  2. Trong Trường bổ sung (Tùy chọn) , nhập một hoặc nhiều tên tài nguyên và các chuỗi để nhập vào các trường văn bản tương ứng.

Lỗi nhập văn bản định sẵn {:#predefined-text}

Kiểm tra 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 Robo không thể tìm thấy trường phù hợp, thì Robo sẽ không nhập văn bản của bạn mà 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 ba liên kết sâu được ứng dụng của mình hỗ trợ để thử nghiệm. 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 liên kết phải khớp với bộ lọc ý định trong ứng dụng của bạn.

Nếu một hoặc nhiều liên kết sâu được cung cấp, ứng dụng sẽ được khởi chạy bình thường trước tiên (sử dụng mục đích ACTION_MAIN ) và được thu thập thông tin cho đến khi hết thời gian chờ đã chỉ định. Sau quá trình thu thập thông tin chính, mỗi liên kết sâu được thu thập thêm 30 giây cho mỗi liên kết sâu.

Nếu Robo test không thể tìm thấy hoạt động khớp với liên kết sâu của bạn, Test Lab sẽ bỏ qua liên kết đó. Các vấn đề liên kết sâu thường là kết quả của sự khác biệt giữa liên kết sâu được cung cấp và định nghĩa của nó trong ứng dụng của bạn. Kiểm tra cả URL được cung cấp và ứng dụng của bạn để tìm lỗi đánh máy 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 việc cấp phép khi thử nghiệm ứng dụng của bạn với Test Lab, bạn phải xuất bản ứng dụng của mình lên kênh sản xuất trong Cửa hàng Play. Để thử nghiệm ứng dụng của bạn trong kênh alpha hoặc beta bằng Test Lab, hãy xóa kiểm tra cấp phép trước khi tải ứng dụng của bạn lên Test Lab.

Bước tiếp theo

,

Kiểm tra Robo là một công cụ kiểm tra được tích hợp với Phòng thí nghiệm kiểm tra Firebase. Thử nghiệm rô-bốt 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 đó 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 rô-bốt luôn mô phỏng các hoạt động giống nhau của người dùng theo cùng một thứ tự khi bạn sử dụng nó để thử nghiệm một ứng dụng trên một cấu hình thiết bị cụ thể với cùng các cài đặt. Phương pháp thử nghiệm có thể 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à kiểm tra 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 video từ những ảnh chụp màn hình đó để hiển thị cho bạn các thao tác người dùng mô phỏng mà nó đã thực hiện. Các 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 tra Robo này cũng có thể giúp bạn tìm ra các vấn đề với giao diện người dùng của ứng dụng.

Ngoài việc chạy thử nghiệm Robo thông thường, bạn có thể tùy chỉnh thử nghiệm của mình bằng cách sử dụng tập lệnh Robo, đây là một tính năng của thử nghiệm Robo. Để tìm hiểu thêm, hãy xem Chạy tập lệnh Robo .

Nếu bạn muốn dùng thử phiên bản Beta của Robo cho iOS+, hãy xem Chạy thử nghiệm Robo .

Số liệu thống kê thu thập thông tin thử nghiệm Robo

Để giúp bạn giải thích kết quả kiểm tra Robo của mình, kiểm tra Robo ghi lại số liệu thống kê trong mỗi lần thu thập thông tin kiểm tra. Test Lab hiển thị số liệu thống kê ở đầu tab Kiểm tra Robo trong trang kết quả kiểm tra 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 thông tin, bao gồm hành động tập lệnh Robo, hành động khỉ và chỉ thị 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ố lượng màn hình riêng biệt được truy cập trong quá trình thu thập thông tin.

Test Lab cũng sử dụng số liệu thống kê để tạo biểu diễn 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à các nút và các hành động của nó là các cạnh. Bằng cách đi theo các cạnh giữa các màn hình, bạn có thể biết cách Robo kiểm tra ứng dụng của bạn trong suốt quá trình thu thập thông tin.

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

Tùy thuộc vào mức độ phức tạp của giao diện người dùng ứng dụng của bạn, thử nghiệm Robo có thể mất năm phút trở lên để hoàn thành một tập hợp kỹ lưỡng các tương tác giao diện người dùng. Chúng tôi khuyên bạn nên đặt thời gian chờ kiểm tra í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 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 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ử nghiệm Robo có thể gây ra lỗi và sẽ không thể thu thập dữ liệu ứ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 quá lâu và chỉ có thể được giải quyết bằng cách sửa đổi ứng dụng của bạn để giúp ứng dụng khởi động nhanh hơn.

Kiểm soát nhiều hơn với tập lệnh Robo

Đôi khi bạn cần kiểm soát nhiều hơn đối với các bài kiểm tra của mình. Ví dụ: bạn có thể muốn kiểm tra hành trình chung của người dùng hoặc cung cấp đầu vào giao diện người dùng cụ thể như tên người dùng và mật khẩu. Tập lệnh Robo có thể giúp ích. Để tìm hiểu thêm về tập lệnh Robo, hãy xem Chạy tập lệnh Robohướng dẫn tham khảo tập lệnh Robo .

Kiểm tra Robo và tiện ích giao diện người dùng không phải của Android

Thử nghiệm rô-bốt sử dụng API Android để trực tiếp thực hiện các tác vụ trên tiện ích giao diện người dùng Android. Điều đó giúp các thử nghiệm 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 hệ thống phân cấp giao diện người dùng Android cho một màn hình để chạy thử nghiệm trên đó.

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 thử nghiệm Robo sẽ quay lại Monkey Actions để kiểm tra màn hình đó. Không giống như các hành động thử nghiệm Robo có phương pháp hơn, Monkey Actions chỉ mô phỏng các sự kiện chạm 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 tra 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 lần nhấn tùy ý của Hành động khỉ bằng một tập hợp các lần nhấn và tương tác theo kịch bản thông qua Thử nghiệm vòng lặp trò chơi của Firebase Test Lab .

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. Thử nghiệm rô-bốt chạy trên một tập hợp các thiết bị vật lý phổ biến từ các vị trí địa lý khác nhau, cung cấp phạm vi thử nghiệm trên các yếu tố hình thức và cấu hình phần cứng khác nhau. Để tìm hiểu thêm, hãy xem Sử dụng báo cáo trước khi ra mắt để xác định vấn đề .

Kiểm tra đăng nhập tài khoản và nhập văn bản được xác định trước

Kiểm tra Robo hỗ trợ đăng nhập tài khoản kiểm tra 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 của mình. Đối với đăng nhập tùy chỉnh và kiểu nhập văn bản được xác định trước khác, Thử nghiệm rô-bốt 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 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 tùy 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 Robo test biết nơi nhập thông tin đăng nhập và cũng cung cấp các thông tin đăng nhập đó.

  • Đăng nhập tự động: 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ì thử nghiệm Robo sẽ sử dụng tài khoản thử nghiệm của Google, trừ khi bạn cung cấp thông tin đăng nhập tài khoản thử nghiệm để đăng nhập tùy chỉnh.

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

  1. Trên trang Chọn kích thước , chọn Tùy chọn bổ sung .

  2. Trong Thông tin xác thực tài khoản kiểm tra (Tùy chọn) , 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 tra.

Nhập văn bản được xác định trước

Bạn có thể cung cấp văn bản đầu vào tùy chỉnh cho các trường văn bản khác được ứng dụng của bạn sử dụng. Để cung cấp kiểu 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 kích thước , chọn Tùy chọn bổ sung .

  2. Trong Trường bổ sung (Tùy chọn) , nhập một hoặc nhiều tên tài nguyên và các chuỗi để nhập vào các trường văn bản tương ứng.

Lỗi nhập văn bản định sẵn {:#predefined-text}

Kiểm tra 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 Robo không thể tìm thấy trường phù hợp, thì Robo sẽ không nhập văn bản của bạn mà 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 ba liên kết sâu được ứng dụng của mình hỗ trợ để thử nghiệm. 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 liên kết phải khớp với bộ lọc ý định trong ứng dụng của bạn.

Nếu một hoặc nhiều liên kết sâu được cung cấp, ứng dụng sẽ được khởi chạy bình thường trước tiên (sử dụng mục đích ACTION_MAIN ) và được thu thập thông tin cho đến khi hết thời gian chờ đã chỉ định. Sau quá trình thu thập thông tin chính, mỗi liên kết sâu được thu thập thêm 30 giây cho mỗi liên kết sâu.

Nếu Robo test không thể tìm thấy hoạt động khớp với liên kết sâu của bạn, Test Lab sẽ bỏ qua liên kết đó. Các vấn đề liên kết sâu thường là kết quả của sự khác biệt giữa liên kết sâu được cung cấp và định nghĩa của nó trong ứng dụng của bạn. Kiểm tra cả URL được cung cấp và ứng dụng của bạn để tìm lỗi đánh máy 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 việc cấp phép khi thử nghiệm ứng dụng của bạn với Test Lab, bạn phải xuất bản ứng dụng của mình lên kênh sản xuất trong Cửa hàng Play. Để thử nghiệm ứng dụng của bạn trong kênh alpha hoặc beta bằng Test Lab, hãy xóa kiểm tra cấp phép trước khi tải ứng dụng của bạn lên Test Lab.

Bước tiếp theo