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 fournit la base sur laquelle la suite sera exécutée. 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_METADATA_EXCLUDE_FILTER

public static final String MODULE_METADATA_INCLUDE_FILTER

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 REBOOT_BEFORE_TEST

public static final String RUNNER_WHITELIST

public static final String SKIP_HOST_ARCH_CHECK

public static final String SKIP_SYSTEM_STATUS_CHECKER

public static final String TOKEN_KEY

Constructeurs publics

ITestSuite()

Méthodes publiques

void addModuleMetadataExcludeFilters(MultiMap<String, String> filters)
void addModuleMetadataIncludeFilters(MultiMap<String, String> filters)
final void enableRebootBeforeTest()

Définit reboot-before-test sur "true".

getAbis(ITestDevice device)

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

static getAbisForBuildTargetArchFromSuite()

Renvoie les abis possibles à partir de TestSuiteInfo.

IBuildInfo getBuildInfo()

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

final IConfiguration getConfiguration()

Renvoie l'IConfiguration d'appel.

ITestLogger getCurrentTestLogger()
ITestDevice getDevice()

Obtenez l'appareil à tester.

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ée).

IInvocationContext getInvocationContext()

Renvoie le contexte d'invocation.

final String getRequestedAbi()

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

getRequiredTokens()
long getRuntimeHint()

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

File getTestsDir()
boolean isSplitting()

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

abstract loadTests()

Méthode abstraite permettant de 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)
void setBuild(IBuildInfo buildInfo)

void setCollectTestsOnly(boolean shouldCollectTest)

Exécutez la suite de tests en mode collecteur uniquement. Pour ce faire, tous les sous-tests doivent également implémenter cette interface.

void setConfiguration(IConfiguration configuration)

Injecte le IConfiguration utilisé.

void setDevice(ITestDevice device)

Injectez l'appareil testé.

void setInvocationContext(IInvocationContext invocationContext)

void setInvocationInjector(Injector injector)

Récupère le Injector Guice actuel à partir de l'appel.

void setMetricCollectors( collectors)

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

void setPrimaryAbiRun(boolean primaryAbiRun)

Définissez la valeur de mPrimaryAbiRun

void setShouldMakeDynamicModule(boolean dynamicModule)

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

void setSystemStatusChecker( systemCheckers)

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

void setTestLogger(ITestLogger testLogger)

split(Integer shardCountHint, TestInformation testInfo)

Version alternative de split(int) qui fournit également un TestInformation contenant des informations préliminaires du parent qui crée les fragments.

Méthodes protégées

createModuleListeners()

Renvoie la liste des ITestInvocationListener applicables au niveau ModuleListener.

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 elle doit s'exécuter.

boolean filterByRunnerType(IConfiguration config, allowedRunners)

Appliquez le filtrage de la liste blanche des exécuteurs, en supprimant tous les exécuteurs qui ne figurent pas sur la liste blanche.

getAbisForBuildTargetArch()

Renvoie les ABI compatibles avec l'architecture cible de compilation de l'hôte.

getHostAbis()

Renvoie l'abis 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_METADATA_EXCLUDE_FILTER

public static final String MODULE_METADATA_EXCLUDE_FILTER

MODULE_METADATA_INCLUDE_FILTER

public static final String MODULE_METADATA_INCLUDE_FILTER

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

REBOOT_BEFORE_TEST

public static final String REBOOT_BEFORE_TEST

RUNNER_WHITELIST

public static final String RUNNER_WHITELIST

SKIP_HOST_ARCH_CHECK

public static final String SKIP_HOST_ARCH_CHECK

SKIP_SYSTEM_STATUS_CHECKER

public static final String SKIP_SYSTEM_STATUS_CHECKER

TOKEN_KEY

public static final String TOKEN_KEY

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

enableRebootBeforeTest

public final void enableRebootBeforeTest ()

Définit reboot-before-test sur "true".

getAbis

public  getAbis (ITestDevice device)

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

Paramètres
device ITestDevice

Renvoie
Ensemble des ABI sur lesquels exécuter les tests

Génère
DeviceNotAvailableException

getAbisForBuildTargetArchFromSuite

public static  getAbisForBuildTargetArchFromSuite ()

Renvoie les abis possibles à partir de TestSuiteInfo.

Renvoie

getBuildInfo

public IBuildInfo getBuildInfo ()

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

Renvoie
IBuildInfo

getConfiguration

public final IConfiguration getConfiguration ()

Renvoie l'IConfiguration d'appel.

Renvoie
IConfiguration

getCurrentTestLogger

public ITestLogger getCurrentTestLogger ()

Renvoie
ITestLogger

getDevice

public ITestDevice getDevice ()

Obtenez l'appareil à tester.

Renvoie
ITestDevice l'/le/la 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ée).

Renvoie
ModuleDefinition

getInvocationContext

public IInvocationContext getInvocationContext ()

Renvoie le contexte d'invocation.

Renvoie
IInvocationContext

getRequestedAbi

public final String getRequestedAbi ()

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

Renvoie
String

getRequiredTokens

public  getRequiredTokens ()

Renvoie

getRuntimeHint

public long getRuntimeHint ()

Renvoie la durée d'exécution prévue du test en millisecondes. L'heure est utilisée pour équilibrer la charge de l'exécution fractionnée.

Renvoie
long

getTestsDir

public File getTestsDir ()

Renvoie
File

isSplitting

public boolean isSplitting ()

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

Renvoie
boolean

loadTests

public abstract  loadTests ()

Méthode abstraite permettant de charger la configuration des tests qui seront exécutés. Chaque test est défini par un IConfiguration et un nom unique sous lequel il génère des rapports.

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.

Exécuter

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

listener ITestInvocationListener

Génère
DeviceNotAvailableException

setAbiName

public void setAbiName (String abiName)

Définissez 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. Pour ce faire, tous les sous-tests doivent également implémenter cette interface.

setConfiguration

public void setConfiguration (IConfiguration configuration)

Injecte le IConfiguration utilisé.

Paramètres
configuration IConfiguration

setDevice

public void setDevice (ITestDevice device)

Injectez l'appareil testé.

Paramètres
device ITestDevice: ITestDevice à utiliser

setInvocationContext

public void setInvocationContext (IInvocationContext invocationContext)

Paramètres
invocationContext IInvocationContext

setInvocationInjector

public void setInvocationInjector (Injector injector)

Récupère le Injector Guice actuel à partir de l'appel. Cela devrait nous permettre de poursuivre l'injection d'objets de modules.

Paramètres
injector Injector

setMetricCollectors

public void setMetricCollectors ( collectors)

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

Paramètres
collectors

setPrimaryAbiRun

public void setPrimaryAbiRun (boolean primaryAbiRun)

Définissez la valeur de mPrimaryAbiRun

Paramètres
primaryAbiRun boolean

setShouldMakeDynamicModule

public void setShouldMakeDynamicModule (boolean dynamicModule)

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

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)

Paramètres
testLogger ITestLogger

split

public  split (Integer shardCountHint, 
                TestInformation testInfo)

Version alternative de split(int) qui fournit également un TestInformation contenant des informations préliminaires du parent qui crée les fragments. Il est utile si des éléments tels que des informations sur l'appareil ou la compilation doivent être consultés lors du fractionnement.

Paramètres
shardCountHint Integer: nombre de partitions tentées.

testInfo TestInformation: TestInformation parent

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

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. Ils ne seront pas réinstanciés. Ils ne doivent donc pas supposer un état interne.

Renvoie

filterByConfigMetadata

protected 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 elle doit s'exécuter.

Paramètres
config IConfiguration: IConfiguration évalué.

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

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

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

filterByRunnerType

protected boolean filterByRunnerType (IConfiguration config, 
                 allowedRunners)

Appliquez le filtrage de la liste blanche des exécuteurs, en supprimant tous les exécuteurs qui ne figurent pas sur la liste blanche. Si une configuration comporte plusieurs exécutants, certains peuvent être supprimés, mais la configuration continuera de s'exécuter.

Paramètres
config IConfiguration: IConfiguration évalué.

allowedRunners : liste blanche actuelle du runner.

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

getAbisForBuildTargetArch

protected  getAbisForBuildTargetArch ()

Renvoie les ABI compatibles avec l'architecture cible de compilation de l'hôte. Exposé à des fins de test.

Renvoie

getHostAbis

protected  getHostAbis ()

Renvoie l'abis de la machine hôte.

Renvoie

shouldModuleRun

protected boolean shouldModuleRun (ModuleDefinition module)

Paramètres
module ModuleDefinition

Renvoie
boolean