Bắt đầu thử nghiệm với Thiết bị ảo Android

Tài liệu này mô tả AVD dành cho Test Lab, bao gồm các lợi ích và hạn chế đã biết. Chúng tôi cũng đưa ra đề xuất về cách thử nghiệm ứng dụng của bạn trong suốt vòng đời phát triển. AVD của Test Lab tương tự như AVD dành cho Android Studio nhưng được tối ưu hóa về hiệu suất khi thử nghiệm trên đám mây, do đó, có một số điểm khác biệt giữa hai loại này.

Các AVD của Test Lab 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 hiện kiểm tra nhanh hơn

  • Kích thước và mật độ màn hình được điều chỉnh phù hợp với AVD của Android Studio để đảm bảo tính nhất quán

  • Đồ họa tăng tốc được hỗ trợ GPU

Bảng sau mô tả lợi ích của việc sử dụng thiết bị ảo:

Lợi ích Sự miêu tả Trường hợp sử dụng)
Tính sẵn sàng cao Bạn có thể chạy thử nghiệm và nhận kết quả kiểm tra nhanh hơn khi thử nghiệm 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 thử nghiệm của bạn sẽ bắt đầu gần như ngay lập tức, mang lại khả năng xác thực nhanh chóng cho ứng dụng của bạn. Kiểm tra các bản cập nhật nhỏ cho ứng dụng của bạn hoặc để kiểm tra hồi quy.
Thời gian thử nghiệm dài hơn Các thiết bị ảo hỗ trợ thời gian thử nghiệm lên tới 60 phút. Các thử nghiệm trên thiết bị vật lý được giới hạn trong thời gian thử nghiệm là 45 phút trên mỗi thiết bị. Chạy thử nghiệm dài hơn
Giá rẻ Thiết bị ảo có giá 1 USD mỗi giờ cho mỗi thiết bị ảo được sử dụng để kiểm tra ứng dụng của bạn. Kiểm tra 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 Mức sử dụng, hạn ngạch và mức giá dành cho Test Lab .

Kiểm tra ứng dụng của bạn với các thiết bị ảo

Bạn có thể thử nghiệm ứng dụng của mình với các thiết bị ảo giống như cách bạn thử nghiệm ứng dụng đó với các thiết bị thực. Bạn có thể chọn thiết bị ảo cho các thử nghiệm của mình khi định cấu hình ma trận thử nghiệm. Để tìm hiểu thêm về cách chạy thử nghiệm với Test Lab, hãy xem Bắt đầu thử nghiệm cho Android với 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 để thử nghiệm ứng dụng của bạn

Các thiết bị ảo tăng thêm nhiều lựa chọn khi bạn thử nghiệm ứng dụng của mình với Test Lab. Chúng tôi khuyên bạn nên sử dụng các phương pháp hay nhất sau đây để thử nghiệm ứng dụng của mình 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 thiết bị vật lý đính kèm

Khi phát triển ứng dụng của bạn, hãy sử dụng trình mô phỏng Android Studio hoặc thiết bị vật lý đi kèm để kiểm tra từng bản dựng nhằm xác thực lần đầu. Nếu có các bài kiểm tra đo lường, bạn cũng có thể chạy các bài kiểm tra này từ Android Studio trên các thiết bị vật lý hoặc ảo do Test Lab cung cấp.

Sử dụng hệ thống CI cho mỗi lần thay đổi mã khi làm việc trên các dự án 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 tương tự, chúng tôi khuyên bạn nên sử dụng hệ thống tích hợp liên tục (CI). Kiểm tra ứng dụng của bạn trên thiết bị ảo mỗi khi hệ thống CI chạy hoặc trước mỗi lần kéo yêu cầu. Để tìm hiểu thêm về cách sử dụng Test Lab với hệ thống CI, hãy xem Sử dụng Test Lab cho Android với Hệ thống tích hợp liên tục .

Kiểm tra ứng dụng của bạn trên các thiết bị vật lý với Test Lab trước khi bạn 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 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, chúng tôi khuyên bạn nên sử dụng Test Lab để thử nghiệm ứng dụng của mình trên 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 tốt trên nhiều loại thiết bị vật lý phổ biến. Thử nghiệm trên thiết bị vật lý cũng đảm bảo phạm vi thử nghiệm cho mọi chức năng ứng dụng dựa trên các tính năng của thiết bị vật lý không được mô phỏng bởi thiết bị ảo. Để tìm hiểu thêm về các tính năng này, hãy xem Các hạn chế đã biết .

Cập nhật thiết bị ảo

Theo định kỳ, nhóm Android sẽ thêm hình ảnh thiết bị ảo mới, loại bỏ hình ảnh cũ và cập nhật hình ảnh hiện có. Chúng tôi áp dụng những cập nhật này cho hình ảnh thiết bị ảo của mình để giúp đảm bảo rằng bạn đang thử nghiệm các phiên bản Android cập 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 thử nghiệm không thành công ngoài dự kiến. Khi biết có một bản cập nhật có khả năng bị hỏng, Test Lab sẽ đưa thông tin vào ghi chú phát hành . Cách tốt nhất là bạn nên sử dụng các khung thử nghiệm – ví dụ: Espresso – có khả năng chống chịu những thay đổi này bất cứ khi nào có thể. Khi điều đó là không thể, chúng tôi khuyên bạn nên nhắm mục tiêu các thiết bị ảo Arm mà bạn có thể mong đợi cập nhật ít thường xuyên hơn.

Những hạn chế đã biết

Một số tính năng của thiết bị vật lý hiện không được mô phỏng bằng 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 khả dụng trên thiết bị ảo hoặc khả dụng với một số hạn chế nhất định:

Tính năng Chi tiết
Giao diện nhị phân ứng dụng (ABI) Không phải tất cả các thiết bị đều hỗ trợ tất cả ABI. Nếu bạn đang phát triển bằng NDK của Android, hãy đảm bảo tạo mã cho ABI được thiết bị bạn nhắm mục tiêu hỗ trợ (xem Các thiết bị có sẵn trong Test Lab). Để tìm hiểu thêm về quản lý ABI, hãy xem Android ABI .

Lưu ý: Nếu thử nghiệm trong ma trận thử nghiệm của bạn được đánh dấu là Không hợp lệ thì điều này có thể xảy ra do ứng dụng của bạn phụ thuộc vào mã gốc không được ABI của thiết bị hỗ trợ.

Hiệu suất đồ họa Thiết bị ảo Nexus và Pixel sử dụng kết xuất đồ họa phần mềm. Các ứng dụng chuyên sâu về đồ họa có thể có hiệu suất thấp hơn. Nếu ứng dụng của bạn có nhiều đồ họa, hãy cân nhắc sử dụng SmallPhone.arm, MediumPhone.arm hoặc thiết bị vật lý thay thế.
API đồ họa 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 những khác biệt nhỏ về đồ họa.
Ứ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) Việc thử nghiệm chức năng Thực tế tăng cường (AR) không được hỗ trợ trên các thiết bị ảo.
Cấp độ API cũ hơn Các thiết bị ảo Test Lab Arm không hỗ trợ cấp độ API dưới 26.

Bước tiếp theo