ITestSuite

public abstract class ITestSuite
extends Object implements IBuildReceiver, IConfigurationReceiver, IDeviceTest, IInvocationContextReceiver, IMetricCollectorReceiver, IRemoteTest, IReportNotExecuted, IRuntimeHintProvider, IShardableTest, ISystemStatusCheckerReceiver, ITestCollector, ITestLoggerReceiver, ITokenRequest

java.lang.Object
com.android.tradefed.testtype.suite.ITestSuite


Classe astratta utilizzata per eseguire la suite di test. Questo corso fornisce le basi per l'esecuzione della suite. Ogni implementazione può definire l'elenco dei test tramite il metodo loadTests().

Riepilogo

Campi

public static final String ABI_OPTION

public static final String ACTIVE_MAINLINE_PARAMETER_KEY

public static final String BUILD_ATTRIBUTE_FLAG_OVERRIDES_KEY

public static final String ENABLE_RESOLVE_SYM_LINKS

public static final String MAINLINE_PARAMETER_KEY

public static final String MODULE_CHECKER_POST

public static final String MODULE_CHECKER_PRE

public static final String MODULE_END_TIME

public static final String MODULE_METADATA_EXCLUDE_FILTER

public static final String MODULE_METADATA_INCLUDE_FILTER

public static final String MODULE_START_TIME

public static final String PARAMETER_KEY

public static final String PREPARER_WHITELIST

public static final String PRIMARY_ABI_RUN

public static final String RANDOM_SEED

public static final String RUNNER_WHITELIST

public static final String SKIP_HOST_ARCH_CHECK

public static final String SKIP_STAGING_ARTIFACTS

public static final String SKIP_SYSTEM_STATUS_CHECKER

public static final String STAGE_MODULE_ARTIFACTS

public static final String TEST_TYPE_KEY

public static final String TEST_TYPE_VALUE_PERFORMANCE

public static final String TOKEN_KEY

protected boolean mEnableResolveSymlinks

protected boolean mRecoverDeviceByCvd

Costruttori pubblici

ITestSuite()

Metodi pubblici

void addModuleMetadataExcludeFilters(MultiMap<String, String> filters)
void addModuleMetadataIncludeFilters(MultiMap<String, String> filters)
void cleanUpSuiteSetup()

Opportunità di ripulire tutto ciò che è stato necessario durante la configurazione delle suite, ma non è obbligatorio per eseguire i test.

boolean filterByConfigMetadata(IConfiguration config, MultiMap<String, String> include, MultiMap<String, String> exclude)

Applica il filtro dei metadati alla configurazione e controlla se la configurazione deve essere eseguita.

getAbis(ITestDevice device)

Recupera l'insieme di ABI supportati sia dai test di compatibilità AbiUtils.getAbisSupportedByCompatibility() sia dal dispositivo in test.

static getAbisForBuildTargetArchFromSuite()

Restituisce i possibili abis da TestSuiteInfo.

IBuildInfo getBuildInfo()

L'implementazione di ITestSuite potrebbe richiedere le informazioni sulla build per caricare i test.

final IConfiguration getConfiguration()

Restituisce l'invocazione IConfiguration.

ITestLogger getCurrentTestLogger()
ITestDevice getDevice()

Fai testare il dispositivo.

ModuleDefinition getDirectModule()

Restituisce il ModuleDefinition da eseguire direttamente o null se non è ancora presente (quando ITestSuite non è ancora stato suddiviso in parti).

boolean getIntraModuleSharding()
IInvocationContext getInvocationContext()

Restituisce il contesto di chiamata.

MultiMap<String, String> getModuleMetadataIncludeFilters()
ITestSuite.MultiDeviceModuleStrategy getMultiDeviceStrategy()
final String getRequestedAbi()

Restituisce l'abi richiesto con l'opzione -a o --abi.

getRequiredTokens(TestInformation testInfo)

Restituisce l'elenco dei token richiesti dal test.

long getRuntimeHint()

Restituisce il runtime previsto del test in millisecondi.

File getTestsDir()
boolean isSplitting()

Restituisce il valore True se siamo attualmente in IShardableTest.split(int).

abstract loadTests()

Metodo astratto per caricare la configurazione dei test che verranno eseguiti.

void reportNotExecuted(ITestInvocationListener listener, String message)

Segnala i test non eseguiti all'ascoltatore principale fornito.

void reportNotExecuted(ITestInvocationListener listener)

Segnala i test non eseguiti all'ascoltatore principale fornito.

final void run(TestInformation testInfo, ITestInvocationListener listener)

Metodo di esecuzione generico per tutti i test caricati da loadTests().

void setAbiName(String abiName)

Imposta il valore di mAbiName

final void setAbis( abis)
void setBuild(IBuildInfo buildInfo)

void setCollectTestsOnly(boolean shouldCollectTest)

Esegui la suite di test in modalità solo raccoglitore. Sono necessari tutti i test secondari per implementare anche questa interfaccia.

void setConfiguration(IConfiguration configuration)

Invia il IConfiguration in uso.

void setDevice(ITestDevice device)

Esegui l'iniezione del dispositivo di test.

void setDirectModule(ModuleDefinition module)
void setIntraModuleSharding(boolean intraModuleSharding)
void setInvocationContext(IInvocationContext invocationContext)

void setMetricCollectors( collectors)

Imposta l'elenco di IMetricCollector definiti per l'esecuzione del test.

void setMultiDeviceStrategy(ITestSuite.MultiDeviceModuleStrategy strategy)
void setPrimaryAbiRun(boolean primaryAbiRun)

Imposta il valore di mPrimaryAbiRun

void setShouldMakeDynamicModule(boolean dynamicModule)

Quando eseguiamo lo sharding distribuito, non possiamo avere ModuleDefinition che condivide i test in un pool, altrimenti lo sharding intra-modulo non funzionerà, quindi consentiamo di disattivarlo.

void setSkipContext(SkipContext skipContext)
void setSystemStatusChecker( systemCheckers)

Imposta i ISystemStatusChecker dalla configurazione del test.

void setTestLogger(ITestLogger testLogger)

Inserisce l'istanza ITestLogger

split(Integer shardCountHint, TestInformation testInfo)

Versione alternativa di split(int) che fornisce anche un TestInformation che contiene informazioni iniziali del proprietario che crea gli shard.

Metodi protetti

createModuleListeners()

Restituisce l'elenco di ITestInvocationListener applicabili al livello ModuleListener.

boolean filterByRunnerType(IConfiguration config, allowedRunners)

Applica il filtro della lista consentita dei runner, rimuovendo tutti i runner non inclusi nella lista.

getAbisForBuildTargetArch()

Restituisce gli ABI supportati dall'architettura di destinazione della compilazione dell'host.

getHostAbis()

Restituisce gli abis della macchina host.

boolean shouldModuleRun(ModuleDefinition module)

Campi

ABI_OPTION

public static final String ABI_OPTION

ACTIVE_MAINLINE_PARAMETER_KEY

public static final String ACTIVE_MAINLINE_PARAMETER_KEY

BUILD_ATTRIBUTE_FLAG_OVERRIDES_KEY

public static final String BUILD_ATTRIBUTE_FLAG_OVERRIDES_KEY

public static final String ENABLE_RESOLVE_SYM_LINKS

MAINLINE_PARAMETER_KEY

public static final String MAINLINE_PARAMETER_KEY

MODULE_CHECKER_POST

public static final String MODULE_CHECKER_POST

MODULE_CHECKER_PRE

public static final String MODULE_CHECKER_PRE

MODULE_END_TIME

public static final String MODULE_END_TIME

MODULE_METADATA_EXCLUDE_FILTER

public static final String MODULE_METADATA_EXCLUDE_FILTER

MODULE_METADATA_INCLUDE_FILTER

public static final String MODULE_METADATA_INCLUDE_FILTER

MODULE_START_TIME

public static final String MODULE_START_TIME

PARAMETER_KEY

public static final String PARAMETER_KEY

PREPARER_WHITELIST

public static final String PREPARER_WHITELIST

PRIMARY_ABI_RUN

public static final String PRIMARY_ABI_RUN

RANDOM_SEED

public static final String RANDOM_SEED

RUNNER_WHITELIST

public static final String RUNNER_WHITELIST

SKIP_HOST_ARCH_CHECK

public static final String SKIP_HOST_ARCH_CHECK

IGNORA_ARTIFATTI_DI_STAGING

public static final String SKIP_STAGING_ARTIFACTS

SKIP_SYSTEM_STATUS_CHECKER

public static final String SKIP_SYSTEM_STATUS_CHECKER

STAGE_MODULE_ARTIFACTS

public static final String STAGE_MODULE_ARTIFACTS

TEST_TYPE_KEY

public static final String TEST_TYPE_KEY

TEST_TYPE_VALUE_PERFORMANCE

public static final String TEST_TYPE_VALUE_PERFORMANCE

TOKEN_KEY

public static final String TOKEN_KEY

protected boolean mEnableResolveSymlinks

mRecoverDeviceByCvd

protected boolean mRecoverDeviceByCvd

Costruttori pubblici

ITestSuite

public ITestSuite ()

Metodi pubblici

addModuleMetadataExcludeFilters

public void addModuleMetadataExcludeFilters (MultiMap<String, String> filters)

Parametri
filters MultiMap

addModuleMetadataIncludeFilters

public void addModuleMetadataIncludeFilters (MultiMap<String, String> filters)

Parametri
filters MultiMap

Configurazione cleanUpSuite

public void cleanUpSuiteSetup ()

Opportunità di pulire tutto ciò che è stato necessario durante la configurazione delle suite, ma non è necessario per eseguire i test.

filterByConfigMetadata

public boolean filterByConfigMetadata (IConfiguration config, 
                MultiMap<String, String> include, 
                MultiMap<String, String> exclude)

Applica il filtro dei metadati alla configurazione e controlla se deve essere eseguita.

Parametri
config IConfiguration: il IConfiguration oggetto della valutazione.

include MultiMap: il filtro include i metadati

exclude MultiMap: il filtro di esclusione dei metadati

Ritorni
boolean True se il modulo deve essere eseguito, false in caso contrario.

getAbis

public  getAbis (ITestDevice device)

Consente di recuperare l'insieme di ABI supportato sia dai test di compatibilità AbiUtils.getAbisSupportedByCompatibility() sia dal dispositivo sottoposto a test.

Parametri
device ITestDevice

Ritorni
L'insieme di ABI su cui eseguire i test

Lanci
com.android.tradefed.device.DeviceNotAvailableEccezione
DeviceNotAvailableException

getAbisForBuildTargetArchFromSuite

public static  getAbisForBuildTargetArchFromSuite ()

Restituisce i possibili abis da TestSuiteInfo.

Ritorni

getBuildInfo

public IBuildInfo getBuildInfo ()

L'implementazione di ITestSuite potrebbe richiedere le informazioni di compilazione per caricare i test.

Ritorni
IBuildInfo

getConfiguration

public final IConfiguration getConfiguration ()

Restituisce l'invocazione IConfiguration.

Ritorni
IConfiguration

getCurrentTestLogger

public ITestLogger getCurrentTestLogger ()

Ritorni
ITestLogger

getDevice

public ITestDevice getDevice ()

Ottieni il dispositivo di test.

Ritorni
ITestDevice ITestDevice

getDirectModule

public ModuleDefinition getDirectModule ()

Restituisce il ModuleDefinition da eseguire direttamente o null se non è ancora presente (quando ITestSuite non è ancora stato suddiviso in parti).

Ritorni
ModuleDefinition

getIntraModuleSharding

public boolean getIntraModuleSharding ()

Ritorni
boolean

getInvocationContext

public IInvocationContext getInvocationContext ()

Restituisce il contesto di chiamata.

Ritorni
IInvocationContext

getModuleMetadataIncludeFilters

public MultiMap<String, String> getModuleMetadataIncludeFilters ()

Ritorni
MultiMap<String, String>

getMultiDeviceStrategy

public ITestSuite.MultiDeviceModuleStrategy getMultiDeviceStrategy ()

Ritorni
ITestSuite.MultiDeviceModuleStrategy

getRequestedAbi

public final String getRequestedAbi ()

Restituisce l'abi richiesto con l'opzione -a o --abi.

Ritorni
String

getRequiredTokens

public  getRequiredTokens (TestInformation testInfo)

Restituisce l'elenco dei token richiesti dal test. Restituisce null se non è supportato alcun token.

Parametri
testInfo TestInformation

Ritorni

getRuntimeHint

public long getRuntimeHint ()

Restituisce il tempo di esecuzione previsto del test in millisecondi. Il tempo viene utilizzato per bilanciare il carico dell'esecuzione suddivisa in parti

Ritorni
long

getTestsDir

public File getTestsDir ()

Ritorni
File

isSplitting

public boolean isSplitting ()

Restituisce il valore True se siamo attualmente in IShardableTest.split(int).

Ritorni
boolean

loadTests

public abstract  loadTests ()

Metodo astratto per caricare la configurazione dei test che verrà eseguita. Ogni test è definito da un IConfiguration e da un nome univoco sotto il quale verranno riportati i risultati.

Ritorni

reportNotExecuted

public void reportNotExecuted (ITestInvocationListener listener, 
                String message)

Segnala i test non eseguiti all'ascoltatore principale fornito. Dovrebbero essere segnalati come non riusciti con il messaggio NOT_EXECUTED_FAILURE.

Parametri
listener ITestInvocationListener: l'ascoltatore principale in cui segnalare i risultati non eseguiti.

message String: il messaggio da associare all'errore di mancata esecuzione.

reportNotExecuted

public void reportNotExecuted (ITestInvocationListener listener)

Segnala i test non eseguiti all'ascoltatore principale fornito. Dovrebbero essere segnalati come non riusciti con il messaggio NOT_EXECUTED_FAILURE.

Parametri
listener ITestInvocationListener: l'ascoltatore principale in cui segnalare i risultati non eseguiti.

run

public final void run (TestInformation testInfo, 
                ITestInvocationListener listener)

Metodo di esecuzione generico per tutti i test caricati da loadTests().

Parametri
testInfo TestInformation: l'oggetto TestInformation contenente informazioni utili per eseguire i test.

listener ITestInvocationListener: ITestInvocationListener dei risultati del test

Lanci
DeviceNotAvailableException

setAbiName

public void setAbiName (String abiName)

Imposta il valore di mAbiName

Parametri
abiName String

setAbis

public final void setAbis ( abis)

Parametri
abis

setBuild

public void setBuild (IBuildInfo buildInfo)

Parametri
buildInfo IBuildInfo

setCollectTestsOnly

public void setCollectTestsOnly (boolean shouldCollectTest)

Esegui la suite di test in modalità solo collector. Questo richiede che anche tutti i sottotest implementino questa interfaccia.

setConfiguration

public void setConfiguration (IConfiguration configuration)

Invia il IConfiguration in uso.

Parametri
configuration IConfiguration

setDevice

public void setDevice (ITestDevice device)

Esegui l'iniezione del dispositivo di test.

Parametri
device ITestDevice: il ITestDevice da utilizzare

setDirectModule

public void setDirectModule (ModuleDefinition module)

Parametri
module ModuleDefinition

setIntraModuleSharding

public void setIntraModuleSharding (boolean intraModuleSharding)

Parametri
intraModuleSharding boolean

setInvocationContext

public void setInvocationContext (IInvocationContext invocationContext)

Parametri
invocationContext IInvocationContext

setMetricCollectors

public void setMetricCollectors ( collectors)

Imposta l'elenco di IMetricCollector definiti per l'esecuzione del test.

Parametri
collectors

setMultiDeviceStrategy

public void setMultiDeviceStrategy (ITestSuite.MultiDeviceModuleStrategy strategy)

Parametri
strategy ITestSuite.MultiDeviceModuleStrategy

setprimaryAbiRun

public void setPrimaryAbiRun (boolean primaryAbiRun)

Imposta il valore di mprimaryAbiRun

Parametri
primaryAbiRun boolean

impostaShouldMakeDynamicModule

public void setShouldMakeDynamicModule (boolean dynamicModule)

Durante lo sharding distribuito, non possiamo avere ModuleDefinition che condivide i test in un pool, altrimenti lo sharding all'interno del modulo non funzionerà, quindi consentiamo di disabilitarlo.

Parametri
dynamicModule boolean

setSkipContext

public void setSkipContext (SkipContext skipContext)

Parametri
skipContext SkipContext

setSystemStatusChecker

public void setSystemStatusChecker ( systemCheckers)

Imposta i ISystemStatusChecker dalla configurazione per il test.

Parametri
systemCheckers

setTestLogger

public void setTestLogger (ITestLogger testLogger)

Inserisce l'istanza ITestLogger

Parametri
testLogger ITestLogger

Dividi

public  split (Integer shardCountHint, 
                TestInformation testInfo)

Versione alternativa di split(int) che fornisce anche un TestInformation che contiene informazioni in anteprima dall'elemento padre che crea gli shard. È utile se durante lo sharding è necessario accedere a informazioni come quelle relative al dispositivo o alla compilazione.

Parametri
shardCountHint Integer: numero di shard tentati.

testInfo TestInformation: l'elemento principale TestInformation

Ritorni
una raccolta di sottotesti da eseguire separatamente o null se il test non è attualmente suddivisibile in parti

Metodi protetti

Listener createModuleListener

protected  createModuleListeners ()

Restituisce l'elenco di ITestInvocationListener applicabili al livello ModuleListener. Questi listener verranno riutilizzati per ciascun modulo e non verranno rafforzati, pertanto non dovrebbero presumere uno stato interno.

Ritorni

filterByRunnerType

protected boolean filterByRunnerType (IConfiguration config, 
                 allowedRunners)

Applica il filtro della lista consentita dei runner, rimuovendo tutti i runner non inclusi nella lista. Se una configurazione ha diversi runner, alcuni potrebbero essere rimossi e la configurazione verrà comunque eseguita.

Parametri
config IConfiguration: IConfiguration in fase di valutazione.

allowedRunners : la lista consentita attuale per i runner.

Ritorni
boolean True se è consentita l'esecuzione del modulo di configurazione, altrimenti false.

getAbisForBuildTargetArch

protected  getAbisForBuildTargetArch ()

Restituisce gli ABI supportati dall'architettura di destinazione della compilazione dell'host. Esposto per i test.

Ritorni

getHostAbis

protected  getHostAbis ()

Restituisce gli abis della macchina host.

Ritorni

shouldModuleRun

protected boolean shouldModuleRun (ModuleDefinition module)

Parametri
module ModuleDefinition

Ritorni
boolean