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


Abstrakte Klasse zum Ausführen der Testsuite. Diese Klasse bildet die Grundlage für die Ausführung der Suite. Jede Implementierung kann die Liste der Tests über die Methode loadTests() definieren.

Zusammenfassung

Konstanten

String ABI_OPTION

String ACTIVE_MAINLINE_PARAMETER_KEY

String BUILD_ATTRIBUTE_FLAG_OVERRIDES_KEY

String ENABLE_RESOLVE_SYM_LINKS

String MAINLINE_PARAMETER_KEY

String MODULE_CHECKER_POST

String MODULE_CHECKER_PRE

String MODULE_END_TIME

String MODULE_METADATA_EXCLUDE_FILTER

String MODULE_METADATA_INCLUDE_FILTER

String MODULE_START_TIME

String PARAMETER_KEY

String PREPARER_WHITELIST

String PRIMARY_ABI_RUN

String RANDOM_SEED

String RUNNER_WHITELIST

String SKIP_HOST_ARCH_CHECK

String SKIP_STAGING_ARTIFACTS

String SKIP_SYSTEM_STATUS_CHECKER

String STAGE_MODULE_ARTIFACTS

String TEST_TYPE_KEY

String TEST_TYPE_VALUE_PERFORMANCE

String TOKEN_KEY

Felder

protected boolean mEnableResolveSymlinks

protected boolean mRecoverDeviceByCvd

Öffentliche Konstruktoren

ITestSuite()

Öffentliche Methoden

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

Möglichkeit, alle Elemente zu entfernen, die während der Einrichtung der Test-Suites erforderlich waren, aber nicht zum Ausführen der Tests benötigt werden.

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

Wenden Sie den Metadatenfilter auf die Konfiguration an und prüfen Sie, ob die Konfiguration ausgeführt werden soll.

Set<IAbi> getAbis(ITestDevice device)

Ruft die Gruppe von ABIs ab, die sowohl vom Kompatibilitätstest AbiUtils.getAbisSupportedByCompatibility() als auch vom zu testenden Gerät unterstützt werden.

static Set<String> getAbisForBuildTargetArchFromSuite()

Gibt die möglichen ABIs aus TestSuiteInfo zurück.

IBuildInfo getBuildInfo()

Für die Implementierung von ITestSuite müssen möglicherweise die Build-Informationen geladen werden, um die Tests auszuführen.

final IConfiguration getConfiguration()

Gibt den Aufruf IConfiguration zurück.

ITestLogger getCurrentTestLogger()
ITestDevice getDevice()

Besorgen Sie sich das zu testende Gerät.

ModuleDefinition getDirectModule()

Gibt die ModuleDefinition zurück, die direkt ausgeführt werden soll, oder „null“, wenn noch keine vorhanden ist (wenn die ITestSuite noch nicht aufgeteilt wurde).

boolean getIntraModuleSharding()
IInvocationContext getInvocationContext()

Gibt den Aufrufkontext zurück.

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

Gibt das mit der Option „-a“ oder „--abi“ angeforderte ABI zurück.

Set<TokenProperty> getRequiredTokens(TestInformation testInfo)

Gibt die Liste der für den Test erforderlichen Tokens zurück.

long getRuntimeHint()

Gibt die erwartete Laufzeit des Tests in Millisekunden zurück.

File getTestsDir()
boolean isRemoveModuleBuffering()
boolean isSplitting()

Gibt „true“ zurück, wenn wir uns gerade in IShardableTest.split(int) befinden.

abstract LinkedHashMap<String, IConfiguration> loadTests()

Abstrakte Methode zum Laden der Konfiguration der auszuführenden Tests.

void reportNotExecuted(ITestInvocationListener listener, String message)

Melden Sie die nicht ausgeführten Tests an den bereitgestellten Haupt-Listener.

void reportNotExecuted(ITestInvocationListener listener)

Melden Sie die nicht ausgeführten Tests an den bereitgestellten Haupt-Listener.

final void run(TestInformation testInfo, ITestInvocationListener listener)

Generische Ausführungsmethode für alle Tests, die aus loadTests() geladen werden.

void setAbiName(String abiName)

Legen Sie den Wert von mAbiName fest.

final void setAbis(Set<IAbi> abis)
void setBuild(IBuildInfo buildInfo)

void setCollectTestsOnly(boolean shouldCollectTest)

Führen Sie die Testsuite nur im Collectormodus aus. Dazu müssen alle untergeordneten Tests diese Schnittstelle ebenfalls implementieren.

void setConfiguration(IConfiguration configuration)

Fügt die verwendete IConfiguration ein.

void setDevice(ITestDevice device)

Schleusen Sie das zu testende Gerät ein.

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

void setMetricCollectors(List<IMetricCollector> collectors)

Legt die Liste der IMetricCollector fest, die für den Testlauf definiert sind.

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

Legen Sie den Wert von „mPrimaryAbiRun“ fest.

void setShouldMakeDynamicModule(boolean dynamicModule)

Beim verteilten Sharding darf es keine ModuleDefinition geben, die Tests in einem Pool gemeinsam nutzt. Andernfalls funktioniert das Intra-Module-Sharding nicht. Daher kann es deaktiviert werden.

void setSkipContext(SkipContext skipContext)
void setSystemStatusChecker(List<ISystemStatusChecker> systemCheckers)

Legt die ISystemStatusChecker aus der Konfiguration für den Test fest.

void setTestLogger(ITestLogger testLogger)

Fügt die ITestLogger-Instanz ein.

Collection<IRemoteTest> split(Integer shardCountHint, TestInformation testInfo)

Alternative Version von split(int), die auch TestInformation enthält, die erste Informationen vom übergeordneten Element enthält, das die Shards erstellt.

Geschützte Methoden

List<ITestInvocationListener> createModuleListeners()

Gibt die Liste der ITestInvocationListener zurück, die für die Ebene ModuleListener gelten.

boolean filterByRunnerType(IConfiguration config, Set<String> allowedRunners)

Wenden Sie die Filterung der Runner-Zulassungsliste an und entfernen Sie alle Runner, die nicht auf der Zulassungsliste stehen.

Set<String> getAbisForBuildTargetArch()

Gibt die von der Host-Build-Zielarchitektur unterstützten ABIs zurück.

Set<String> getHostAbis()

Gibt die ABIs des Hostcomputers zurück.

void setPrioritizeHostConfig(boolean prioritizeHostConfig)

Legen Sie die Option „prioritize-host-config“ fest.

boolean shouldModuleRun(ModuleDefinition module)

Konstanten

ABI_OPTION

public static final String ABI_OPTION

Konstanter Wert: "abi"

ACTIVE_MAINLINE_PARAMETER_KEY

public static final String ACTIVE_MAINLINE_PARAMETER_KEY

Konstanter Wert: "active-mainline-parameter"

BUILD_ATTRIBUTE_FLAG_OVERRIDES_KEY

public static final String BUILD_ATTRIBUTE_FLAG_OVERRIDES_KEY

Konstanter Wert: "flag-overrides"

public static final String ENABLE_RESOLVE_SYM_LINKS

Konstanter Wert: "enable-resolve-sym-links"

MAINLINE_PARAMETER_KEY

public static final String MAINLINE_PARAMETER_KEY

Constant Value: "mainline-param"

MODULE_CHECKER_POST

public static final String MODULE_CHECKER_POST

Konstanter Wert: "PostModuleChecker"

MODULE_CHECKER_PRE

public static final String MODULE_CHECKER_PRE

Konstanter Wert: "PreModuleChecker"

MODULE_END_TIME

public static final String MODULE_END_TIME

Konstanter Wert: "MODULE_END_TIME"

MODULE_METADATA_EXCLUDE_FILTER

public static final String MODULE_METADATA_EXCLUDE_FILTER

Konstanter Wert: "module-metadata-exclude-filter"

MODULE_METADATA_INCLUDE_FILTER

public static final String MODULE_METADATA_INCLUDE_FILTER

Konstanter Wert: "module-metadata-include-filter"

MODULE_START_TIME

public static final String MODULE_START_TIME

Constant Value: "MODULE_START_TIME"

PARAMETER_KEY

public static final String PARAMETER_KEY

Konstanter Wert: "parameter"

PREPARER_WHITELIST

public static final String PREPARER_WHITELIST

Konstanter Wert: "preparer-whitelist"

PRIMARY_ABI_RUN

public static final String PRIMARY_ABI_RUN

Konstanter Wert: „primary-abi-only“

RANDOM_SEED

public static final String RANDOM_SEED

Konstanter Wert: "random-seed"

RUNNER_WHITELIST

public static final String RUNNER_WHITELIST

Konstanter Wert: "runner-whitelist"

SKIP_HOST_ARCH_CHECK

public static final String SKIP_HOST_ARCH_CHECK

Konstanter Wert: "skip-host-arch-check"

SKIP_STAGING_ARTIFACTS

public static final String SKIP_STAGING_ARTIFACTS

Konstanter Wert: "skip-staging-artifacts"

SKIP_SYSTEM_STATUS_CHECKER

public static final String SKIP_SYSTEM_STATUS_CHECKER

Konstanter Wert: "skip-system-status-check"

STAGE_MODULE_ARTIFACTS

public static final String STAGE_MODULE_ARTIFACTS

Konstanter Wert: "stage-module-artifacts"

TEST_TYPE_KEY

public static final String TEST_TYPE_KEY

Konstanter Wert: "test-type"

TEST_TYPE_VALUE_PERFORMANCE

public static final String TEST_TYPE_VALUE_PERFORMANCE

Konstanter Wert: "performance"

TOKEN_KEY

public static final String TOKEN_KEY

Konstanter Wert: "token"

Felder

protected boolean mEnableResolveSymlinks

mRecoverDeviceByCvd

protected boolean mRecoverDeviceByCvd

Öffentliche Konstruktoren

ITestSuite

public ITestSuite ()

Öffentliche Methoden

addModuleMetadataExcludeFilters

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

Parameter
filters MultiMap

addModuleMetadataIncludeFilters

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

Parameter
filters MultiMap

cleanUpSuiteSetup

public void cleanUpSuiteSetup ()

Möglichkeit, alle Elemente zu entfernen, die während der Einrichtung der Test-Suites erforderlich waren, aber nicht zum Ausführen der Tests benötigt werden.

filterByConfigMetadata

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

Wenden Sie den Metadatenfilter auf die Konfiguration an und prüfen Sie, ob die Konfiguration ausgeführt werden soll.

Parameter
config IConfiguration: Die zu bewertende IConfiguration.

include MultiMap: der Metadaten-Einbeziehungsfilter

exclude MultiMap: der Metadatenausschlussfilter

Gibt Folgendes zurück:
boolean „True“, wenn das Modul ausgeführt werden soll, andernfalls „false“.

getAbis

public Set<IAbi> getAbis (ITestDevice device)

Ruft die Gruppe von ABIs ab, die sowohl vom Kompatibilitätstest AbiUtils.getAbisSupportedByCompatibility() als auch vom zu testenden Gerät unterstützt werden.

Parameter
device ITestDevice

Gibt Folgendes zurück:
Set<IAbi> Die Menge der ABIs, für die die Tests ausgeführt werden sollen

Löst aus
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

getAbisForBuildTargetArchFromSuite

public static Set<String> getAbisForBuildTargetArchFromSuite ()

Gibt die möglichen ABIs aus TestSuiteInfo zurück.

Gibt Folgendes zurück:
Set<String>

getBuildInfo

public IBuildInfo getBuildInfo ()

Für die Implementierung von ITestSuite müssen möglicherweise die Build-Informationen geladen werden, um die Tests auszuführen.

Gibt Folgendes zurück:
IBuildInfo

getConfiguration

public final IConfiguration getConfiguration ()

Gibt den Aufruf IConfiguration zurück.

Gibt Folgendes zurück:
IConfiguration

getCurrentTestLogger

public ITestLogger getCurrentTestLogger ()

Gibt Folgendes zurück:
ITestLogger

getDevice

public ITestDevice getDevice ()

Besorgen Sie sich das zu testende Gerät.

Gibt Folgendes zurück:
ITestDevice die ITestDevice

getDirectModule

public ModuleDefinition getDirectModule ()

Gibt die ModuleDefinition zurück, die direkt ausgeführt werden soll, oder „null“, wenn noch keine vorhanden ist (wenn die ITestSuite noch nicht aufgeteilt wurde).

Gibt Folgendes zurück:
ModuleDefinition

getIntraModuleSharding

public boolean getIntraModuleSharding ()

Gibt Folgendes zurück:
boolean

getInvocationContext

public IInvocationContext getInvocationContext ()

Gibt den Aufrufkontext zurück.

Gibt Folgendes zurück:
IInvocationContext

getModuleMetadataIncludeFilters

public MultiMap<String, String> getModuleMetadataIncludeFilters ()

Gibt Folgendes zurück:
MultiMap<String, String>

getMultiDeviceStrategy

public ITestSuite.MultiDeviceModuleStrategy getMultiDeviceStrategy ()

Gibt Folgendes zurück:
ITestSuite.MultiDeviceModuleStrategy

getRequestedAbi

public final String getRequestedAbi ()

Gibt das mit der Option „-a“ oder „--abi“ angeforderte ABI zurück.

Gibt Folgendes zurück:
String

getRequiredTokens

public Set<TokenProperty> getRequiredTokens (TestInformation testInfo)

Gibt die Liste der für den Test erforderlichen Tokens zurück. Gibt „null“ zurück, wenn keine Token unterstützt werden.

Parameter
testInfo TestInformation

Gibt Folgendes zurück:
Set<TokenProperty>

getRuntimeHint

public long getRuntimeHint ()

Gibt die erwartete Laufzeit des Tests in Millisekunden zurück. Die Zeit wird verwendet, um die Ausführung von Shards auszugleichen.

Gibt Folgendes zurück:
long

getTestsDir

public File getTestsDir ()

Gibt Folgendes zurück:
File

Löst aus
FileNotFoundException

isRemoveModuleBuffering

public boolean isRemoveModuleBuffering ()

Gibt Folgendes zurück:
boolean

isSplitting

public boolean isSplitting ()

Gibt „true“ zurück, wenn wir uns gerade in IShardableTest.split(int) befinden.

Gibt Folgendes zurück:
boolean

loadTests

public abstract LinkedHashMap<String, IConfiguration> loadTests ()

Abstrakte Methode zum Laden der Konfiguration der auszuführenden Tests. Jeder Test wird durch ein IConfiguration und einen eindeutigen Namen definiert, unter dem Ergebnisse gemeldet werden.

Gibt Folgendes zurück:
LinkedHashMap<String, IConfiguration>

reportNotExecuted

public void reportNotExecuted (ITestInvocationListener listener, 
                String message)

Melden Sie die nicht ausgeführten Tests an den bereitgestellten Haupt-Listener. Sie sollten mit der Meldung NOT_EXECUTED_FAILURE als fehlgeschlagen gemeldet werden.

Parameter
listener ITestInvocationListener: Der Haupt-Listener, an den die nicht ausgeführten Ergebnisse gemeldet werden sollen.

message String: Die Meldung, die dem nicht ausgeführten Fehler zugeordnet werden soll.

reportNotExecuted

public void reportNotExecuted (ITestInvocationListener listener)

Melden Sie die nicht ausgeführten Tests an den bereitgestellten Haupt-Listener. Sie sollten mit der Meldung NOT_EXECUTED_FAILURE als fehlgeschlagen gemeldet werden.

Parameter
listener ITestInvocationListener: Der Haupt-Listener, an den die nicht ausgeführten Ergebnisse gemeldet werden sollen.

run

public final void run (TestInformation testInfo, 
                ITestInvocationListener listener)

Generische Ausführungsmethode für alle Tests, die aus loadTests() geladen werden.

Parameter
testInfo TestInformation: Das TestInformation-Objekt mit nützlichen Informationen zum Ausführen von Tests.

listener ITestInvocationListener: die ITestInvocationListener der Testergebnisse

Löst aus
DeviceNotAvailableException

setAbiName

public void setAbiName (String abiName)

Legen Sie den Wert von mAbiName fest.

Parameter
abiName String

setAbis

public final void setAbis (Set<IAbi> abis)

Parameter
abis Set

setBuild

public void setBuild (IBuildInfo buildInfo)

Parameter
buildInfo IBuildInfo

setCollectTestsOnly

public void setCollectTestsOnly (boolean shouldCollectTest)

Führen Sie die Testsuite nur im Collectormodus aus. Dazu müssen alle untergeordneten Tests diese Schnittstelle ebenfalls implementieren.

setConfiguration

public void setConfiguration (IConfiguration configuration)

Fügt die verwendete IConfiguration ein.

Parameter
configuration IConfiguration

setDevice

public void setDevice (ITestDevice device)

Schleusen Sie das zu testende Gerät ein.

Parameter
device ITestDevice: die zu verwendende ITestDevice

setDirectModule

public void setDirectModule (ModuleDefinition module)

Parameter
module ModuleDefinition

setInLocalRetry

public void setInLocalRetry (boolean inLocalRetry)

Parameter
inLocalRetry boolean

setIntraModuleSharding

public void setIntraModuleSharding (boolean intraModuleSharding)

Parameter
intraModuleSharding boolean

setInvocationContext

public void setInvocationContext (IInvocationContext invocationContext)

Parameter
invocationContext IInvocationContext

setMetricCollectors

public void setMetricCollectors (List<IMetricCollector> collectors)

Legt die Liste der IMetricCollector fest, die für den Testlauf definiert sind.

Parameter
collectors List

setMultiDeviceStrategy

public void setMultiDeviceStrategy (ITestSuite.MultiDeviceModuleStrategy strategy)

Parameter
strategy ITestSuite.MultiDeviceModuleStrategy

setPrimaryAbiRun

public void setPrimaryAbiRun (boolean primaryAbiRun)

Legen Sie den Wert von „mPrimaryAbiRun“ fest.

Parameter
primaryAbiRun boolean

setShouldMakeDynamicModule

public void setShouldMakeDynamicModule (boolean dynamicModule)

Beim verteilten Sharding darf es keine ModuleDefinition geben, die Tests in einem Pool gemeinsam nutzt. Andernfalls funktioniert das Intra-Module-Sharding nicht. Daher kann es deaktiviert werden.

Parameter
dynamicModule boolean

setSkipContext

public void setSkipContext (SkipContext skipContext)

Parameter
skipContext SkipContext

setSystemStatusChecker

public void setSystemStatusChecker (List<ISystemStatusChecker> systemCheckers)

Legt die ISystemStatusChecker aus der Konfiguration für den Test fest.

Parameter
systemCheckers List

setTestLogger

public void setTestLogger (ITestLogger testLogger)

Fügt die ITestLogger-Instanz ein.

Parameter
testLogger ITestLogger

teilen

public Collection<IRemoteTest> split (Integer shardCountHint, 
                TestInformation testInfo)

Alternative Version von split(int), die auch TestInformation enthält, die erste Informationen vom übergeordneten Element enthält, das die Shards erstellt. Das ist nützlich, wenn während des Shardings auf Geräte- oder Build-Informationen zugegriffen werden muss.

Parameter
shardCountHint Integer: Die Anzahl der versuchten Shards.

testInfo TestInformation: Der übergeordnete TestInformation

Gibt Folgendes zurück:
Collection<IRemoteTest> eine Sammlung von Untertests, die separat ausgeführt werden sollen, oder null, wenn der Test derzeit nicht aufgeteilt werden kann.

Geschützte Methoden

createModuleListeners

protected List<ITestInvocationListener> createModuleListeners ()

Gibt die Liste der ITestInvocationListener zurück, die für die Ebene ModuleListener gelten. Diese Listener werden für jedes Modul wiederverwendet und nicht neu instanziiert. Sie sollten daher keinen internen Status annehmen.

Gibt Folgendes zurück:
List<ITestInvocationListener>

filterByRunnerType

protected boolean filterByRunnerType (IConfiguration config, 
                Set<String> allowedRunners)

Wenden Sie die Filterung der Runner-Zulassungsliste an und entfernen Sie alle Runner, die nicht auf der Zulassungsliste stehen. Wenn eine Konfiguration mehrere Runner hat, werden möglicherweise einige entfernt, die Konfiguration wird aber trotzdem ausgeführt.

Parameter
config IConfiguration: Die zu bewertende IConfiguration.

allowedRunners Set: Die aktuelle Runner-Whitelist.

Gibt Folgendes zurück:
boolean „True“, wenn das Konfigurationsmodul ausgeführt werden darf, andernfalls „false“.

getAbisForBuildTargetArch

protected Set<String> getAbisForBuildTargetArch ()

Gibt die von der Host-Build-Zielarchitektur unterstützten ABIs zurück. Für Tests verfügbar gemacht.

Gibt Folgendes zurück:
Set<String>

getHostAbis

protected Set<String> getHostAbis ()

Gibt die ABIs des Hostcomputers zurück.

Gibt Folgendes zurück:
Set<String>

setPrioritizeHostConfig

protected void setPrioritizeHostConfig (boolean prioritizeHostConfig)

Legen Sie die Option „prioritize-host-config“ fest.

Parameter
prioritizeHostConfig boolean: „true“, um die Hostkonfiguration zu priorisieren, d.h., den Hosttest nach Möglichkeit auszuführen.

shouldModuleRun

protected boolean shouldModuleRun (ModuleDefinition module)

Parameter
module ModuleDefinition

Gibt zurück
boolean