Tài liệu này mô tả AVD cho Test Lab, bao gồm cả lợi ích và các hạn chế đã biết. Chúng tôi cũng cung cấp 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 tương tự như AVD cho Android Studio nhưng được tối ưu hoá hiệu suất bằng kiểm thử trên đám mây, vì vậy có một số điểm khác biệt giữa hai loại AVD này.
Test Lab AVD có hậu tố .arm hoặc (Arm) là các trình mô phỏng nâng cao mang lại những 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 phù hợp với AVD của Android Studio để đảm bảo tính nhất quán
GPU hỗ trợ đồ hoạ tăng tốc
Bảng sau đây mô tả những lợi ích khi sử dụng thiết bị ảo:
Lợi ích | Nội dung mô tả | Trường hợp sử dụng |
Tính sẵn sàng cao | Bạn có thể chạy các kiểm thử và nhận kết quả kiểm thử nhanh hơn khi kiểm thử bằng thiết bị ảo. Vì các thiết bị ảo được tạo theo yêu cầu, nên các chương trình kiểm thử của bạn sẽ bắt đầu gần như ngay lập tức, giúp bạn nhanh chóng xác thực ứng dụng. | 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 | Thiết bị ảo hỗ trợ thời gian kiểm thử tối đa 60 phút. Thời gian kiểm thử trên thiết bị thực bị giới hạn ở 45 phút trên mỗi thiết bị. | Chạy các thử nghiệm dài hơn |
Chi phí thấp hơn | Thiết bị ảo có giá 1 USD/giờ cho mỗi thiết bị ảo được dùng để kiểm thử ứng dụng của bạn. | Kiểm thử hằng ngày bằng hệ thống tích hợp liên tục hoặc trước khi kiểm tra mã. Để tìm hiểu thêm, hãy xem bài viết Mức sử dụng, hạn mức và giá của Test Lab. |
Kiểm thử ứng dụng bằng thiết bị ảo
Bạn có thể kiểm thử ứng dụng của mình bằng các thiết bị ảo theo cách tương tự như khi kiểm thử bằng các thiết bị thực. Bạn có thể chọn thiết bị ảo cho các kiểm thử khi định cấu hình ma trận kiểm thử. Để tìm hiểu thêm về cách chạy kiểm thử bằng Test Lab, hãy xem bài viết Bắt đầu kiểm thử cho 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 mà 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
Thiết bị ảo giúp bạn có nhiều lựa chọn hơ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:
Sử dụng trình mô phỏng Android Studio hoặc một thiết bị thực được đính kèm
Khi phát triển ứng dụng, hãy sử dụng trình mô phỏng Android Studio hoặc một thiết bị thực được đính kèm để kiểm tra từng bản dựng nhằm xác thực ban đầu. Nếu có cá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 cho mỗi thay đổi về mã khi làm việc trên các dự án dùng chung
Nếu làm việc trong một dự án lớn hoặc nếu đó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 hệ thống tích hợp liên tục (CI). Kiểm thử ứng dụng 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 kéo. Để tìm hiểu thêm về cách sử dụng Test Lab với các hệ thống CI, hãy xem bài viết Sử dụng Test Lab cho Android với các hệ thống Tích hợp liên tục.
Kiểm thử ứng dụng 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 quan trọng cho ứng dụng
Trước khi phát hành bản cập nhật ứng dụng có những thay đổi đáng kể về giao diện người dùng và chức năng, bạn nên dùng Test Lab để kiểm thử ứng dụng trên các thiết bị thực. Điều 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 nhiều thiết bị thực phổ biến. Việc kiểm thử trên thiết bị thực cũng đảm bảo phạm vi kiểm thử cho mọi chức năng của ứng dụng dựa trên các tính năng của thiết bị thực mà thiết bị ảo không mô phỏng được. Để 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 kỳ, nhóm Android sẽ thêm hình ảnh thiết bị ảo mới, ngừng sử dụng hình ảnh cũ và cập nhật hình ảnh hiện có. Chúng tôi áp dụng những bản cập nhật này cho hình ảnh thiết bị ảo để giúp đảm bảo rằng bạn đang kiểm thử dựa trên các phiên bản Android mới nhất phản ánh trải nghiệm của người dùng.
Trong một số ít trường hợp, những bản cập nhật này có thể khiến các bài kiểm thử gặp lỗi ngoài dự kiến. Khi có một bản cập nhật có khả năng gây lỗi đã biết, 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 với những thay đổi này bất cứ khi nào có thể. Khi không thể thực hiện việc đó, bạn nên nhắm đến các thiết bị ảo Arm. Bạn có thể dự kiến sẽ cập nhật các thiết bị này ít thường xuyên hơn.
Các hạn chế đã biết
Hiện tại, các thiết bị ảo không mô phỏng được một số tính năng của thiết bị thực hoặc mô phỏng được nhưng có một số hạn chế. Bảng sau đây tóm tắt các tính năng hiện không dùng được trên thiết bị ảo hoặc dùng được nhưng có một số hạn chế:
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 các ABI mà thiết bị bạn nhắm đến hỗ trợ (xem Các thiết bị hiện có trong Test Lab). Để tìm hiểu thêm về việc quản lý ABI, hãy xem bài viết ABI Android.
Lưu ý: Nếu một bài kiểm thử trong ma trận kiểm thử của bạn được đá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ó một phần phụ thuộc vào mã gốc mà ABI thiết bị không hỗ trợ. |
Hiệu suất đồ hoạ | Thiết bị ảo Nexus và Pixel sử dụng tính năng kết xuất đồ hoạ phần mềm. Các ứng dụng sử dụng nhiều đồ hoạ có thể gặp phải tình trạng hiệu suất thấp hơn. Nếu ứng dụng của bạn có nhiều đồ hoạ, hãy cân nhắc sử dụng SmallPhone.arm, MediumPhone.arm hoặc các thiết bị thực tế. |
API Đồ hoạ | OpenGL ES 3.x không được hỗ trợ trên các thiết bị có API cấp dưới 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 những điểm 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) | Các thiết bị ảo không hỗ trợ kiểm thử chức năng Thực tế tăng cường (AR). |
Các cấp độ API cũ | Test Lab Thiết bị ảo Arm không hỗ trợ cấp độ API dưới 26. |