ITestSuite

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

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 di 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 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 pulire tutto ciò che è stato necessario durante la configurazione delle suite, ma non è necessario 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 deve essere eseguita.

getAbis(ITestDevice device)

Consente di recuperare l'insieme di ABI supportato sia dai test di compatibilità AbiUtils.getAbisSupportedByCompatibility() sia dal dispositivo sottoposto a 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 la chiamata IConfiguration.

ITestLogger getCurrentTestLogger()
ITestDevice getDevice()

Fai testare il dispositivo.

ModuleDefinition getDirectModule()

Restituisce ModuleDefinition da eseguire direttamente o null se ancora non è stato eseguito lo sharding (quando ITestSuite non è ancora stato sottoposto a sharding).

boolean getIntraModuleSharding()
IInvocationContext getInvocationContext()

Restituisce il contesto di chiamata.

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

Restituisce il valore 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 true se al momento siamo in IShardableTest.split(int).

abstract loadTests()

Metodo astratto per caricare la configurazione dei test che verrà eseguita.

void reportNotExecuted(ITestInvocationListener listener, String message)

Segnala i test non eseguiti al listener principale fornito.

void reportNotExecuted(ITestInvocationListener listener)

Segnala i test non eseguiti al listener 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)

Inserisce IConfiguration in uso.

void setDevice(ITestDevice device)

Inietta il dispositivo sottoposto a test.

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

void setMetricCollectors( collectors)

Consente di impostare 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)

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.

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 in anteprima dall'elemento padre che crea gli shard.

Metodi protetti

createModuleListeners()

Restituisce l'elenco di ITestInvocationListener applicabile al livello ModuleListener.

boolean filterByRunnerType(IConfiguration config, allowedRunners)

Applica il filtro Lista consentita dei runner, rimuovendo gli eventuali runner non autorizzati.

getAbisForBuildTargetArch()

Restituisce l'abis supportato dall'architettura di destinazione della build dell'host.

getHostAbis()

Restituisce l'abis della macchina host.

boolean shouldModuleRun(ModuleDefinition module)

Campi

OPZIONE_ABI

public static final String ABI_OPTION

CHIAVE_PARAMETRO_PRINCIPALE ATTIVA

public static final String ACTIVE_MAINLINE_PARAMETER_KEY

CHIAVE_PARAMETRO_PRINCIPALE

public static final String MAINLINE_PARAMETER_KEY

POST_MODULE_CHECKER

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

MODULO_METADATI_ESCLUDI_FILTRO

public static final String MODULE_METADATA_EXCLUDE_FILTER

MODULO_METADATI_INCLUDI_FILTRO

public static final String MODULE_METADATA_INCLUDE_FILTER

MODULE_START_TIME

public static final String MODULE_START_TIME

CHIAVE_PARAMETRO

public static final String PARAMETER_KEY

PREPARER_WHITELIST

public static final String PREPARER_WHITELIST

PRIMARY_ABI_RUN

public static final String PRIMARY_ABI_RUN

CASUALE_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

CHIAVE_TIPO_TEST

public static final String TEST_TYPE_KEY

TEST_TYPE_VALUE_PERFORMANCE

public static final String TEST_TYPE_VALUE_PERFORMANCE

CHIAVE_TOKEN

public static final String TOKEN_KEY

protected boolean mEnableResolveSymlinks

mRecoveryDeviceByCvd

protected boolean mRecoverDeviceByCvd

Costruttori pubblici

ITestSuite

public ITestSuite ()

Metodi pubblici

addModuleMetadataExclusionFilters

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.

filtroByConfigMetadata

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: IConfiguration in fase di valutazione.

include MultiMap: il filtro di inclusione dei 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
Il set 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 sulla build per caricare i test.

Ritorni
IBuildInfo

getConfiguration

public final IConfiguration getConfiguration ()

Restituisce la chiamata IConfiguration.

Ritorni
IConfiguration

getCurrentTestLogger

public ITestLogger getCurrentTestLogger ()

Ritorni
ITestLogger

getDevice

public ITestDevice getDevice ()

Fai testare il dispositivo.

Ritorni
ITestDevice ITestDevice

getDirectModule

public ModuleDefinition getDirectModule ()

Restituisce ModuleDefinition da eseguire direttamente o null se ancora non è stato eseguito lo sharding (quando ITestSuite non è ancora stato sottoposto a sharding).

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 il valore 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 sono supportati i token.

Parametri
testInfo TestInformation

Ritorni

getRuntimeHint

public long getRuntimeHint ()

Restituisce il runtime previsto del test in millisecondi. Il tempo viene utilizzato per bilanciare il carico dell'esecuzione con sharding

Ritorni
long

getTestsDir

public File getTestsDir ()

Ritorni
File

Suddivisione

public boolean isSplitting ()

Restituisce true se al momento siamo in IShardableTest.split(int).

Ritorni
boolean

loadTest

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 in base al quale verranno registrati i risultati.

Ritorni

reportNon eseguito

public void reportNotExecuted (ITestInvocationListener listener, 
                String message)

Segnala i test non eseguiti al listener principale fornito. Dovrebbero essere segnalati come non riusciti con il messaggio NOT_EXECUTED_FAILURE.

Parametri
listener ITestInvocationListener: il listener principale in cui segnalare i risultati non eseguiti.

message String: il messaggio da associare all'errore non eseguito.

reportNon eseguito

public void reportNotExecuted (ITestInvocationListener listener)

Segnala i test non eseguiti al listener principale fornito. Dovrebbero essere segnalati come non riusciti con il messaggio NOT_EXECUTED_FAILURE.

Parametri
listener ITestInvocationListener: il listener 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 raccoglitore. Sono necessari tutti i test secondari per implementare anche questa interfaccia.

setConfiguration

public void setConfiguration (IConfiguration configuration)

Inserisce IConfiguration in uso.

Parametri
configuration IConfiguration

impostaDispositivo

public void setDevice (ITestDevice device)

Inietta il dispositivo sottoposto a test.

Parametri
device ITestDevice: i ITestDevice da utilizzare

setDirectModule

public void setDirectModule (ModuleDefinition module)

Parametri
module ModuleDefinition

impostaIntraModuleSharding

public void setIntraModuleSharding (boolean intraModuleSharding)

Parametri
intraModuleSharding boolean

setInvocationContext

public void setInvocationContext (IInvocationContext invocationContext)

Parametri
invocationContext IInvocationContext

setMetricCollectors

public void setMetricCollectors ( collectors)

Consente di impostare l'elenco di IMetricCollector definiti per l'esecuzione del test.

Parametri
collectors

impostaMultiDeviceStrategy

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

setSystemStatusChecker

public void setSystemStatusChecker ( systemCheckers)

Imposta i ISystemStatusChecker dalla configurazione del 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 è necessario accedere alle informazioni sul dispositivo o sulla build durante lo sharding.

Parametri
shardCountHint Integer: numero di shard tentati.

testInfo TestInformation: TestInformation principale

Ritorni
una raccolta di test secondari da eseguire separatamente o null se il test al momento non è utilizzabile per lo sharding

Metodi protetti

Listener createModuleListener

protected  createModuleListeners ()

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

Ritorni

filtroPerTipoRunner

protected boolean filterByRunnerType (IConfiguration config, 
                 allowedRunners)

Applica il filtro Lista consentita dei runner, rimuovendo gli eventuali runner non autorizzati. Se una configurazione ha più runner, alcuni potrebbero essere rimossi e la configurazione continuerà a essere eseguita.

Parametri
config IConfiguration: IConfiguration in fase di valutazione.

allowedRunners : l'attuale lista consentita dei runner.

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

getAbisForBuildTargetArch

protected  getAbisForBuildTargetArch ()

Restituisce l'abis supportato dall'architettura di destinazione della build dell'host. Esposizione per i test.

Ritorni

getHostAbis

protected  getHostAbis ()

Restituisce l'abis della macchina host.

Ritorni

dovrebbeModuleRun

protected boolean shouldModuleRun (ModuleDefinition module)

Parametri
module ModuleDefinition

Ritorni
boolean