StrictShardHelper

public class StrictShardHelper
extends ShardHelper

java.lang.Object
   ↳ com.android.tradefed.invoker.shard.ShardHelper
     ↳ com.android.tradefed.invoker.shard.StrictShardHelper


Chiến lược phân đoạn để tạo các phân đoạn nghiêm ngặt không báo cáo cùng nhau,

Tóm tắt

Hàm khởi tạo công khai

StrictShardHelper()

Phương thức công khai

boolean shardConfig(IConfiguration config, TestInformation testInfo, IRescheduler rescheduler, ITestLogger logger)

Cố gắng phân chia cấu hình thành các cấu hình phụ để lên lịch lại chạy song song trên nhiều tài nguyên.

Phương thức được bảo vệ

boolean shardConfigDynamic(IConfiguration config, TestInformation testInfo, IRescheduler rescheduler, ITestLogger logger)
boolean shardConfigInternal(IConfiguration config, TestInformation testInfo, IRescheduler rescheduler, ITestLogger logger)
List<List<IRemoteTest>> splitTests(List<IRemoteTest> fullList, int shardCount, boolean useEvenModuleSharding)

Chia danh sách kiểm thử để chạy theo cách triển khai phù hợp.

Hàm khởi tạo công khai

StrictShardHelper

public StrictShardHelper ()

Phương thức công khai

shardConfig

public boolean shardConfig (IConfiguration config, 
                TestInformation testInfo, 
                IRescheduler rescheduler, 
                ITestLogger logger)

Cố gắng phân chia cấu hình thành các cấu hình phụ để lên lịch lại chạy song song trên nhiều tài nguyên.

Một thao tác phân đoạn thành công sẽ khiến cấu hình hiện tại trống và không được tiếp tục gọi.

Tham số
config IConfiguration: IConfiguration hiện tại.

testInfo TestInformation: TestInformation lưu giữ thông tin về các bài kiểm tra.

rescheduler IRescheduler: IRescheduler

logger ITestLogger

Giá trị trả về
boolean true nếu thử nghiệm được phân đoạn. Nếu không, hãy trả về false

Phương thức được bảo vệ

shardConfigDynamic

protected boolean shardConfigDynamic (IConfiguration config, 
                TestInformation testInfo, 
                IRescheduler rescheduler, 
                ITestLogger logger)

Tham số
config IConfiguration

testInfo TestInformation

rescheduler IRescheduler

logger ITestLogger

Giá trị trả về
boolean

shardConfigInternal

protected boolean shardConfigInternal (IConfiguration config, 
                TestInformation testInfo, 
                IRescheduler rescheduler, 
                ITestLogger logger)

Tham số
config IConfiguration

testInfo TestInformation

rescheduler IRescheduler

logger ITestLogger

Giá trị trả về
boolean

splitTests

protected List<List<IRemoteTest>> splitTests (List<IRemoteTest> fullList, 
                int shardCount, 
                boolean useEvenModuleSharding)

Chia danh sách kiểm thử để chạy theo cách triển khai phù hợp. Phân đoạn cần phải nhất quán. Bạn có thể trả về một danh sách trống nếu không có kiểm thử nào có thể chạy trong phân đoạn.

Triển khai thao tác này để cung cấp tính năng phân đoạn cụ thể cho bộ kiểm thử. Việc triển khai mặc định cố gắng cân bằng số lượng IRemoteTest trên mỗi phân đoạn nhiều nhất có thể như một bước đầu tiên, sau đó sử dụng tiêu chí phụ hoặc gợi ý chạy để điều chỉnh danh sách thêm một chút.

Tham số
fullList List: danh sách đầy đủ ban đầu của IRemoteTest chứa tất cả các kiểm thử cần chạy.

shardCount int: tổng số phân đoạn cần chạy.

useEvenModuleSharding boolean: có nên sử dụng một chiến lược phân phối đều số lượng mô-đun trên các phân đoạn hay không

Giá trị trả về
List<List<IRemoteTest>> danh sách các danh sách IRemoteTest đã được chỉ định cho từng phân đoạn. Kích thước danh sách sẽ là shardCount.