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 abstraite utilisée pour exécuter Test Suite. Cette classe constitue la base de la manière dont la suite sera exécutée. Chaque implémentation peut définir la liste des tests via la méthode loadTests() .

Résumé

Des champs

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 TEST_TYPE_KEY

public static final String TEST_TYPE_VALUE_PERFORMANCE

public static final String TOKEN_KEY

protected boolean mRecoverDeviceByCvd

Constructeurs publics

ITestSuite ()

Méthodes publiques

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

Possibilité de nettoyer tout ce qui était nécessaire lors de la configuration des suites mais qui n'est pas requis pour exécuter les tests.

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

Appliquez le filtre de métadonnées à la configuration et voyez si la configuration doit s'exécuter.

getAbis ( ITestDevice device)

Obtient l'ensemble des ABI pris en charge à la fois par les tests de compatibilité AbiUtils.getAbisSupportedByCompatibility() et par le périphérique testé.

static getAbisForBuildTargetArchFromSuite ()

Renvoie l'abis possible de TestSuiteInfo.

IBuildInfo getBuildInfo ()

La mise en œuvre d' ITestSuite peut nécessiter les informations de build pour charger les tests.

final IConfiguration getConfiguration ()

Renvoie l'invocation IConfiguration .

ITestLogger getCurrentTestLogger ()
ITestDevice getDevice ()

Obtenez l'appareil en cours de test.

ModuleDefinition getDirectModule ()

Renvoie le ModuleDefinition à exécuter directement, ou null s'il n'y en a pas encore (lorsque l'ITestSuite n'a pas encore été partitionné).

boolean getIntraModuleSharding ()
IInvocationContext getInvocationContext ()

Renvoie le contexte d'appel.

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

Renvoie l'abi demandé avec l'option -a ou --abi.

getRequiredTokens ( TestInformation testInfo)

Renvoie la liste des jetons requis par le test.

long getRuntimeHint ()

Renvoie la durée d'exécution attendue du test en millisecondes.

File getTestsDir ()
boolean isSplitting ()

Renvoie vrai si nous sommes actuellement dans IShardableTest.split(int) .

abstract loadTests ()

Méthode abstraite pour charger la configuration des tests qui seront exécutés.

void reportNotExecuted ( ITestInvocationListener listener, String message)

Signalez les tests non exécutés à l'écouteur principal fourni.

void reportNotExecuted ( ITestInvocationListener listener)

Signalez les tests non exécutés à l'écouteur principal fourni.

final void run ( TestInformation testInfo, ITestInvocationListener listener)

Méthode d'exécution générique pour tous les tests chargés à partir de loadTests() .

void setAbiName (String abiName)

Définir la valeur de mAbiName

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

void setCollectTestsOnly (boolean shouldCollectTest)

Exécutez la suite de tests en mode collecteur uniquement, cela nécessite que tous les sous-tests implémentent également cette interface.

void setConfiguration ( IConfiguration configuration)

Injecte la IConfiguration utilisée.

void setDevice ( ITestDevice device)

Injectez le dispositif testé.

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

void setMetricCollectors ( collectors) setMetricCollectors ( collectors)

Définit la liste des IMetricCollector définis pour le test.

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

Définir la valeur de mPrimaryAbiRun

void setShouldMakeDynamicModule (boolean dynamicModule)

Lors du partitionnement distribué, nous ne pouvons pas avoir ModuleDefinition qui partage des tests dans un pool, sinon le partitionnement intra-module ne fonctionnera pas, nous autorisons donc de le désactiver.

void setSystemStatusChecker ( systemCheckers) setSystemStatusChecker ( systemCheckers)

Définit les ISystemStatusChecker de la configuration pour le test.

void setTestLogger ( ITestLogger testLogger)

Injecte l'instance ITestLogger

split (Integer shardCountHint, TestInformation testInfo)

Version alternative de split(int) qui fournit également une TestInformation contenant les premières informations du parent créant les fragments.

Méthodes protégées

createModuleListeners ()

Renvoie la liste des ITestInvocationListener applicables au niveau ModuleListener .

boolean filterByRunnerType ( IConfiguration config, allowedRunners) filterByRunnerType ( IConfiguration config, allowedRunners)

Appliquez le filtrage de la liste blanche des coureurs, en supprimant tout coureur qui n'était pas sur la liste blanche.

getAbisForBuildTargetArch ()

Renvoie l'abis pris en charge par l'architecture cible de build hôte.

getHostAbis ()

Renvoie la machine hôte abis.

boolean shouldModuleRun ( ModuleDefinition module)

Des champs

ABI_OPTION

public static final String ABI_OPTION

ACTIVE_MAINLINE_PARAMETER_KEY

public static final String ACTIVE_MAINLINE_PARAMETER_KEY

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

SKIP_STAGING_ARTIFACTS

public static final String SKIP_STAGING_ARTIFACTS

SKIP_SYSTEM_STATUS_CHECKER

public static final String SKIP_SYSTEM_STATUS_CHECKER

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

mRecoverDeviceByCvd

protected boolean mRecoverDeviceByCvd

Constructeurs publics

ITestSuite

public ITestSuite ()

Méthodes publiques

addModuleMetadataExcludeFilters

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

Paramètres
filters MultiMap

addModuleMetadataIncludeFilters

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

Paramètres
filters MultiMap

cleanUpSuiteSetup

public void cleanUpSuiteSetup ()

Possibilité de nettoyer tout ce qui était nécessaire lors de la configuration des suites mais qui n'est pas requis pour exécuter les tests.

filterByConfigMetadata

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

Appliquez le filtre de métadonnées à la configuration et voyez si la configuration doit s'exécuter.

Paramètres
config IConfiguration : la IConfiguration en cours d'évaluation.

include MultiMap : les métadonnées incluent un filtre

exclude MultiMap : le filtre d'exclusion des métadonnées

Retour
boolean True si le module doit s'exécuter, false sinon.

obtenirAbis

public  getAbis (ITestDevice device)

Obtient l'ensemble des ABI pris en charge à la fois par les tests de compatibilité AbiUtils.getAbisSupportedByCompatibility() et par le périphérique testé.

Paramètres
device ITestDevice

Retour
L'ensemble des ABI sur lesquels exécuter les tests

Jetés
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

getAbisForBuildTargetArchFromSuite

public static  getAbisForBuildTargetArchFromSuite ()

Renvoie l'abis possible de TestSuiteInfo.

Retour

obtenirBuildInfo

public IBuildInfo getBuildInfo ()

La mise en œuvre d' ITestSuite peut nécessiter les informations de build pour charger les tests.

Retour
IBuildInfo

obtenirConfiguration

public final IConfiguration getConfiguration ()

Renvoie l'invocation IConfiguration .

Retour
IConfiguration

getCurrentTestLogger

public ITestLogger getCurrentTestLogger ()

Retour
ITestLogger

obtenirDevice

public ITestDevice getDevice ()

Obtenez l'appareil en cours de test.

Retour
ITestDevice le ITestDevice

getDirectModule

public ModuleDefinition getDirectModule ()

Renvoie le ModuleDefinition à exécuter directement, ou null s'il n'y en a pas encore (lorsque l'ITestSuite n'a pas encore été partitionné).

Retour
ModuleDefinition

getIntraModuleSharding

public boolean getIntraModuleSharding ()

Retour
boolean

getInvocationContext

public IInvocationContext getInvocationContext ()

Renvoie le contexte d'appel.

Retour
IInvocationContext

getModuleMetadataIncludeFilters

public MultiMap<String, String> getModuleMetadataIncludeFilters ()

Retour
MultiMap <String, String>

getMultiDeviceStrategy

public ITestSuite.MultiDeviceModuleStrategy getMultiDeviceStrategy ()

Retour
ITestSuite.MultiDeviceModuleStrategy

getRequestedAbi

public final String getRequestedAbi ()

Renvoie l'abi demandé avec l'option -a ou --abi.

Retour
String

getRequiredTokens

public  getRequiredTokens (TestInformation testInfo)

Renvoie la liste des jetons requis par le test. Renvoie null si aucun support de jeton.

Paramètres
testInfo TestInformation

Retour

getRuntimeHint

public long getRuntimeHint ()

Renvoie la durée d'exécution attendue du test en millisecondes. Le temps est utilisé pour équilibrer la charge de l'exécution fragmentée

Retour
long

getTestsDir

public File getTestsDir ()

Retour
File

estSplitting

public boolean isSplitting ()

Renvoie vrai si nous sommes actuellement dans IShardableTest.split(int) .

Retour
boolean

chargerTests

public abstract  loadTests ()

Méthode abstraite pour charger la configuration des tests qui seront exécutés. Chaque test est défini par une IConfiguration et un nom unique sous lequel il rapportera les résultats.

Retour

rapportNotExecuted

public void reportNotExecuted (ITestInvocationListener listener, 
                String message)

Signalez les tests non exécutés à l'écouteur principal fourni. Ils doivent être signalés comme ayant échoué avec le message NOT_EXECUTED_FAILURE .

Paramètres
listener ITestInvocationListener : l'écouteur principal où signaler les résultats non exécutés.

message String : le message à associer à l'échec non exécuté.

rapportNotExecuted

public void reportNotExecuted (ITestInvocationListener listener)

Signalez les tests non exécutés à l'écouteur principal fourni. Ils doivent être signalés comme ayant échoué avec le message NOT_EXECUTED_FAILURE .

Paramètres
listener ITestInvocationListener : l'écouteur principal où signaler les résultats non exécutés.

courir

public final void run (TestInformation testInfo, 
                ITestInvocationListener listener)

Méthode d'exécution générique pour tous les tests chargés à partir de loadTests() .

Paramètres
testInfo TestInformation : L'objet TestInformation contenant des informations utiles pour exécuter des tests.

listener ITestInvocationListener : le ITestInvocationListener des résultats de tests

Jetés
DeviceNotAvailableException

setAbiName

public void setAbiName (String abiName)

Définir la valeur de mAbiName

Paramètres
abiName String

définirAbis

public final void setAbis ( abis)

Paramètres
abis

setBuild

public void setBuild (IBuildInfo buildInfo)

Paramètres
buildInfo IBuildInfo

setCollectTestsOnly

public void setCollectTestsOnly (boolean shouldCollectTest)

Exécutez la suite de tests en mode collecteur uniquement, cela nécessite que tous les sous-tests implémentent également cette interface.

setConfiguration

public void setConfiguration (IConfiguration configuration)

Injecte la IConfiguration utilisée.

Paramètres
configuration IConfiguration

définirDevice

public void setDevice (ITestDevice device)

Injectez le dispositif testé.

Paramètres
device ITestDevice : le ITestDevice à utiliser

setDirectModule

public void setDirectModule (ModuleDefinition module)

Paramètres
module ModuleDefinition

setIntraModuleSharding

public void setIntraModuleSharding (boolean intraModuleSharding)

Paramètres
intraModuleSharding boolean

setInvocationContext

public void setInvocationContext (IInvocationContext invocationContext)

Paramètres
invocationContext IInvocationContext

setMetricCollectors

public void setMetricCollectors ( collectors)

Définit la liste des IMetricCollector définis pour le test.

Paramètres
collectors

setMultiDeviceStrategy

public void setMultiDeviceStrategy (ITestSuite.MultiDeviceModuleStrategy strategy)

Paramètres
strategy ITestSuite.MultiDeviceModuleStrategy

setPrimaryAbiRun

public void setPrimaryAbiRun (boolean primaryAbiRun)

Définir la valeur de mPrimaryAbiRun

Paramètres
primaryAbiRun boolean

setShouldMakeDynamicModule

public void setShouldMakeDynamicModule (boolean dynamicModule)

Lors du partitionnement distribué, nous ne pouvons pas avoir ModuleDefinition qui partage des tests dans un pool, sinon le partitionnement intra-module ne fonctionnera pas, nous autorisons donc de le désactiver.

Paramètres
dynamicModule boolean

setSystemStatusChecker

public void setSystemStatusChecker ( systemCheckers)

Définit les ISystemStatusChecker de la configuration pour le test.

Paramètres
systemCheckers

setTestLogger

public void setTestLogger (ITestLogger testLogger)

Injecte l'instance ITestLogger

Paramètres
testLogger ITestLogger

diviser

public  split (Integer shardCountHint, 
                TestInformation testInfo)

Version alternative de split(int) qui fournit également une TestInformation contenant les premières informations du parent créant les fragments. Ceci est utile si des éléments tels que des informations sur le périphérique ou la construction doivent être accessibles pendant le partitionnement.

Paramètres
shardCountHint Integer : le nombre de fragments tentés.

testInfo TestInformation : Le TestInformation parent

Retour
une collection de sous-tests à exécuter séparément ou null si le test n'est pas actuellement fragmentable

Méthodes protégées

createModuleListeners

protected  createModuleListeners ()

Renvoie la liste des ITestInvocationListener applicables au niveau ModuleListener . Ces auditeurs seront réutilisés pour chaque module, ils ne seront pas réinstanciés donc ils ne doivent pas prendre d'état interne.

Retour

filtreByRunnerType

protected boolean filterByRunnerType (IConfiguration config, 
                 allowedRunners)

Appliquez le filtrage de la liste blanche des coureurs, en supprimant tout coureur qui n'était pas sur la liste blanche. Si une configuration comporte plusieurs exécuteurs, certains peuvent être supprimés et la configuration continuera à s'exécuter.

Paramètres
config IConfiguration : la IConfiguration en cours d'évaluation.

allowedRunners : La liste blanche actuelle des coureurs.

Retour
boolean True si le module de configuration est autorisé à s'exécuter, false sinon.

getAbisForBuildTargetArch

protected  getAbisForBuildTargetArch ()

Renvoie l'abis pris en charge par l'architecture cible de build hôte. Exposé pour les tests.

Retour

getHostAbis

protected  getHostAbis ()

Renvoie la machine hôte abis.

Retour

devraitModuleRun

protected boolean shouldModuleRun (ModuleDefinition module)

Paramètres
module ModuleDefinition

Retour
boolean