Bắt đầu kiểm thử cho Android bằng Phòng thử nghiệm Firebase

Phòng thử nghiệm Firebase cho phép bạn kiểm thử ứng dụng của mình trên nhiều loại thiết bị và cấu hình. Hướng dẫn bắt đầu này cung cấp đường dẫn triển khai để bạn thực hiện, cũng như giới thiệu về các sản phẩm Android của Phòng thử nghiệm.

Để biết thông tin về hạn mức và gói giá của Phòng thử nghiệm, hãy xem phần Mức sử dụng, hạn mức và giá.

Khái niệm chính

Khi bạn chạy một chương trình kiểm thử hoặc một nhóm trường hợp kiểm thử trên các thiết bị và cấu hình bạn đã chọn, Phòng thử nghiệm sẽ chạy kiểm thử cho ứng dụng của bạn theo lô, sau đó cho thấy kết quả dưới dạng một ma trận kiểm thử.

Thiết bị × Lượt thực thi kiểm thử = Ma trận kiểm thử

Thiết bị
Một thiết bị thực hoặc ảo (chỉ dành cho Android) mà bạn chạy kiểm thử, chẳng hạn như điện thoại, máy tính bảng hoặc thiết bị đeo. Các thiết bị trong ma trận kiểm thử được xác định theo mẫu thiết bị, phiên bản hệ điều hành, hướng màn hình và ngôn ngữ (còn gọi là chế độ cài đặt địa lý và ngôn ngữ).
Kiểm thử, phiên chạy thử nghiệm
Một bài kiểm thử (hoặc một nhóm trường hợp kiểm thử) sẽ chạy trên thiết bị. Bạn có thể chạy một bài kiểm thử cho mỗi thiết bị hoặc tuỳ ý phân đoạn bài kiểm thử và chạy các trường hợp kiểm thử trên nhiều thiết bị.
Ma trận thử nghiệm
Chứa các trạng thái và kết quả kiểm thử của các lần chạy thử nghiệm. Nếu bất kỳ lần thực thi kiểm thử nào trong một ma trận bị lỗi thì toàn bộ ma trận sẽ bị lỗi.

Bước 1: Chuẩn bị kiểm thử để tải lên Phòng thử nghiệm

Các loại kiểm thử hiện có

Bạn có thể chạy các kiểm thử sau đây bằng Phòng thử nghiệm. Xin lưu ý rằng tất cả các loại kiểm thử đều giới hạn trong 45 phút trên thiết bị thực và 60 phút trên thiết bị ảo. Mọi trường hợp ngoại lệ chưa được nắm bắt đều sẽ gây ra tình trạng kiểm thử không thành công.

  • Kiểm thử đo lường hoặc kiểm thử đơn vị đo lường: Đây là chương trình kiểm thử mà bạn đã viết bằng khung Espresso hoặc Trình tự động hoá giao diện người dùng. Với bài kiểm thử này, bạn có thể đưa ra nhận định rõ ràng về trạng thái của ứng dụng để xác minh chức năng chính xác bằng AndroidJUnitRunnerAPIs.

  • Kiểm thử Robo: Một quy trình kiểm thử tự động phân tích giao diện người dùng của ứng dụng, sau đó khám phá giao diện đó một cách có phương pháp bằng cách mô phỏng các hoạt động của người dùng mà không yêu cầu bạn viết bất kỳ mã nào. Hãy xem bài viết Giới thiệu về kiểm thử Robo để biết thêm thông tin.

  • Kiểm thử Vòng lặp trò chơi: Kiểm thử sử dụng "chế độ minh hoạ" để mô phỏng các hành động của người chơi trong ứng dụng trò chơi. Đây là một cách nhanh chóng và có thể mở rộng để xác minh rằng trò chơi của bạn hoạt động tốt đối với người dùng. Khi chọn chạy kiểm thử Vòng lặp trò chơi, bạn có thể:

    • Viết mã kiểm thử dựa trên công cụ phát triển trò chơi

    • Tránh viết cùng một mã cho nhiều giao diện người dùng hoặc khung kiểm thử

    • Bạn có thể tuỳ ý tạo nhiều vòng lặp để chạy trong một phiên kiểm thử duy nhất (truy cập bài viết Giới thiệu về các loại hình kiểm thử Vòng lặp trò chơi để tìm hiểu thêm). Bạn cũng có thể sắp xếp các vòng lặp bằng cách sử dụng các nhãn để có thể theo dõi và chạy lại các vòng lặp cụ thể.

    Hãy xem bài viết Chạy kiểm thử Vòng lặp trò chơi để biết hướng dẫn về cách chạy kiểm thử này bằng Phòng thử nghiệm.

Công cụ chạy bài kiểm thử

Bạn có thể chọn các công cụ sau đây để chạy kiểm thử:

  • Nên dùng cho người dùng lần đầu: Bảng điều khiển của Firebase cho phép bạn tải ứng dụng lên và bắt đầu kiểm thử từ trình duyệt web. Hãy xem bài viết Kiểm thử bằng bảng điều khiển của Firebase để biết hướng dẫn về cách chạy kiểm thử bằng công cụ này.

  • Tính năng tích hợp Android Studio cho phép bạn kiểm thử ứng dụng mà không cần rời khỏi môi trường phát triển. Hãy xem bài viết Kiểm thử với Android Studio để biết hướng dẫn về cách chạy kiểm thử bằng công cụ này.

  • Giao diện dòng lệnh gcloud cho phép bạn chạy kiểm thử qua dòng lệnh một cách tương tác, đồng thời cũng phù hợp để viết tập lệnh trong quy trình kiểm thử và xây dựng tự động. Hãy xem bài viết Kiểm thử bằng gcloud CLI để biết hướng dẫn về cách chạy kiểm thử bằng công cụ này.

Bạn cũng có thể kiểm thử ứng dụng của mình mà không tốn phí bằng Phòng thử nghiệm khi tải và xuất bản các tệp APK của ứng dụng lên Cửa hàng Play bằng kênh alpha hoặc beta. Để biết thêm thông tin, hãy xem phần Sử dụng báo cáo trước khi ra mắt để xác định sự cốKiểm thử Robo.

Bước 2: Chọn thiết bị thử nghiệm

Phòng thử nghiệm hỗ trợ kiểm thử trên một số nhãn hiệu và kiểu máy Android được cài đặt và chạy trong một trung tâm dữ liệu của Google. Hoạt động kiểm thử trên các thiết bị trong Phòng thử nghiệm giúp bạn phát hiện các vấn đề có thể không xảy ra khi kiểm thử ứng dụng bằng trình mô phỏng trong Android Studio. Để tìm hiểu thêm, hãy xem phần Các thiết bị có sẵn.

Bước 3: Xem lại kết quả thử nghiệm

Bất kể bạn bắt đầu kiểm thử bằng cách nào, tất cả kết quả kiểm thử đều do Phòng thử nghiệm quản lý và bạn có thể xem trực tuyến.

Thông tin tóm tắt kết quả kiểm thử được lưu trữ tự động và bạn có thể xem trong bảng điều khiển của Firebase. Giao diện này chứa các dữ liệu phù hợp nhất cho quy trình kiểm thử của bạn, bao gồm cả video dành riêng cho trường hợp kiểm thử cụ thể, ảnh chụp màn hình, số lượt kiểm thử đạt, không thành công hoặc kết quả không ổn định và nhiều thông tin khác.

Kết quả kiểm thử thô chứa nhật ký kiểm thử và thông tin chi tiết về lỗi ứng dụng, đồng thời được tự động lưu trữ trong bộ chứa Google Cloud. Nếu chỉ định một bộ chứa, bạn phải chịu trách nhiệm về chi phí bộ nhớ. Nếu bạn không chỉ định bộ chứa, thì Phòng thử nghiệm sẽ tạo một bộ chứa miễn phí cho bạn.

Để biết thêm thông tin chi tiết, hãy xem bài viết Phân tích kết quả trong Phòng thử nghiệm Firebase.

Khi bắt đầu kiểm thử trong Android Studio, bạn cũng có thể xem lại kết quả kiểm thử từ bên trong môi trường phát triển của mình.

Dọn dẹp thiết bị

Google rất coi trọng tính bảo mật cho dữ liệu ứng dụng của bạn. Chúng tôi tuân theo các phương pháp hay nhất theo tiêu chuẩn ngành để xoá dữ liệu ứng dụng và đặt lại chế độ cài đặt hệ thống cho các thiết bị thực sau mỗi lần chạy kiểm thử nhằm đảm bảo các thiết bị đó sẵn sàng chạy các lượt kiểm thử mới. Đối với các thiết bị mà chúng tôi có thể cài đặt ROM bằng hình ảnh khôi phục tuỳ chỉnh, chúng tôi tiến thêm một bước bằng cách cài đặt ROM các thiết bị này giữa các lần chạy kiểm thử.

Đối với các thiết bị ảo mà Phòng thử nghiệm sử dụng, các thực thể thiết bị sẽ bị xoá sau khi được sử dụng để mỗi lần chạy kiểm thử sử dụng một thực thể thiết bị ảo mới.


Phòng thử nghiệm và Dịch vụ Google Play

Các thiết bị trong Phòng thử nghiệm thường chạy trên phiên bản mới nhất của SDK Dịch vụ Google Play, nhưng một số thiết bị có thể cần vài ngày để cập nhật sau khi phiên bản SDK mới được phát hành. Xin lưu ý rằng bạn có thể gặp phải vấn đề về khả năng tương thích với một số thiết bị.

Cho phép thiết bị thử nghiệm truy cập vào các máy chủ phụ trợ riêng tư

Một số ứng dụng di động cần giao tiếp với các dịch vụ phụ trợ riêng tư để hoạt động đúng cách trong quá trình kiểm thử. Nếu máy chủ phụ trợ của bạn được bảo vệ bằng các quy tắc tường lửa, thì bạn có thể cho phép các thiết bị thực và ảo của Phòng thử nghiệm truy cập bằng cách sử dụng các khối địa chỉ IP bên dưới để mở các tuyến thông qua tường lửa.

Quảng cáo trên thiết bị di động

Phòng thử nghiệm cung cấp một cơ sở hạ tầng có thể mở rộng, giúp tự động hoá quy trình kiểm thử ứng dụng. Rất tiếc là các ứng dụng độc hại có thể sử dụng tính năng này sai mục đích nhằm tạo ra doanh thu gian lận từ quảng cáo.

Cách giảm thiểu vấn đề này:

  • Nếu sử dụng hoặc hợp tác với nhà cung cấp quảng cáo kỹ thuật số bên thứ ba (ví dụ: mạng quảng cáo hoặc nền tảng bên cầu), bạn nên sử dụng quảng cáo thử nghiệm thay vì quảng cáo thực trong quá trình phát triển và thử nghiệm ứng dụng.

  • Nếu bạn phải sử dụng quảng cáo thực trong thử nghiệm, hãy thông báo cho các nhà cung cấp quảng cáo kỹ thuật số mà bạn hợp tác để lọc ra doanh thu và tất cả lưu lượng truy cập tương ứng được tạo từ Phòng thử nghiệm bằng cách sử dụng các quy tắc chặn địa chỉ IP bên dưới. Bạn không cần thông báo cho các nhà cung cấp quảng cáo thuộc sở hữu của Google; Phòng thử nghiệm sẽ xử lý việc đó giúp bạn.

Địa chỉ IP mà các thiết bị trong Phòng thử nghiệm sử dụng

Tất cả lưu lượng truy cập mạng do các thiết bị trong Phòng thử nghiệm tạo ra đều bắt nguồn từ các khối địa chỉ IP sau. Bạn cũng có thể truy cập vào danh sách này bằng cách sử dụng lệnh gcloud beta firebase test ip-blocks list trong Giao diện dòng lệnh (CLI) của gcloud. Danh sách được cập nhật trung bình mỗi năm một lần.

Loại nền tảng và thiết bị Chặn địa chỉ IP của CIDR
Thiết bị thực Android và iOS, Thiết bị ảo Arm

70.32.128.0/19 (đã thêm vào ngày 02 tháng 02 năm 2022)

108.177.6.0/23

108.177.18.192/26 (đã thêm ngày 02 tháng 02 năm 2022)

108.177.29.64/27 (mở rộng 02-2022)

108.177.31.160/27 (đã thêm ngày 02 tháng 02 năm 2022)

199.36.156.8/29 (đã thêm ngày 02 tháng 02 năm 2022)

199.36.156.16/28 (đã thêm ngày 2 tháng 2 năm 2022)

209.85.131.0/27 (đã thêm ngày 02 tháng 02 năm 2022)

2001:4860:1008::/48 (đã thêm vào ngày 2 tháng 2 năm 2022)

2001:4860:1018::/48 (đã thêm vào ngày 02-2022)

2001:4860:1019::/48 (đã thêm vào ngày 2 tháng 2 năm 2022)

2001:4860:1020::/48 (đã thêm vào ngày 2 tháng 2 năm 2022)

2001:4860:1022::/48 (đã thêm vào ngày 2 tháng 2 năm 2022)

70.32.128.48/28 (đã thêm ngày 04-2024)

Thiết bị ảo Android (không phải cánh tay)

34.68.194.64/29 (đã thêm ngày 11 tháng 11 năm 2019)

34.69.234.64/29 (đã thêm vào ngày 11 tháng 11 năm 2019)

34.73.34.72/29 (đã thêm vào ngày 11 tháng 11 năm 2019)

34.73.178.72/29 (đã thêm vào ngày 11 tháng 11 năm 2019)

34.74.10.72/29 (đã thêm ngày 02 tháng 02 năm 2022)

34.136.2.136/29 (đã thêm vào ngày 02/02/2022)

34.136.50.136/29 (đã thêm vào ngày 02/02/2022)

34.145.234.144/29 (đã thêm vào ngày 2 tháng 2 năm 2022)

35.192.160.56/29

35.196.166.80/29

35.196.169.240/29

35.203.128.0/28

35.234.176.160/28

35.243.2.0/27 (đã thêm vào tháng 7 năm 2019)

35.245.243.240/29 (đã thêm vào ngày 2 tháng 2 năm 2022)

199.192.115.0/30

199.192.115.8/30

199.192.115.16/29

Tính năng chặn IP của thiết bị không còn được sử dụng nữa

74.125.122.32/29 (ngày 2 tháng 2 năm 2022 bị xoá)

216.239.44.24/29 (xoá ngày 2 tháng 2 năm 2022)