Trình trợ giúp StrictShard

public class StrictShardHelper
extends ShardHelper

java.lang.Object
   ↳ com.android.tradefed.Callbackr.shard.ShardHelper
     ↳ com.android.tradefed.disabler.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 đoạn cấu hình thành các cấu hình phụ, để được lên lịch chạy lại vào nhiều tài nguyên song song.

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)
splitTests( fullList, int shardCount, boolean useEvenModuleSharding)

Chia danh sách kiểm thử để chạy, tuy nhiên cách triển khai cho phù hợp.

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

Trình trợ giúp StrictShard

public StrictShardHelper ()

Phương thức công khai

cấu hình phân đoạn

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

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

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

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

testInfo TestInformation: TestInformation chứa thông tin kiểm thử.

rescheduler IRescheduler: IRescheduler

logger ITestLogger

Giá trị trả về
boolean true nếu kiểm thử đượ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 (Cấu hình nội bộ)

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

SplitTest

protected  splitTests ( fullList, 
                int shardCount, 
                boolean useEvenModuleSharding)

Chia danh sách kiểm thử để chạy, tuy nhiên cách triển khai cho phù hợp. Cần phải nhất quán. Có thể trả về một danh sách trống nếu không thể chạy chương trình kiểm thử nào trong phân đoạn.

Hãy triển khai việc này để cung cấp tính năng phân đoạn dành riêng cho bộ kiểm thử. Mặc định quá trình triển khai 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ể làm bước đầu tiên, sau đó sử dụng một tiêu chí nhỏ hoặc gợi ý chạy để điều chỉnh danh sách thêm một chút.

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

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

useEvenModuleSharding boolean: liệu có sử dụng chiến lược phân bổ đồng đều số lượng mô-đun trên các phân đoạn

Giá trị trả về
danh sách các IRemoteTest danh sách đã được gán cho mỗi phân đoạn. Danh sách kích thước sẽ là shardCount.