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)
splitTests( 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 IReschedulerIRescheduler

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

將要執行的測試清單分割,以便實作。分割作業必須保持一致。如果無法在分割區中執行任何測試,則可傳回空白清單。

實作此功能,以便提供測試套件專屬的分割作業。預設實作方式會在第一步嘗試盡可能平衡每個分割區的 IRemoteTest 數量,然後使用次要條件或執行提示來進一步調整清單。

參數
fullList IRemoteTest 的初始完整清單,其中包含所有需要執行的測試。

shardCount int:需要執行的分割資料的總數。

useEvenModuleSharding boolean:是否要使用策略,在分割區中平均分配模組數量

傳回
已指派給每個分割區的清單 IRemoteTest 清單。清單大小會是 shardCount。