Hoàn thành các bài kiểm tra ô tô trong một hộp

Thử nghiệm ô tô hoàn chỉnh trong hộp (CATBox) là gói nguồn mở cung cấp các khung và công cụ cần thiết để hợp lý hóa và thực hiện các thử nghiệm ô tô với cấu hình tối thiểu. CATBox có khả năng mở rộng và tương thích với các công cụ, cơ sở hạ tầng cũng như thử nghiệm mà bạn sử dụng để kiểm tra và xác thực quá trình triển khai Android Automotive OS (AAOS) của mình. Nhờ đó, bạn có thể cung cấp sản phẩm chất lượng cao cho thị trường.

Thiết kế và triển khai CATBox

Bộ kiểm tra CATBox cung cấp các công cụ, khung và kiểm tra cần thiết để thực hiện kiểm tra chức năng và hiệu suất trên thiết bị mục tiêu ô tô và trong khi sử dụng thiết bị đồng hành.

Hình ảnh sau đây minh họa thiết kế cấp cao của gói CATBox.

CATBox

Hình 1. Gói CATBox

Đã giao dịch

Tradefed là một khung thử nghiệm liên tục mã nguồn mở được sử dụng để thực hiện các thử nghiệm trên thiết bị Android. Để biết chi tiết, xem Tổng quan về Liên đoàn Thương mại .

Khung kiểm tra ô tô

CATBox dựa trên khung thử nghiệm Ô tô có tên Spectatio , cung cấp API để thử nghiệm các ứng dụng khác nhau trên thiết bị ô tô. Nó được xây dựng dựa trên UI Automator , một khung thử nghiệm nguồn mở, cung cấp một bộ API để xây dựng các thử nghiệm giao diện người dùng tương tác với các ứng dụng hệ thống và người dùng.

Tải xuống bộ thử nghiệm CATBox

Android 14

Android Automotive 14 là phiên bản phát hành cột mốc phát triển có tên mã U. Hãy sử dụng các liên kết sau để tải xuống bộ thử nghiệm CATBox cho Android 14:

Android 12

Android 12 là sự ra mắt của cột mốc phát triển có tên mã S. Hãy sử dụng các liên kết sau để tải xuống bộ thử nghiệm CATBox cho Android 12:

Android 11

Android 11 là sự ra mắt của cột mốc phát triển có tên mã R. Hãy sử dụng các liên kết sau để tải xuống bộ thử nghiệm CATBox cho Android 11:

Xây dựng CATBox

Sử dụng lệnh xây dựng catbox khi mã AOSP của Android có sẵn trên máy trạm cục bộ.

Để xây dựng gói CATBox cục bộ:

  1. Chọn Mục tiêu thiết bị dựa trên kiến ​​trúc thiết bị và chạy lệnh sau:

    lunch <target>
    
  2. Để xây dựng CATBox, hãy chạy lệnh sau:

    make catbox
    

    Lệnh này tạo tệp android-catbox.zip trong thư mục /out/host/linux-x86/catbox , sau đó có thể được sử dụng để chạy thử nghiệm.

Thiết lập môi trường

Thiết lập môi trường cần thiết để thực hiện kiểm tra CATBox tương tự như Thiết lập CTS . Để thiết lập môi trường, hãy hoàn thành từng tác vụ sau:

Thiết lập và chạy CATBox

Sử dụng khung kiểm tra Tradefed để chạy thử nghiệm trên thiết bị Android. Trước khi bạn thiết lập CATBox, hãy xem Tổng quan về Liên đoàn Thương mại .

Để thiết lập và chạy CATBox, hãy xem các phần bên dưới.

Thiết lập thiết bị

Trước khi chạy kế hoạch kiểm tra, hãy hoàn thành các bước sau để thiết lập thiết bị của bạn:

  1. Đảm bảo rằng bạn đã cài đặt các phiên bản gần đây của cả Cầu gỡ lỗi Android (adb)Công cụ đóng gói tài sản Android (AAPT) , cũng như đã thêm vị trí của các công cụ này vào đường dẫn hệ thống của máy. Để biết chi tiết, xem ADB và AAPT .

  2. Kết nối ít nhất một thiết bị và chuẩn bị Thiết bị đang được kiểm tra (DUT) như sau:

    1. Để khôi phục cài đặt gốc cho thiết bị ô tô, hãy đi tới Cài đặt > Hệ thống > Tùy chọn đặt lại > Xóa tất cả dữ liệu .

    2. Đợi thiết bị tự động khởi động lại.

    3. Đảm bảo adb được bật. Để xác nhận thiết bị có sẵn, hãy chạy lệnh sau:

      adb devices
      
    4. Để kích hoạt quyền root, hãy chạy lệnh sau:

      adb -s DEVICE_SERIAL root
      

      Thay thế DEVICE_SERIAL bằng ID nối tiếp cho thiết bị ô tô.

    5. Kết nối với Wi-Fi.

Giải nén gói CATBox

Sau khi thiết lập máy, giải nén gói CATBox và vào thư mục giải nén:

unzip android-catbox.zip
cd android-catbox

Thực hiện kiểm tra trong CATBox

Để chạy CATBox với các kế hoạch thử nghiệm trong gói CATBox:

./tools/catbox-tradefed run commandAndExit TEST_PLAN_NAME --serial DEVICE_SERIAL

Thay thế DEVICE_SERIAL bằng ID nối tiếp cho thiết bị ô tô. Nếu bạn có nhiều thiết bị được kết nối với máy chủ, hãy sử dụng DEVICE_SERIAL để phân biệt chúng. Thay thế TEST_PLAN_NAME bằng tên của kế hoạch kiểm tra bạn muốn chạy.

Để có được danh sách đầy đủ nhất các gói có sẵn, hãy sử dụng dòng lệnh:

./tools/catbox-tradefed list plans | grep -i catbox

Các loại kế hoạch kiểm thử

Bảng sau hiển thị các kế hoạch kiểm tra chức năng có sẵn.

Kế hoạch kiểm tra chức năng Sự miêu tả
catbox-functional Kiểm tra chức năng.
catbox-functional-app-info-setting Kiểm tra chức năng cài đặt thông tin ứng dụng.
catbox-functional-admin-user-grant-permissions Kiểm tra chức năng cấp quyền của người dùng quản trị viên.
catbox-functional-app-info-setting-ui-elements Kiểm tra chức năng cài đặt thông tin ứng dụng.
catbox-functional-appgrid Kiểm tra chức năng lưới ứng dụng.
catbox-functional-base Danh sách các bài kiểm tra chức năng
catbox-functional-bluetooth-audio Âm thanh Bluetooth Kiểm tra chức năng.
catbox-functional-bluetooth-palette Kiểm tra chức năng thanh trạng thái.
catbox-functional-bluetooth-tests Kiểm tra Bluetooth bằng Mobly.
catbox-functional-brightness-palette Kiểm tra chức năng thanh trạng thái.
catbox-functional-btmoped Kiểm tra chức năng dựa trên Bluetooth Moped.
catbox-functional-date-time-setting Kiểm tra chức năng thiết lập ngày và giờ.
catbox-functional-dial Quay số kiểm tra chức năng.
catbox-functional-display-setting Hiển thị các bài kiểm tra chức năng cài đặt.
catbox-functional-driving-optimized-apps Kiểm tra chức năng hạn chế UX.
catbox-functional-enable-developers-option Cho phép kiểm tra chức năng tùy chọn của nhà phát triển.
catbox-functional-home Kiểm tra chức năng tại nhà.
catbox-functional-lock-screen Kiểm tra chức năng màn hình khóa.
catbox-functional-mediacenter Kiểm tra chức năng của Media Center.
catbox-functional-microphone-recent-apps Kiểm tra chức năng cài đặt micrô.
catbox-functional-microphone-setting Kiểm tra chức năng cài đặt micrô.
catbox-functional-multiuser Kiểm tra chức năng đa người dùng.
catbox-functional-multiuser-system-user Kiểm tra chức năng đa người dùng.
catbox-functional-navigation-bar Kiểm tra chức năng thanh điều hướng.
catbox-functional-network-palette Kiểm tra chức năng thanh trạng thái.
catbox-functional-network-setting Kiểm tra chức năng cài đặt mạng.
catbox-functional-notification Kiểm tra chức năng thông báo.
catbox-functional-privacy-permission-manager Kiểm tra chức năng cài đặt Quyền riêng tư của ứng dụng.
catbox-functional-privacy-setting Kiểm tra chức năng cài đặt micrô.
catbox-functional-privacy-setting-ui-elements Kiểm tra chức năng cài đặt quyền riêng tư.
catbox-functional-profile-icon Kiểm tra chức năng Profile Icon Bar.
catbox-functional-profiles-icon-list Kiểm tra danh sách biểu tượng hồ sơ.
catbox-functional-security-setting Kiểm tra chức năng cài đặt bảo mật.
catbox-functional-setting Thiết lập các bài kiểm tra chức năng.
catbox-functional-settings-location Thiết lập các bài kiểm tra vị trí.
catbox-functional-sound-setting Kiểm tra chức năng cài đặt âm thanh.
catbox-functional-status-bar Kiểm tra chức năng thanh trạng thái.
catbox-functional-storage-setting Kiểm tra chức năng cài đặt lưu trữ.
catbox-functional-system-setting Kiểm tra chức năng thiết lập hệ thống.
catbox-functional-systemui Kiểm tra giao diện người dùng hệ thống.
catbox-functional-ux-restriction Kiểm tra chức năng hạn chế UX.
catbox-functional-ux-restriction-facet-bar Kiểm tra chức năng hạn chế UX.

Bảng sau liệt kê các kế hoạch kiểm tra hiệu suất CATBox.

Kế hoạch kiểm tra hiệu suất Sự miêu tả
catbox-performance-cold-app-start-up-dialer Kiểm tra hiệu suất khởi động ứng dụng nguội dành cho Trình quay số và Điện thoại.
catbox-performance-cold-app-start-up-mediacenter Kiểm tra hiệu suất khởi động ứng dụng nguội cho Media Center.
catbox-performance-cold-app-start-up-settings Kiểm tra hiệu suất khởi động ứng dụng nguội cho cài đặt.
catbox-performance-create-and-switch-to-new-guest Đo độ trễ để chuyển sang khách mới.
catbox-performance-create-and-switch-to-new-user Đo độ trễ để chuyển sang người dùng mới không phải quản trị viên.
catbox-performance-hot-app-start-up-dialer Kiểm tra hiệu suất khởi động ứng dụng hấp dẫn dành cho Trình quay số và Điện thoại.
catbox-performance-hot-app-start-up-mediacenter Kiểm tra hiệu suất khởi động ứng dụng hấp dẫn cho Media Center.
catbox-performance-hot-app-start-up-settings Kiểm tra hiệu suất khởi động ứng dụng hấp dẫn cho Cài đặt.
catbox-performance-jank-appgrid Kiểm tra hiệu suất cho Appgrid.
catbox-performance-jank-contact-list Kiểm tra hiệu suất cho Danh bạ.
catbox-performance-jank-media Kiểm tra hiệu suất cho Media.
catbox-performance-jank-media-switch-playback Kiểm tra hiệu suất phát lại của chuyển đổi phương tiện.
catbox-performance-jank-notifications Kiểm tra hiệu suất cho Thông báo.
catbox-performance-jank-settings Kiểm tra hiệu suất cho Cài đặt.
catbox-performance-switch-to-existing-user Đo độ trễ để chuyển sang người dùng hiện tại.

Chạy thử nghiệm phía máy chủ đa thiết bị

Việc thực hiện kiểm tra phía máy chủ đa thiết bị sử dụng CATBox để chạy kiểm tra trong một phiên. Ví dụ: BTDiscoveryTest :

make catbox
./tools/catbox-tradefed run commandAndExit catbox-functional-bluetooth-tests --{phone}serial <serial> --{auto}serial <serial> --mobly-host:mobly-par-file-name BTDiscoveryTest

CATBox cài đặt apk và sau đó chạy thử nghiệm trong môi trường thực thi Python chính xác.

Xem lại kết quả kiểm tra CATBox

Kết quả chạy thử nghiệm chức năng và hiệu suất được lưu trong android-catbox/results/latest .

Loại kết quả Vị trí
Kết quả kiểm tra test_result.xml
Chi tiết kiểm tra lỗi test_result_failures_suite.html
Kết quả đo lường hiệu suất /report-log-files/CatboxPerformanceTests.reportlog.json
Chạy thử nghiệm chức năng và hiệu suất /android-catbox/logs/latest