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 la suite de tests. Cette classe constitue la base du fonctionnement de la suite. Chaque implémentation peut définir la liste des tests via la méthode loadTests().

Résumé

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 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

Constructeurs publics

ITestSuite()

Méthodes publiques

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

Possibilité de nettoyer tous les éléments nécessaires lors de la configuration de la suite, mais qui ne sont 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 vérifiez si celle-ci doit s'exécuter.

getAbis(ITestDevice device)

Récupère l'ensemble des ABI compatibles avec AbiUtils.getAbisSupportedByCompatibility() de test de compatibilité et l'appareil testé.

static getAbisForBuildTargetArchFromSuite()

Renvoie l'abis possible à partir de TestSuiteInfo.

IBuildInfo getBuildInfo()

L'implémentation de ITestSuite peut nécessiter les informations de build pour charger les tests.

final IConfiguration getConfiguration()

Renvoie l'appel IConfiguration.

ITestLogger getCurrentTestLogger()
ITestDevice getDevice()

Faites tester l'appareil.

ModuleDefinition getDirectModule()

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

boolean getIntraModuleSharding()
IInvocationContext getInvocationContext()

Renvoie le contexte de l'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()

Renvoyez l'environnement d'exécution attendu du test en millisecondes.

File getTestsDir()
boolean isSplitting()

Renvoie la valeur "true" si la valeur est actuellement dans IShardableTest.split(int).

abstract loadTests()

Méthode abstraite pour charger la configuration des tests à exécuter.

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 depuis loadTests().

void setAbiName(String abiName)

Définir la valeur de mAbiName

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

void setCollectTestsOnly(boolean shouldCollectTest)

Exécutez la suite de tests en mode collecteur uniquement. Tous les sous-tests sont nécessaires pour implémenter également cette interface.

void setConfiguration(IConfiguration configuration)

Il injecte les IConfiguration en cours d'utilisation.

void setDevice(ITestDevice device)

Injectez l'appareil testé.

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

void setMetricCollectors( collectors)

Définit la liste des objets IMetricCollector définis pour l'exécution du test.

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

Définir la valeur de mPrimaryAbiRun

void setShouldMakeDynamicModule(boolean dynamicModule)

Lors de la segmentation distribuée, nous ne pouvons pas faire en sorte que ModuleDefinition partage des tests dans un pool. Sinon, la segmentation intramodule ne fonctionnera pas. Nous autorisons donc la désactivation.

void setSystemStatusChecker( systemCheckers)

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

void setTestLogger(ITestLogger testLogger)

Il injecte l'instance ITestLogger.

split(Integer shardCountHint, TestInformation testInfo)

Autre version de split(int), qui fournit également un TestInformation contenant les informations préliminaires du parent qui crée les segments.

Méthodes protégées

createModuleListeners()

Renvoie la liste des ITestInvocationListener applicables au niveau ModuleListener.

boolean filterByRunnerType(IConfiguration config, allowedRunners)

Appliquer le filtrage en liste blanche des exécuteurs, en supprimant tout exécuteur qui ne figurait pas sur la liste blanche.

getAbisForBuildTargetArch()

Renvoyez l'abis compatible avec l'architecture cible de compilation de l'hôte.

getHostAbis()

Renvoie l'environnement de la machine hôte.

boolean shouldModuleRun(ModuleDefinition module)

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_FILTRE

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

CLÉ_PARAMÈTRE

public static final String PARAMETER_KEY

PRÉPARER_LISTE BLANCHE

public static final String PREPARER_WHITELIST

PRIMARY_ABI_RUN

public static final String PRIMARY_ABI_RUN

SEMAINE_ALÉATOIRE

public static final String RANDOM_SEED

LISTE_BLANCHE DE COURSE

public static final String RUNNER_WHITELIST

PASSER_HÉBERGEUR_ARCH_CHECK

public static final String SKIP_HOST_ARCH_CHECK

IGNORER_LES_ARTIFACTS_ÉTAGE

public static final String SKIP_STAGING_ARTIFACTS

PASSER_SYSTEM_STATUS_CHECKER

public static final String SKIP_SYSTEM_STATUS_CHECKER

STAGE_MODULE_ARTIFACTS

public static final String STAGE_MODULE_ARTIFACTS

CLÉ_TYPE_TEST

public static final String TEST_TYPE_KEY

TEST_TYPE_VALUE_PERFORMANCE

public static final String TEST_TYPE_VALUE_PERFORMANCE

CLÉ_JETON

public static final String TOKEN_KEY

protected boolean mEnableResolveSymlinks

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

installationSuitedenettoyage

public void cleanUpSuiteSetup ()

Possibilité de nettoyer tous les éléments nécessaires lors de la configuration de la suite, mais qui ne sont 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 vérifiez si celle-ci doit s'exécuter.

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

include MultiMap: filtre d'inclusion de métadonnées

exclude MultiMap: filtre d'exclusion de métadonnées

Renvoie
boolean "True" si le module doit s'exécuter, ou "false" dans le cas contraire.

getAbis

public  getAbis (ITestDevice device)

Récupère l'ensemble des ABI compatibles avec AbiUtils.getAbisSupportedByCompatibility() de test de compatibilité et l'appareil testé.

Paramètres
device ITestDevice

Renvoie
Ensemble des ABI sur lesquelles exécuter les tests

Génère
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

getAbisForBuildTargetArchFromSuite

public static  getAbisForBuildTargetArchFromSuite ()

Renvoie l'abis possible à partir de TestSuiteInfo.

Renvoie

getBuildInfo

public IBuildInfo getBuildInfo ()

L'implémentation de ITestSuite peut nécessiter les informations de build pour charger les tests.

Renvoie
IBuildInfo

getConfiguration

public final IConfiguration getConfiguration ()

Renvoie l'appel IConfiguration.

Renvoie
IConfiguration

getCurrentTestLogger

public ITestLogger getCurrentTestLogger ()

Renvoie
ITestLogger

getDevice

public ITestDevice getDevice ()

Faites tester l'appareil.

Renvoie
ITestDevice l'/le/la ITestDevice

GetDirectModule

public ModuleDefinition getDirectModule ()

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

Renvoie
ModuleDefinition

getIntraModuleSharding

public boolean getIntraModuleSharding ()

Renvoie
boolean

getInvocationContext

public IInvocationContext getInvocationContext ()

Renvoie le contexte de l'appel.

Renvoie
IInvocationContext

getModuleMetadataIncludeFilters

public MultiMap<String, String> getModuleMetadataIncludeFilters ()

Renvoie
MultiMap<String, String>

getMultiDeviceStrategy

public ITestSuite.MultiDeviceModuleStrategy getMultiDeviceStrategy ()

Renvoie
ITestSuite.MultiDeviceModuleStrategy

getRequestedAbi

public final String getRequestedAbi ()

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

Renvoie
String

getRequiredTokens

public  getRequiredTokens (TestInformation testInfo)

Renvoie la liste des jetons requis par le test. Renvoie la valeur "null" si les jetons ne sont pas acceptés.

Paramètres
testInfo TestInformation

Renvoie

getRuntimeHint

public long getRuntimeHint ()

Renvoyez l'environnement d'exécution attendu du test en millisecondes. Le temps est utilisé pour équilibrer la charge de l'exécution segmentée

Renvoie
long

getTestsDir

public File getTestsDir ()

Renvoie
File

IsSplitting

public boolean isSplitting ()

Renvoie la valeur "true" si la valeur est actuellement dans IShardableTest.split(int).

Renvoie
boolean

Tests de charge

public abstract  loadTests ()

Méthode abstraite pour charger la configuration des tests à exécuter. Chaque test est défini par un IConfiguration et un nom unique sous lequel il générera des résultats.

Renvoie

reportNotExecuted

public void reportNotExecuted (ITestInvocationListener listener, 
                String message)

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

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

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

reportNotExecuted

public void reportNotExecuted (ITestInvocationListener listener)

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

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

course

public final void run (TestInformation testInfo, 
                ITestInvocationListener listener)

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

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

listener ITestInvocationListener: ITestInvocationListener des résultats du test

Génère
DeviceNotAvailableException

setAbiName

public void setAbiName (String abiName)

Définir la valeur de mAbiName

Paramètres
abiName String

setAbis

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. Tous les sous-tests sont nécessaires pour implémenter également cette interface.

Définir une configuration

public void setConfiguration (IConfiguration configuration)

Il injecte les IConfiguration en cours d'utilisation.

Paramètres
configuration IConfiguration

Définir l'appareil

public void setDevice (ITestDevice device)

Injectez l'appareil testé.

Paramètres
device ITestDevice: 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 objets IMetricCollector définis pour l'exécution du 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 de la segmentation distribuée, nous ne pouvons pas faire en sorte que ModuleDefinition partage des tests dans un pool. Sinon, la segmentation intramodule ne fonctionnera pas. Nous autorisons donc la désactivation.

Paramètres
dynamicModule boolean

setSystemStatusChecker

public void setSystemStatusChecker ( systemCheckers)

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

Paramètres
systemCheckers

setTestLogger

public void setTestLogger (ITestLogger testLogger)

Il injecte l'instance ITestLogger.

Paramètres
testLogger ITestLogger

split

public  split (Integer shardCountHint, 
                TestInformation testInfo)

Autre version de split(int), qui fournit également un TestInformation contenant les informations préliminaires du parent qui crée les segments. Elle est utile si des éléments tels que des informations sur l'appareil ou le build doivent être accessibles pendant la segmentation.

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

testInfo TestInformation: TestInformation parent

Renvoie
Une collection de sous-tests à exécuter séparément ou null si le test n'est actuellement pas segmentable

Méthodes protégées

createModuleListeners

protected  createModuleListeners ()

Renvoie la liste des ITestInvocationListener applicables au niveau ModuleListener. Ces écouteurs seront réutilisés pour chaque module et ne seront pas réinstanciés. Ils ne doivent donc pas supposer un état interne.

Renvoie

filterByRunnerType

protected boolean filterByRunnerType (IConfiguration config, 
                 allowedRunners)

Appliquer le filtrage en liste blanche des exécuteurs, en supprimant tout exécuteur qui ne figurait pas sur la liste blanche. Si une configuration comporte plusieurs exécuteurs, certains pourront être supprimés et la configuration continuera de s'exécuter.

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

allowedRunners : liste blanche des exécuteurs actuels.

Renvoie
boolean "True" si le module de configuration est autorisé à s'exécuter, ou "false" dans le cas contraire.

getAbisForBuildTargetArch

protected  getAbisForBuildTargetArch ()

Renvoyez l'abis compatible avec l'architecture cible de compilation de l'hôte. Exposée à des fins de test.

Renvoie

getHostAbis

protected  getHostAbis ()

Renvoie l'environnement de la machine hôte.

Renvoie

exécutable du module

protected boolean shouldModuleRun (ModuleDefinition module)

Paramètres
module ModuleDefinition

Renvoie
boolean