StrictShardHelper

public class StrictShardHelper
extends ShardHelper

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


Strategia di suddivisione in parti per creare parti rigide che non generano report insieme,

Riepilogo

Costruttori pubblici

StrictShardHelper()

Metodi pubblici

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

Prova a suddividere la configurazione in sottoconfigurazioni, da riprogrammare per l'esecuzione su più risorse in parallelo.

Metodi protetti

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)

Suddividi l'elenco dei test da eseguire come meglio credi.

Costruttori pubblici

StrictShardHelper

public StrictShardHelper ()

Metodi pubblici

shardConfig

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

Prova a suddividere la configurazione in sottoconfigurazioni, da riprogrammare per l'esecuzione su più risorse in parallelo.

Un'azione di frammentazione riuscita rende vuota la configurazione corrente e l'invocazione non deve procedere.

Parametri
config IConfiguration: l'IConfiguration corrente.

testInfo TestInformation: il TestInformation che detiene le informazioni sui test.

rescheduler IRescheduler: il IRescheduler

logger ITestLogger

Ritorni
boolean true se il test è stato suddiviso in parti. In caso contrario, restituisce false

Metodi protetti

shardConfigDynamic

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

Parametri
config IConfiguration

testInfo TestInformation

rescheduler IRescheduler

logger ITestLogger

Ritorni
boolean

shardConfigInternal

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

Parametri
config IConfiguration

testInfo TestInformation

rescheduler IRescheduler

logger ITestLogger

Ritorni
boolean

splitTests

protected  splitTests ( fullList, 
                int shardCount, 
                boolean useEvenModuleSharding)

Suddividi l'elenco dei test da eseguire come meglio credi. Lo sharding deve essere coerente. È accettabile restituire un elenco vuoto se non è possibile eseguire test nel frammento.

Implementalo per fornire uno sharding specifico per la suite di test. L'implementazione predefinita tenta di bilanciare il più possibile il numero di IRemoteTest per shard come primo passaggio, quindi utilizza un criterio secondario o un suggerimento di esecuzione per modificare ulteriormente gli elenchi.

Parametri
fullList : l'elenco completo iniziale di IRemoteTest contenente tutti i test che devono essere eseguiti.

shardCount int: il numero totale di shard da eseguire.

useEvenModuleSharding boolean: indica se utilizzare una strategia che distribuisca uniformemente il numero di moduli tra i vari shard

Ritorni
un elenco di elenchi IRemoteTest assegnati a ogni shard. La dimensione dell'elenco sarà shardCount.