Trang này chứa hướng dẫn sử dụng các kiểm thử Better Together CTS Verifier (CTS-V) cho Android 16 QPR2 trở lên.
Thiết lập các kiểm thử trên nhiều thiết bị phía máy chủ
Phần này giải thích cách thiết lập các kiểm thử trên nhiều thiết bị.
- Xác minh rằng máy tính của bạn đáp ứng các yêu cầu về hệ điều hành đối với CTS.
Làm theo bước 2 và 5 của phần Cài đặt phần mềm máy tính để cài đặt và xác minh rằng adb, AAPT2 và Python đã được cài đặt đúng cách trên máy tính của bạn.
- Phiên bản Python của bạn phải là 3.11 trở lên. Để xác định phiên bản Python, hãy chạy
python3 --version. Nếu phiên bản thấp hơn 3.11, hãy cài đặt bản phát hành Python chính thức mới nhất. Để biết thêm thông tin, hãy xem phần Tải xuống củapython.org. - Một số kiểm thử yêu cầu máy chủ lưu trữ phải có mô-đun Python
venv. Trên các hệ thống Debian và Ubuntu, mô-đun này có thể không được cài đặt theo mặc định. Để xác định xem phiên bản Python của bạn có mô-đunvenvhay không, hãy chạypython3 -m venv venv. Nếu lệnh này không thành công, bạn sẽ thấy một thông báo lỗi. Làm theo lời nhắc để cài đặt góipython3.x-venv.
- Phiên bản Python của bạn phải là 3.11 trở lên. Để xác định phiên bản Python, hãy chạy
Chuẩn bị 2 thiết bị đang kiểm thử (DUT) trùng khớp, mỗi thiết bị có thiết lập CTS-V.
- Để biết thông tin về cách thiết lập DUT, hãy xem bài viết Thiết lập DUT.
- Để biết hướng dẫn về cách thiết lập CTS-V, hãy xem phần Thiết lập.
Chuyển đến phần thiết lập cho loại kiểm thử của bạn:
- Đối với các kiểm thử NFC, hãy xem phần Thiết lập các kiểm thử NFC.
- Đối với các bài kiểm thử kết nối AP Wi-Fi, hãy chuyển đến phần Thiết lập các bài kiểm thử kết nối AP Wi-Fi.
- Để kiểm thử mô-đun CDM, hãy chuyển đến phần Thiết lập các kiểm thử tiêu chuẩn trên 2 thiết bị rồi chuyển đến phần Thiết lập các kiểm thử CDM.
Nếu kiểm thử của bạn không có trong danh sách này, hãy chuyển đến phần Thiết lập kiểm thử tiêu chuẩn trên 2 thiết bị
Thiết lập các kiểm thử NFC
Các bài kiểm thử NFC sử dụng một DUT và một chip NFC PN532.
Cách thiết lập các kiểm thử NFC:
- Mua một chip NFC PN532. Bạn nên dùng PN532 đa năng.
Trên DUT, hãy chuyển đến ứng dụng Cài đặt.
Bật NFC.
Đặt chip NFC:
Đối với điện thoại, hãy đặt đầu đọc NFC của DUT như minh hoạ trong Hình 1:

Hình 1. Vị trí của chip NFC.
Đối với các loại thiết bị khác, hãy đặt thẻ bên cạnh ăng-ten NFC của thiết bị.
Gắn chip NFC PN532 vào máy trạm kiểm thử bằng cáp USB.
Không bắt buộc: Thiết lập các bài kiểm thử kết nối AP Wi-Fi
Các bài kiểm tra kết nối điểm truy cập (AP) Wi-Fi (CtsWifiConnectionTests) kiểm tra khả năng kết nối giữa DUT và AP. Bạn nên chạy các kiểm thử này, nhưng chúng không bắt buộc trong CTS-V Android 16 16 QPR2.
Các thử nghiệm này yêu cầu một DUT và một AP OpenWrt Banana Pi R3.
Cách thiết lập các kiểm thử kết nối AP Wi-Fi:
Mua Banana Pi R3 AP và các phụ kiện có trong bảng này:
Mục Số lượng Bo mạch BPi-R3, tương tự như Bo mạch định tuyến Banana Pi BPI-R3 có thiết kế chip MediaTek MT7986 hỗ trợ Wi-Fi 6 ,RAM DDR 2G ,bộ nhớ flash eMMC 8G trên bo mạch 1 Hộp đựng bằng nhôm BPi-R3, tương tự như hộp đựng bằng sắt BPI-R3 1 Đế tản nhiệt bằng nhôm BPi-R3 (quạt làm mát), tương tự như đế tản nhiệt bằng nhôm BPI-R3 có quạt 1 Ăng-ten 2 và 5 GHz có cáp, tương tự như ăng-ten 5DB trong cửa hàng BPI 8 Bộ sạc, tương tự như nguồn điện 12V/2A DC 1 Để mua hàng, hãy xem phần Dễ mua trên trang Banana Pi BPI-R3.
Thiết lập điểm truy cập. Để biết thông tin về cách thiết lập điểm truy cập, hãy xem bài viết Thiết lập AP Banana Pi BPI-R3.
Không bắt buộc: Nếu không có hộp chắn, bạn nên dùng hộp chắn JTP-SR101. Mua hộp này bằng cách sử dụng thông tin sau:
Dong Guan Zheng Sheng Electronics Technology Co., LTD
Bohui Industrial Park, Panlong Road, Liaobu Town, Dongguan City, Guangdong Province, Trung Quốc
Người liên hệ: Forest Pan
Email: forest.pan@jtpmak.cn
Điện thoại (Trung Quốc): +86 18676993556Kết nối DUT và AP với máy chủ rồi đặt vào hộp chắn sóng vô tuyến. DUT và AP phải cách nhau ít nhất 10 cm. Hình 2 cho thấy cấu hình này:

Hình 2. DUT và AP trong hộp chắn.
Sử dụng SSH để xác minh rằng máy chủ có thể truy cập vào AP.
Thiết lập các bài kiểm thử tiêu chuẩn trên 2 thiết bị
Đối với chế độ thiết lập mặc định cho 2 thiết bị:
- Đặt 2 DUT Android trùng khớp cách nhau khoảng 20 cm.
Để thiết lập một môi trường sạch, hãy đặt cả hai thiết bị vào hộp chắn.
Không bắt buộc: Thiết lập một trình theo dõi OTA để gỡ lỗi Wi-Fi.
Thiết lập các kiểm thử CDM
Trường hợp kiểm thử test_permissions_sync() có hành vi khác nhau tuỳ thuộc vào loại bản dựng của các thiết bị mà trên đó quá trình kiểm thử được thực thi. Điều quan trọng là nhà sản xuất thiết bị gốc phải kiểm thử cả bản dựng có thể gỡ lỗi (userdebug hoặc eng) và bản dựng không thể gỡ lỗi (user) và các kiểm thử đều phải vượt qua cho cả hai bản dựng.
Miễn trừ
Điều khoản CDD cho việc triển khai API đồng bộ hoá quyền chỉ yêu cầu API này có thể chuyển dữ liệu thành công giữa các thiết bị qua một kênh bảo mật. Vì việc triển khai kênh bảo mật không phải là yêu cầu tuân thủ CDD, nên bạn có thể bỏ qua kiểm thử này trên các bản dựng không gỡ lỗi (người dùng), nhưng chỉ khi bạn muốn chọn không hỗ trợ tính năng đồng bộ hoá quyền CDM.
Các kiểm thử phải vượt qua các bản dựng có thể gỡ lỗi mà không có ngoại lệ.
Điều kiện tiên quyết để kiểm thử trên các bản dựng không thể gỡ lỗi
Nếu bạn không thuộc diện miễn trừ theo các điều khoản miễn trừ trước đó, hãy xác minh rằng bạn đáp ứng các điều kiện tiên quyết sau.
Kênh bảo mật sử dụng AVF (AttestationVerificationFramework) để xác minh độ tin cậy của phần cứng. Chứng thực do cả hai bên tạo ra đều chứa một số thông tin về chính họ để đảm bảo rằng không có bất kỳ thay đổi trái phép nào trong hệ thống của họ. AVF kiểm tra các trạng thái sau đây trong quy trình xác minh:
- Thiết bị có quyền truy cập Internet
- Thiết bị sử dụng quy trình khởi động đã xác minh và bản dựng phải được ký bằng khoá phát hành, chứ không phải khoá dành cho nhà phát triển
- Trình tải khởi động của thiết bị đã bị khoá. Để biết hướng dẫn chi tiết, hãy xem phần khoá trình tải khởi động
- Hệ điều hành, chế độ khởi động khoá và cấp độ bản vá của nhà cung cấp khoá nằm trong vòng 12 tháng. Không sử dụng bản dựng cũ hơn một năm
Quy trình chứng thực thiết bị được hỗ trợ bằng một trong các chứng chỉ gốc do nhà cung cấp phê duyệt. Chỉ định chứng chỉ gốc đáng tin cậy trong lớp phủ tài nguyên
vendor_required_attestation_certificates.xml.
Chạy các thử nghiệm trên nhiều thiết bị ở phía máy chủ lưu trữ (AOSP 16 trở lên)
CTS Verifier 16 hỗ trợ các kiểm thử nhiều thiết bị phía máy chủ. Bạn có thể thực thi các kiểm thử này bằng cách sử dụng tập lệnh tự động trên máy chủ lưu trữ, thay vì thao tác kiểm thử thủ công trên thiết bị. Sau khi mỗi bài kiểm thử hoàn tất, kết quả sẽ tự động được tải lên DUT và hiển thị trong ứng dụng CTS Verifier.
Phần này giải thích cách chạy các kiểm thử trên nhiều thiết bị ở phía máy chủ.
Chạy kiểm thử trên nhiều thiết bị
Cách chạy một kiểm thử trên nhiều thiết bị:
Trên máy trạm kiểm thử, hãy chạy bảng điều khiển
cts-v-hosttừ thư mục nơi gói zip CTS-V được giải nén:./android-cts-verifier/android-cts-v-host/tools/cts-v-host-tradefedTrong ứng dụng CTS Verifier trên DUT, hãy nhấp vào Host-side Tests (Các kiểm thử phía máy chủ). Hình 3 cho thấy các kiểm thử phía máy chủ trong ứng dụng CTS Verifier:
Hình 3. Các kiểm thử đa thiết bị phía máy chủ trong ứng dụng CTS Verifier.
Một danh sách các mô-đun kiểm thử nhiều thiết bị phía máy chủ lưu trữ kiểm thử sẽ xuất hiện.
Xác định tên của mô-đun kiểm thử mà bạn muốn chạy. Ví dụ: mô-đun CompanionDeviceManager được liệt kê là CtsCompanionDeviceManagerMultiDeviceTestCases.
Trong bảng điều khiển cts-v-host, hãy chạy lệnh sau:
run cts-v-host -m test_module_nameVí dụ:
run cts-v-host -m CtsCompanionDeviceManagerMultiDeviceTestCasesSau khi bảng điều khiển xTS chạy xong các kiểm thử, kết quả sẽ xuất hiện trong ứng dụng CTS Verifier. Các kiểm thử được đánh dấu màu xanh lục là đã đạt. Các kiểm thử được đánh dấu màu đỏ là kiểm thử không đạt. Hình 4 cho thấy ví dụ về kết quả cho các kiểm thử CtsCompanionDeviceManager:
Hình 4. Kết quả kiểm thử đa thiết bị phía máy chủ trong ứng dụng CTS Verifier.
Không bắt buộc: Chạy các kiểm thử kết nối AP Wi-Fi
Hãy làm theo các bước sau để chạy kiểm thử kết nối AP Wi-Fi:
Chỉnh sửa tệp cấu hình testbed (
WifiConnectionTestbed.yaml). Tệp này nằm trong thư mục nơi CTS-Verifier được giải nén:./android-cts-verifier/android-cts-v-host/testcases/CtsWifiConnectionTests/x86_64/connection/WifiConnectionTestbed.yamlThay đổi giá trị của trường
hostnamethành địa chỉ IP của AP, dựa trên chế độ cài đặt SSH cục bộ của bạn. Để xác định địa chỉ IP, hãy xem phần Tìm địa chỉ IP của điểm truy cập.Ví dụ sau đây cho thấy vị trí của trường
hostnametrong tệpWifiConnectionTestbed.yaml:TestBeds: - Name: WifiConnectionTestbed Controllers: # Specify settings for the AP. OpenWrtDevice: - hostname: AP-IP skip_init_reboot: TrueTrong bảng điều khiển cts-v-host, hãy chạy lệnh sau:
run everything -m CtsWifiConnectionTests
Khắc phục sự cố trong các bài kiểm thử trên nhiều thiết bị
Phần này cung cấp thông tin trợ giúp khắc phục sự cố cho các vấn đề có thể xảy ra.
Khắc phục lỗi Không có phản hồi cho GetFirmwareVersion trong các bài kiểm thử NFC
Nếu bạn nhận được thông báo verify_firmware_version RuntimeError: No response
for GetFirmwareVersion trong khi chạy các kiểm thử trên nhiều thiết bị, thì các kiểm thử không thể truy cập vào bảng NFC PN532.
Để khắc phục vấn đề này, hãy xác định đường dẫn nối tiếp mà bo mạch PN532 NFC sử dụng trên máy chủ của bạn, chẳng hạn như dev/ttyUSB1, sau đó chỉ định đường dẫn đó theo cách thủ công bằng cách sử dụng đối số --module-arg trong bảng điều khiển:
run cts-v-host -m CtsNfcHceMultiDeviceTestCases --module-arg CtsNfcHceMultiDeviceTestCases:pn532_serial_path:/dev/ttyUSB1
Khắc phục thông báo lỗi Giao dịch không thành công trong quá trình kiểm thử NFC
Nếu bạn nhận được thông báo Transaction failed, check device logs for more
information. cho tất cả các trường hợp kiểm thử NFC, thì có thể là do chip NFC của DUT không phát hiện được PN532.
Nếu bạn có nhiều thiết bị kết nối với máy chủ lưu trữ và một số thiết bị không có PN532 đặt ở trên cùng, thì có thể bạn đã chọn sai DUT. Để biết thêm thông tin, hãy xem bài viết Thiết lập kiểm thử NFC.
Để khắc phục vấn đề này, hãy làm theo một trong những cách sau:
Đặt số sê-ri DUT chính xác trong lệnh kiểm thử phía máy chủ lưu trữ bằng cách sử dụng cờ
-s.Ngắt kết nối tất cả các thiết bị không phải DUT khỏi máy chủ lưu trữ.
Trường hợp kiểm thử CDM test_permissions_sync bị bỏ qua
Nếu bạn đang chạy thử nghiệm trên các thiết bị không thể gỡ lỗi, hãy xem bạn có được miễn trừ hay không. Nếu không, hãy xác minh rằng cả hai thiết bị đều đáp ứng các điều kiện tiên quyết.