Truyền các tuỳ chọn và bộ lọc đến bộ và mô-đun

Trước tiên, hãy đảm bảo bạn hiểu rõ Cách xử lý trong Tradefeed.

Thiết lập Suite mô tả hai lớp tồn tại trong cấu trúc dãy phòng:

  • Phòng suite cao cấp
  • Các mô-đun

Trong bối cảnh Thương mại không theo bộ, bạn không cần phải suy nghĩ; mỗi vào lệnh gọi đầy đủ. Trong ngữ cảnh bộ, các mô-đun được lưu giữ tách biệt với bộ công cụ; vì vậy, không phải lựa chọn nào đều có sẵn ở cấp độ của họ.

Vé vào gói dịch vụ cao cấp nhất

Bộ ứng dụng cấp cao nhất hoạt động như cấu hình Tradefeed tiêu chuẩn: phiên bản đầy đủ bao gồm trình chạy bộ nhận được tất cả các tuỳ chọn như cấu hình Thương mại không phải của phần mềm.

Truyền các tuỳ chọn vào mô-đun

Theo mặc định, các mô-đun không nhận bất kỳ tuỳ chọn nào được truyền đến lệnh. Họ cần được nhắm mục tiêu rõ ràng để nhận được các lựa chọn thông qua Tuỳ chọn module-arg. Việc tách biệt các tuỳ chọn mô-đun này giúp gỡ lỗi dễ dàng hơn.

Ví dụ:

cts-tradefed run cts --module-arg <module-name>:<option-name>:<option-value>

cts-tradefed run cts --module-arg CtsGestureTestCases:collect-tests-only:true

Cú pháp đảm bảo rằng mô-đun được nhắm mục tiêu sẽ nhận được tuỳ chọn đã cho.

Có thêm các cách khác để truyền tuỳ chọn đến các mô-đun như test-arg, cho phép bạn truyền các tuỳ chọn đến trình chạy kiểm thử của mỗi mô-đun dựa trên trình chạy loại hoặc lớp.

Ví dụ:

cts-tradefed run cts --test-arg <test-class>:<option-name>:<option-value>

cts-tradefed run cts --test-arg com.android.tradefed.testtype.JarHosttest:collect-tests-only:true

Cú pháp không nhắm đến một mô-đun cụ thể mà nhắm đến tất cả trình chạy kiểm thử của lớp đã cho. test-arg chỉ xem xét các cách triển khai của IRemoteTest làm người nhận tiềm năng cho các lựa chọn.

Truyền các tuỳ chọn vào một lớp kiểm thử Java trong java_test_host

Nếu bạn đang thêm @Option vào lớp kiểm thử java như một phần của java_test_host với mục tiêu bản dựng, bạn sẽ cần sử dụng đoạn mã sau để chèn tùy chọn:

cts-tradefed run cts --module-arg <module-name>:set-option:<option-name>:<option-value>

set-option trong ngữ cảnh này là tuỳ chọn của trình chạy HostTest trong khai thác kiểm thử bao bọc lớp java để thực thi các lớp đó.

nếu mục tiêu tệp jar của bạn cho các tùy chọn chứa nhiều lớp kiểm thử, theo mặc định, tất cả các thẻ này đều được chỉ định @option hoặc sử dụng sau đây để nhắm đến một lớp duy nhất:

cts-tradefed run cts --module-arg <module-name>:set-option:<class-name>:<option-name>:<option-value>

Truyền các bộ lọc đến bộ lọc

Để lọc một số thử nghiệm từ một bộ, chúng ta sử dụng --include-filter--exclude-filter để buộc bao gồm hoặc loại trừ một thử nghiệm cụ thể tương ứng hoặc mô-đun. Tính năng loại trừ có mức độ ưu tiên.

Các tài liệu này sử dụng định dạng sau: [abi] <module-name> [test name]

Ví dụ:

--include-filter CtsGestureTestCases

--include-filter armeabi-v7a CtsGestureTestCases

--include-filter armeabi-v7a CtsGestureTestCases android.gesture.cts.GestureTest#testGetStrokes