Kiểm thử bằng Robo là một công cụ kiểm thử được tích hợp với Firebase Test Lab. Kiểm thử bằng Robo sẽ 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 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. Kiểm thử bằng Robo luôn mô phỏng các hoạt động của người dùng theo cùng một thứ tự khi bạn dùng tính năng 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 kiểm thử có thể lặp lại này cho phép bạn sử dụng kiểm thử Robo để xác thực các bản sửa lỗi và kiểm thử hồi quy.
Thử nghiệm bằng rô bốt 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 đó để cho bạn thấy các thao tác của người dùng mô phỏng mà rô bốt đã 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 thử bằng Robo này cũng có thể giúp bạn tìm thấy 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 kiểm thử Robo thông thường, bạn có thể tuỳ chỉnh các kiểm thử bằng tập lệnh Robo (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 cho iOS+, hãy xem phần 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ả kiểm thử bằng Robo, Robo sẽ ghi lại số liệu thống kê trong mỗi lần kiểm thử. Test Lab cho biết số liệu thống kê ở đầu thẻ Kiểm thử bằng 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 của tập lệnh Robo, hành động ngẫu nhiên 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 dữ liệu.
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 dữ liệu.
Test Lab cũng sử dụng các số liệu thống kê này để tạo một bản trình bày trực quan về Robo test dưới dạng biểu đồ thu thập dữ liệu. Biểu đồ này có các màn hình làm nút và các thao tác 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 Robo kiểm thử đã 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ờ thử nghiệm Robo
Tuỳ thuộc vào độ phức tạp của giao diện người dùng ứng dụng, kiểm thử Robo có thể mất từ 5 phút trở lên để hoàn tất một bộ tương tác toàn diện với giao diện người dùng. Bạn nên đặt thời gian chờ kiểm thử tối thiểu 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 quy trình kiểm thử chạy từ Android Studio và bảng điều khiển Firebase, cũng như 900 giây (15 phút) đối với các quy trình 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 bằng Robo có thể báo lỗi và 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à bạn 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.
Tăng quyền kiểm soát nhờ 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. Các tập lệnh 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.
Kiểm thử Robo và các tiện ích giao diện người dùng không phải của Android
Quy trình kiểm thử Robo sử dụng Android API để thực hiện trực tiếp các thao tác trên các 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 này cần có khả năng trích xuất mộ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 các chương trình 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 dùng các tiện ích giao diện người dùng Android, thì các kiểm thử Robo sẽ quay lại dùng Thao tác 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, 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ử tốt hơn những màn hình không sử dụng các 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 bộ thao tác nhấn và tương tác theo kịch bản 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 tính năng Kiểm thử bằng 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 bằng 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 bằng tài khoản và nhập văn bản được xác định trước
Thử nghiệm bằng Robo hỗ trợ tính năng đăng nhập bằng tài khoản kiểm thử, đồ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 tính năng đăng nhập tuỳ chỉnh và các văn bản được xác định trước khác, thử nghiệm bằng 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
Thử nghiệm bằng Robo có 2 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 vào tài khoản thử nghiệm, bạn cần cho Kiểm thử bằng Robo biết vị trí nhập thông tin đó, đồng thời 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ì Thử nghiệm bằng Robo sẽ sử dụng một Tài khoản Google thử nghiệm, trừ phi bạn cung cấp thông tin đăng nhập tài khoản thử nghiệm cho chế độ đăng nhập tuỳ chỉnh.
Để cung cấp thông tin đăng nhập cho tài khoản thử nghiệm cho tính năng đă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 Lựa chọn khác.
Trong mục 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 đầu vào 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 đầu vào 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 Lựa chọn khác.
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à 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 bằng Robo sẽ 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 vẫn 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ợ để 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
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 bình thường (bằng cách sử dụng ý định ACTION_MAIN
) và 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 đường liên kết sâu
Nếu Kiểm thử bằng 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 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 việc cấp phép khi kiểm thử ứng dụng bằng Test Lab, bạn phải xuất bản ứng dụng của mình 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 các kiểm thử của bạn bằng tập lệnh Robo.