Cuttlefish: Chạy CTS ổn định

Trang này mô tả cách chạy Bộ kiểm tra tính tương thích (CTS) để đánh giá thiết bị ảo của bạn dựa trên AOSP (Dự án nguồn mở Android) mã nguồn.

Tạo Cuttlefish

Trước khi chạy CTS, hãy tạo thiết bị ảo mà bạn muốn kiểm thử bằng CTS. Đối với AOSP Cuttlefish, hãy làm như sau:

source build/envsetup.sh
lunch aosp_cf_x86_64_phone-userdebug
make -j

Xây dựng CTS

CTS được tạo riêng biệt với cấu phần phần mềm của thiết bị. Để tạo CTS, hãy làm theo các hướng dẫn sau.

Từ thư mục gốc của cùng một cây nơi Cuttlefish được tạo, hãy chạy các lệnh sau:

source build/envsetup.sh
m -j cts WITH_DEXPREOPT_BOOT_IMG_AND_SYSTEM_SERVER_ONLY=false TARGET_PRODUCT=aosp_x86_64

Khởi chạy thực thể Mực nang nhiều người thuê

Từ gốc của cùng một cái cây nơi con mực được tạo ra, hãy chạy đoạn mã sau các lệnh:

source build/envsetup.sh
lunch aosp_cf_x86_64_phone-userdebug
launch_cvd --num_instances=8 --daemon

Khi thực thể bắt đầu, hãy xác minh rằng từng thiết bị có thể truy cập adb.

adb devices

Kết quả sẽ có dạng tương tự như kết quả ví dụ dưới đây:

List of devices attached
127.0.0.1:6520  device
127.0.0.1:6521  device
127.0.0.1:6522  device
127.0.0.1:6523  device
127.0.0.1:6524  device
127.0.0.1:6525  device
127.0.0.1:6526  device
127.0.0.1:6527  device

Bật Wi-Fi trên các phiên bản Mực ống

Một số kiểm thử CTS sẽ không thành công nếu bạn không bật Wi-Fi. Để bật Wi-Fi trên tất cả thiết bị thiết bị Mực nang được lưu trữ cục bộ, hãy làm theo các hướng dẫn sau.

Từ gốc của cùng một cái cây nơi con mực được tạo ra, hãy chạy đoạn mã sau các lệnh:

for SERIAL in $(adb devices | grep -E '127.+device$' | cut -f1); do
adb -s ${SERIAL} install -r -g tools/tradefederation/core/res/apks/wifiutil/WifiUtil.apk
adb -s ${SERIAL} shell su root svc wifi enable
adb -s ${SERIAL} shell am instrument -e method "connectToNetwork" -e scan_ssid "false" -e ssid "VirtWifi" -w com.android.tradefed.utils.wifi/.WifiUtil
done

Chạy tập hợp con ổn định của CTS

Không phải tất cả các CTS đều vượt qua được đối với mực ống, vì một số bài kiểm tra đòi hỏi nhiều hơn được điều chỉnh cho phù hợp với các thiết bị thực tế. Để chạy CTS bằng Kế hoạch thử nghiệm cts-virtual-device-stable theo dõi những nội dung ổn định mới nhất trên nền tảng ảo, hãy làm theo các hướng dẫn sau.

Từ thư mục gốc của cùng một cây nơi Cuttlefish được tạo, hãy chạy các lệnh sau:

source build/envsetup.sh
lunch aosp_cf_x86_64_phone-userdebug
cts-tradefed run cts-virtual-device-stable --no-enable-parameterized-modules --max-testcase-run-count 2 --retry-strategy RETRY_ANY_FAILURE --reboot-at-last-retry --shard-count 8

Dự kiến thử nghiệm sẽ chạy trong 20 đến 25 phút và xuất bản tóm tắt tương tự như sau:

=============== Summary ===============
Total Run time: 22m 8s
184/184 modules completed
Total Tests       : 92483
PASSED            : 92363
FAILED            : 0
IGNORED           : 71
ASSUMPTION_FAILURE: 49
Shard 0 used: [127.0.0.1:6522]
Shard 1 used: [127.0.0.1:6525]
Shard 2 used: [127.0.0.1:6524]
Shard 3 used: [127.0.0.1:6521]
Shard 4 used: [127.0.0.1:6520]
Shard 5 used: [127.0.0.1:6527]
Shard 6 used: [127.0.0.1:6526]
Shard 7 used: [127.0.0.1:6523]
============== End of Results ==============

Dọn dẹp

Khi quá trình kiểm thử hoàn tất, hãy dừng các thiết bị ảo.

Từ gốc của cùng một cái cây nơi con mực được tạo ra, hãy chạy đoạn mã sau các lệnh:

source build/envsetup.sh
lunch aosp_cf_x86_64_phone-userdebug
stop_cvd