Bắt đầu với Phòng thử nghiệm Firebase dành cho iOS

Firebase Test Lab cho phép bạn kiểm thử chất lượng ứng dụng trên nhiều thiết bị và cấu hình. Hướng dẫn này cung cấp thông tin tổng quan về các khái niệm chính của Test Lab, các sản phẩm dành cho iOS và hướng dẫn về cách bắt đầu kiểm thử.

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

Các khái niệm và thuật ngữ chính

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

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

Thiết bị
Thiết bị thực hoặc thiết bị ả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 ngôn ngữ và vị trí địa lý).
Kiểm thử, thực thi kiểm thử
Một kiểm thử (hoặc một tập hợp các trường hợp kiểm thử) sẽ chạy trên một thiết bị. Bạn có thể chạy một chương trình kiểm thử trên mỗi thiết bị hoặc phân đoạn chương trình kiểm thử và chạy các trường hợp kiểm thử trên nhiều thiết bị (không bắt buộc).
Ma trận kiểm thử
Chứa trạng thái và kết quả kiểm thử cho các lần thực thi kiểm thử. Nếu bất kỳ lượt thực thi kiểm thử nào trong một ma trận không thành công, thì toàn bộ ma trận sẽ không thành công.

Bước 1: Chuẩn bị kiểm thử để tải lên Test Lab

Bạn có thể chạy các chương trình kiểm thử sau bằng Test Lab. Xin lưu ý rằng tất cả các loại kiểm thử có thể chạy tối đa 45 phút trên thiết bị thực và mọi trường hợp ngoại lệ không được phát hiện sẽ khiến kiểm thử không thành công.

  • XCTest (bao gồm cả XCUITests): Một bài kiểm thử đơn vị mà bạn đã viết bằng khung XCTest. Truy cập vào phần Tạo XCTest để xem hướng dẫn về cách sửa đổi XCTest để chạy với Test Lab.

  • Kiểm thử vòng lặp trò chơi: Một kiểm thử sử dụng "chế độ minh hoạ" để mô phỏng 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 hiệu quả cho 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ử gốc cho 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ể tạo nhiều vòng lặp để chạy trong một lần thực thi kiểm thử. Bạn cũng có thể sắp xếp các vòng lặp bằng cách sử dụng nhãn để có thể theo dõi và chạy lại các vòng lặp cụ thể.

    Truy cập vào phần Chạy kiểm thử Vòng lặp trò chơi để xem hướng dẫn về cách chạy kiểm thử trong Test Lab.

Bước 2: Chọn một công cụ để chạy kiểm thử

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

  • Bảng điều khiển Firebase cho phép bạn tải ứng dụng lên và bắt đầu kiểm thử từ bất cứ đâu. Hãy xem bài viết Kiểm thử bằng bảng điều khiển Firebase để biết hướng dẫn sử dụng công cụ này.

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

  • Trước khi kiểm thử trên thiết bị thực, hãy chạy kiểm thử trên trình mô phỏng cục bộ để đảm bảo kiểm thử hoạt động như dự kiến. Hãy xem phần Kiểm thử cục bộ để biết hướng dẫn.

Bước 3: Chỉ định thiết bị thử nghiệm

Với Test Lab, bạn có thể chạy kiểm thử trên ứng dụng của mình trên nhiều thiết bị và mô hình iOS được lưu trữ trong trung tâm dữ liệu của Google. Để tìm hiểu thêm, hãy xem phần Thiết bị có sẵn.

Bước 4: Xem lại kết quả kiểm thử

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

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

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 một bộ chứa trên Google Cloud. Nếu chỉ định một bộ chứa, bạn sẽ phải chịu chi phí lưu trữ. Nếu bạn không chỉ định bộ chứa, Test Lab sẽ tạo một bộ chứa cho bạn mà không tính phí.

Để biết thêm thông tin, hãy xem phần Phân tích kết quả Firebase Test Lab.

Dọn dẹp thiết bị

Google rất coi trọng vấn đề bảo mật 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ử để đảm bảo rằng các thiết bị đó đã sẵn sàng chạy các kiểm thử mới. Đối với các thiết bị mà chúng ta có thể cài đặt ROM bằng hình ảnh khôi phục tuỳ chỉnh, chúng ta sẽ tiến thêm một bước bằng cách cài đặt ROM cho 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à Test Lab 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ử đều sử dụng một thực thể thiết bị ảo mới.


Cho phép thiết bị Test Lab truy cập vào máy chủ phụ trợ riêng

Một số ứng dụng di động cần giao tiếp với các dịch vụ phụ trợ riêng để 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, bạn có thể cho phép truy cập vào các thiết bị thực và ảo của Test Lab 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

Test Lab cung cấp một cơ sở hạ tầng có thể mở rộng để tự động hoá việc kiểm thử ứng dụng. Tuy nhiên, đáng tiếc là các ứng dụng độc hại được thiết kế để tạo doanh thu quảng cáo gian lận có thể sử dụng sai chức năng này.

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

  • Nếu sử dụng hoặc làm việ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 tế trong quá trình phát triển và kiểm thử ứ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ừ Test Lab bằng cách sử dụng các khối đị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; Test Lab sẽ thay bạn làm việc đó.

Địa chỉ IP mà thiết bị Test Lab sử dụng

Tất cả lưu lượng truy cập mạng do thiết bị Test Lab 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 CLI gcloud. Danh sách này được cập nhật trung bình một lần mỗi năm.

Loại nền tảng và thiết bị Khối địa chỉ IP 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 2 tháng 2 năm 2022)

108.177.6.0/23

108.177.18.192/26 (thêm vào ngày 2 tháng 2 năm 2022)

108.177.29.64/27 (mở rộng tháng 2 năm 2022)

108.177.31.160/27 (thêm vào ngày 2 tháng 2 năm 2022)

199.36.156.8/29 (bổ sung vào tháng 2 năm 2022)

199.36.156.16/28 (bổ sung vào tháng 2 năm 2022)

209.85.131.0/27 (được thêm vào ngày 2 tháng 2 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 2 tháng 2 năm 2022)

2001:4860:1019::/48 (đã thêm vào 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 vào ngày 4 tháng 4 năm 2024)

Thiết bị Android ảo (Không phải Arm)

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

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

34.73.34.72/29 (được thêm vào tháng 11 năm 2019)

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

34.74.10.72/29 (bổ sung vào tháng 2 năm 2022)

34.136.2.136/29 (bổ sung vào tháng 2 năm 2022)

34.136.50.136/29 (được thêm vào tháng 2 năm 2022)

34.145.234.144/29 (được thêm vào 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 ngày 7 tháng 7 năm 2019)

35.245.243.240/29 (được thêm vào tháng 2 năm 2022)

199.192.115.0/30

199.192.115.8/30

199.192.115.16/29

Không còn sử dụng các khối IP của thiết bị

74.125.122.32/29 (đã xoá vào tháng 2 năm 2022)

216.239.44.24/29 (đã xoá vào tháng 2 năm 2022)