StrictShardHelper
public
class
StrictShardHelper
extends ShardHelper
| java.lang.Object | ||
| ↳ | com.android.tradefed.invoker.shard.ShardHelper | |
| ↳ | com.android.tradefed.invoker.shard.StrictShardHelper | |
分片策略,用於建立不會一起回報的嚴格分片,
摘要
公用建構函式 | |
|---|---|
StrictShardHelper()
|
|
公用方法 | |
|---|---|
boolean
|
shardConfig(IConfiguration config, TestInformation testInfo, IRescheduler rescheduler, ITestLogger logger)
嘗試將設定分片為子設定,以便重新排程,在多個資源上平行執行。 |
受保護的方法 | |
|---|---|
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)
視實作情況,以任意方式分割要執行的測試清單。 |
公用建構函式
StrictShardHelper
public StrictShardHelper ()
公用方法
shardConfig
public boolean shardConfig (IConfiguration config, TestInformation testInfo, IRescheduler rescheduler, ITestLogger logger)
嘗試將設定分片為子設定,以便重新排程,在多個資源上平行執行。
成功執行分片動作會使目前的設定空白,且不應繼續叫用。
| 參數 | |
|---|---|
config |
IConfiguration:目前的 IConfiguration。 |
testInfo |
TestInformation:TestInformation 舉辦測驗的機構。 |
rescheduler |
IRescheduler:IRescheduler |
logger |
ITestLogger |
| 傳回 | |
|---|---|
boolean |
如果測試已分片,則為 true。否則傳回 false |
受保護的方法
shardConfigDynamic
protected boolean shardConfigDynamic (IConfiguration config, TestInformation testInfo, IRescheduler rescheduler, ITestLogger logger)
| 參數 | |
|---|---|
config |
IConfiguration |
testInfo |
TestInformation |
rescheduler |
IRescheduler |
logger |
ITestLogger |
| 傳回 | |
|---|---|
boolean |
|
shardConfigInternal
protected boolean shardConfigInternal (IConfiguration config, TestInformation testInfo, IRescheduler rescheduler, ITestLogger logger)
| 參數 | |
|---|---|
config |
IConfiguration |
testInfo |
TestInformation |
rescheduler |
IRescheduler |
logger |
ITestLogger |
| 傳回 | |
|---|---|
boolean |
|
splitTests
protected List<List<IRemoteTest>> splitTests (List<IRemoteTest> fullList, int shardCount, boolean useEvenModuleSharding)
視實作情況,以適當方式分割要執行的測試清單。分片必須保持一致。如果無法在分片中執行任何測試,可以傳回空白清單。
實作這項功能,即可提供測試套件專屬的切分。預設實作會盡可能平衡每個分片中的 IRemoteTest 數量,然後使用次要條件或執行提示稍微調整清單。
| 參數 | |
|---|---|
fullList |
List:包含所有需要執行的測試的初始完整 IRemoteTest 清單。 |
shardCount |
int:需要執行的分片總數。 |
useEvenModuleSharding |
boolean:是否使用策略,在分片中平均分配模組數量 |
| 傳回 | |
|---|---|
List<List<IRemoteTest>> |
指派給每個分片的清單清單 IRemoteTest。清單大小會是 shardCount。 |