Chạy kiểm thử tự động (Android 11 trở lên)

Có 2 lựa chọn để chạy các kiểm thử tự động CTS:

  • Trade Federation là một ứng dụng và khung kiểm thử cho phép bạn chạy kiểm thử qua dòng lệnh. Về cơ bản, khung này cho phép bạn chú thích các kiểm thử bằng cách sử dụng chú thích @Test và ứng dụng sẽ tìm cũng như chạy các kiểm thử đó.

  • OmniLab Android Test Station là một ứng dụng cho phép bạn chạy các bài kiểm thử trong một GUI.

Trang này giải thích cách chạy kiểm thử tự động bằng Trade Federation. Để biết hướng dẫn về cách chạy kiểm thử bằng OmniLab Android Test Harness, hãy xem phần OmniLab Android Test Station.

Chạy tất cả các kiểm thử CTS tự động

Trade Federation chứa bảng điều khiển CTS, một giao diện dòng lệnh để chạy các kiểm thử. Cách chạy toàn bộ bộ kiểm thử CTS tự động:

  1. Đảm bảo bạn đã làm theo hướng dẫn trong bài viết Thiết lập kiểm thử tự động CTS.
  2. Trên máy trạm kiểm thử, hãy chạy bảng điều khiển CTS bằng cách chạy tập lệnh cts-tradefed từ thư mục nơi gói CTS đã được giải nén:

    ./android-cts/tools/cts-tradefed
    

    Bảng điều khiển CTS sẽ hiển thị một con trỏ để bạn nhập các lệnh CTS (cts-tradefed >).

  3. Kế hoạch kiểm thử cts chứa tất cả các kiểm thử CTS tự động. Thực thi lệnh sau để chạy kế hoạch kiểm thử cts:

    run cts
    

    Các kiểm thử CTS tự động sẽ thực thi. Xin lưu ý những điều sau:

    • Android 13 trở lên hỗ trợ kiểm thử trên nhiều thiết bị. Các kiểm thử này chỉ chạy tự động khi bạn sử dụng tính năng phân đoạn. Để biết thêm thông tin về việc phân đoạn, hãy xem bài viết Cải thiện thời gian thực thi kiểm thử. Nếu bạn muốn chạy các kiểm thử này theo cách thủ công, hãy xem phần Chạy kiểm thử trên nhiều thiết bị.

    • Bất cứ khi nào chạy CTS, hãy nhấn tổ hợp phím ctrl+c để dừng bảng điều khiển CTS hiện có, sau đó chạy lại bảng điều khiển CTS.

    • Bạn không thể chạy nhiều phiên bản CTS trên một máy chủ duy nhất vì mỗi phiên bản sẽ mở bằng một máy chủ mã vị trí mở (OLC) hiện có.

  4. Xem kết quả kiểm thử. Để biết thêm thông tin, hãy xem phần Diễn giải kết quả CTS.

  5. Nếu đây là lần chạy thử đầu tiên, có thể có những bài kiểm thử không thành công do các vấn đề nằm ngoài tầm kiểm soát của bạn. Ví dụ: kết nối mạng có thể chậm hoặc tín hiệu GPS có thể yếu. Chạy lại (thử lại) các kiểm thử cho đến khi hoàn tất tất cả các mô-đun kiểm thử và số lượng kiểm thử không thành công giữa hai phiên thử lại gần đây nhất là như nhau:

    run retry --retry session_number`
    
  6. Sau khi các lần kiểm thử thất bại nhất quán trong các lần thử lại, hãy tập trung vào việc gỡ lỗi các kiểm thử thất bại còn lại. Để biết thông tin về cách khắc phục sự cố kết quả kiểm thử, hãy xem phần Phân loại lỗi kiểm thửKhắc phục sự cố kiểm thử CTS.

Chạy CTS cho thiết bị có nhiều màn hình

Nếu thiết bị của bạn đang chạy Android 11 hoặc 12 và có nhiều màn hình, thì bạn phải chạy kế hoạch kiểm thử cts-foldable riêng:

run cts-foldable

Các trường hợp kiểm thử đã vượt qua hoặc không vượt qua cho chế độ màn hình thay thế sẽ được thêm giá trị từ display_mode, ví dụ: testcase1[display_mode=0].

Chạy các kiểm thử trên nhiều thiết bị (Android 15 trở xuống)

Thực thi lệnh sau để chạy kế hoạch kiểm thử cts-multidevice:

run cts-multidevice

Chạy các kế hoạch kiểm thử riêng lẻ

Thay vì chạy tất cả các kế hoạch kiểm thử cùng một lúc, bạn có thể chạy từng kế hoạch kiểm thử. Lựa chọn này giúp bạn tiết kiệm thời gian và tập trung vào một nhóm kiểm thử cụ thể. Cách chạy một kế hoạch kiểm thử riêng lẻ:

  1. Xác định tên của kế hoạch kiểm thử mà bạn muốn chạy bằng cách thực thi lệnh list modules.

  2. Chạy kế hoạch kiểm thử:

    run cts --plan test_module_or_plan_name
    

Cải thiện thời gian thực thi kiểm thử

Nếu muốn cải thiện thời gian thực thi kiểm thử, bạn có thể phân đoạn kiểm thử trên nhiều thiết bị. Phân đoạn yêu cầu máy chủ kết nối ít nhất hai thiết bị, nhưng bạn nên kết nối từ 6 thiết bị trở lên để đạt hiệu quả.

Để phân đoạn các kiểm thử trên Android 11 trở lên, hãy chạy:

run cts --shard-count number_of_shards

Ngoài ra, trước khi chạy các kiểm thử để xác thực, bạn có thể cải thiện thời gian thực thi kiểm thử bằng cách sử dụng lệnh CTS run cts-dev. Lệnh này bỏ qua các điều kiện tiên quyết, quá trình thu thập thông tin thiết bị và tất cả các trình kiểm tra trạng thái hệ thống. Thao tác này cũng chỉ chạy các kiểm thử trên một ABI duy nhất.