Tài liệu này mô tả các AVD cho Test Lab, bao gồm cả các lợi ích và hạn chế đã biết. Chúng tôi cũng đưa ra các đề xuất về cách kiểm thử ứng dụng trong suốt vòng đời phát triển. Test Lab AVD đang tương tự như AVD cho Android Studio nhưng được tối ưu hoá về hiệu suất bằng phương thức kiểm thử trên đám mây, vì vậy giữa hai công cụ này có một vài điểm khác biệt.
Các AVD Test Lab có hậu tố .arm hoặc (Arm) đều được nâng cao các trình mô phỏng mang lại các lợi ích sau:
Thời gian thực thi kiểm thử nhanh hơn
Kích thước và mật độ màn hình được điều chỉnh cho phù hợp với AVD của Android Studio cho tính nhất quán
Đồ hoạ tăng tốc hỗ trợ GPU
Bảng sau đây mô tả các lợi ích khi sử dụng thiết bị ảo:
Lợi ích | Nội dung mô tả | (Các) trường hợp sử dụng |
Khả năng hoạt động cao | Bạn có thể chạy thử nghiệm và nhận kết quả thử nghiệm nhanh hơn khi thử nghiệm với thiết bị ảo. Vì các thiết bị ảo được tạo theo yêu cầu, nên thử nghiệm bắt đầu gần như ngay lập tức, giúp xác thực nhanh ứng dụng của bạn. | Kiểm thử các bản cập nhật nhỏ cho ứng dụng hoặc để kiểm thử hồi quy. |
Thời lượng thử nghiệm dài hơn | Các thiết bị ảo hỗ trợ thời lượng thử nghiệm tối đa 60 phút. Các thử nghiệm trên thiết bị thực chỉ diễn ra trong khoảng thời gian thử nghiệm 45 phút trên từng thiết bị. | Chạy các bài kiểm thử dài hơn |
Giảm chi phí | Thiết bị ảo có giá 1 USD/giờ cho mỗi thiết bị ảo được dùng để thử nghiệm ứng dụng của bạn. | Kiểm thử hằng ngày bằng các hệ thống tích hợp liên tục hoặc trước khi kiểm tra trong mã. Để tìm hiểu thêm, hãy xem Mức sử dụng, hạn mức và giá cho Test Lab. |
Kiểm thử ứng dụng bằng các thiết bị ảo
Bạn có thể kiểm thử ứng dụng bằng các thiết bị ảo giống như cách bạn kiểm thử ứng dụng thiết bị thực. Bạn có thể chọn các thiết bị ảo cho thử nghiệm của mình khi định cấu hình ma trận kiểm thử. Để tìm hiểu thêm về cách chạy thử nghiệm với Test Lab, hãy xem bài viết Bắt đầu kiểm thử Android bằng Firebase Test Lab.
Xem các mô hình và API được hỗ trợ
Để xem các mô hình AVD và API được Test Lab hỗ trợ, hãy chạy lệnh sau:
gcloud firebase test android models list --filter=virtual
Các phương pháp hay nhất để kiểm thử ứng dụng
Các thiết bị ảo giúp bạn có thêm nhiều lựa chọn khi kiểm thử ứng dụng bằng Test Lab. Bạn nên áp dụng các phương pháp hay nhất sau đây để kiểm thử ứng dụng trong suốt vòng đời phát triển ứng dụng:
Dùng trình mô phỏng Android Studio hoặc một thiết bị thực đi kèm
Khi phát triển ứng dụng, hãy dùng trình mô phỏng Android Studio hoặc thiết bị thực để kiểm tra từng bản dựng nhằm xác thực ban đầu. Nếu bạn có kiểm thử đo lường, bạn cũng có thể chạy các kiểm thử này từ Android Studio trên thiết bị thực hoặc ảo do Test Lab cung cấp.
Sử dụng hệ thống CI mỗi khi thay đổi mã khi làm việc trên các dự án dùng chung
Nếu bạn làm việc trong một dự án lớn hoặc nếu bạn đóng góp cho các dự án được chia sẻ bằng GitHub hoặc một trang web tương tự, bạn nên sử dụng tính năng tích hợp liên tục (CI). Kiểm thử ứng dụng của bạn trên các thiết bị ảo mỗi khi hệ thống CI chạy hoặc trước mỗi yêu cầu lấy dữ liệu. Để tìm hiểu thêm về cách sử dụng Test Lab với CI hệ thống, hãy xem Sử dụng Test Lab cho Android với tính năng Tích hợp liên tục Hệ thống.
Kiểm thử ứng dụng của bạn trên các thiết bị thực bằng Test Lab trước khi phát hành các bản cập nhật ứng dụng quan trọng
Trước khi phát hành các bản cập nhật ứng dụng có thay đổi đáng kể về giao diện người dùng và chức năng, bạn nên sử dụng Test Lab để kiểm thử ứng dụng của mình trên thiết bị thực. Việc này sẽ giúp đảm bảo rằng ứng dụng của bạn ổn định và hoạt động hiệu quả trên hàng loạt thiết bị thực phổ biến. Kiểm tra vật lý thiết bị cũng đảm bảo phạm vi kiểm thử cho mọi chức năng ứng dụng dựa vào các tính năng thực của thiết bị mà không được mô phỏng bằng các thiết bị ảo. Để tìm hiểu tìm hiểu thêm về các tính năng này, hãy xem phần Các hạn chế đã biết.
Bản cập nhật thiết bị ảo
Nhóm Android định kỳ thêm các hình ảnh thiết bị ảo mới, không dùng các hình ảnh thiết bị cũ nữa và cập nhật các vị trí hiện có. Chúng tôi áp dụng các bản cập nhật này cho thiết bị ảo của mình để đảm bảo rằng bạn đang thử nghiệm trên hệ điều hành Android mới nhất các phiên bản phản ánh của bạn.
Trong một số ít trường hợp, những bản cập nhật này có thể khiến kiểm thử thất bại ngoài dự kiến. Khi có một bản cập nhật đã biết có khả năng gây lỗi, Test Lab sẽ đưa thông tin vào ghi chú phát hành. Bạn nên sử dụng các khung kiểm thử (ví dụ: Espresso) có khả năng thích ứng tốt với những thay đổi này bất cứ khi nào có thể. Nếu không thể làm vậy, bạn nên nhắm đến các thiết bị ảo Arm. bạn có thể cập nhật ít thường xuyên hơn.
Các hạn chế đã biết
Một số tính năng của thiết bị thực tế hiện không được mô phỏng bằng các thiết bị ảo, hoặc được mô phỏng với một số hạn chế. Bảng sau đây tóm tắt các tính năng hiện không hoạt động trên các thiết bị ảo hoặc tương thích với một số giới hạn nhất định:
Tính năng | Thông tin chi tiết |
Giao diện nhị phân của ứng dụng (ABI) | Không phải thiết bị nào cũng hỗ trợ tất cả ABI. Nếu bạn
đang phát triển bằng Android NDK, hãy nhớ tạo mã cho
ABI mà thiết bị bạn nhắm đến hỗ trợ (xem phần Hiện có
thiết bị ở
Test Lab). Để tìm hiểu thêm về tính năng quản lý ABI, hãy xem bài viết Android
ABI.
Lưu ý: Nếu một kiểm thử trong ma trận kiểm thử của bạn bị đánh dấu là Không hợp lệ, thì điều này có thể xảy ra vì ứng dụng của bạn có phần phụ thuộc trên mã gốc mà ABI thiết bị không hỗ trợ. |
Hiệu suất đồ hoạ | Sử dụng thiết bị ảo Nexus và Pixel kết xuất đồ hoạ bằng phần mềm. Các ứng dụng chuyên về đồ hoạ có thể có hiệu suất thấp hơn. Nếu ứng dụng của bạn nặng về đồ hoạ, hãy cân nhắc họ sử dụng SmallPhone.arm, MediumPhone.arm hoặc thiết bị thực. |
API đồ hoạ | OpenGL ES 3.x không được hỗ trợ trên các thiết bị dưới API cấp 29. Các thiết bị mới hơn không tương thích 100% với API OpenGL/Vulkan, bạn có thể nhận thấy sự khác biệt nhỏ về đồ hoạ. |
Ứng dụng Cửa hàng Google Play | Ứng dụng Cửa hàng Google Play không được hỗ trợ trên các thiết bị ảo Arm. |
Chức năng thực tế tăng cường (AR) | Kiểm thử chế độ Tăng cường Các thiết bị ảo không hỗ trợ chức năng thực tế (AR). |
Cấp độ API cũ hơn | Test Lab Arm thiết bị ảo không hỗ trợ cấp độ API dưới 26. |