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


Abstrakte Klasse, die zum Ausführen der Test-Suite verwendet wird. Diese Klasse bildet die Grundlage für die Ausführung der Suite. Bei jeder Implementierung kann die Liste der Tests über die Methode loadTests() definiert werden.

Zusammenfassung

Fields

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

Öffentliche Konstruktoren

ITestSuite()

Öffentliche Methoden

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

Möglichkeit, alle Dinge zu bereinigen, die während der Einrichtung der Suiten benötigt wurden, aber nicht zum Ausführen der Tests erforderlich sind.

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.

getAbis(ITestDevice device)

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

static getAbisForBuildTargetArchFromSuite()

Gibt das mögliche Abis aus den TestSuiteInfo zurück.

IBuildInfo getBuildInfo()

Bei der Implementierung von ITestSuite sind möglicherweise die Build-Informationen erforderlich, um die Tests zu laden.

final IConfiguration getConfiguration()

Gibt den Aufruf IConfiguration zurück.

ITestLogger getCurrentTestLogger()
ITestDevice getDevice()

Holen Sie sich das zu testende Gerät.

ModuleDefinition getDirectModule()

Gibt das direkt auszuführende ModuleDefinition-Objekt oder null zurück, wenn noch keines vorhanden ist (wenn die ITestSuite noch nicht fragmentiert 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.

getRequiredTokens(TestInformation testInfo)

Gibt die Liste der vom Test erforderlichen Tokens zurück.

long getRuntimeHint()

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

File getTestsDir()
boolean isSplitting()

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

abstract loadTests()

Abstrakte Methode zum Laden der auszuführenden Testkonfiguration.

void reportNotExecuted(ITestInvocationListener listener, String message)

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

void reportNotExecuted(ITestInvocationListener listener)

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

final void run(TestInformation testInfo, ITestInvocationListener listener)

Generische Ausführungsmethode für alle von loadTests() geladenen Tests.

void setAbiName(String abiName)

Wert von mAbiName festlegen

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

void setCollectTestsOnly(boolean shouldCollectTest)

Führen Sie die Testsuite im Collector-Only-Modus aus. Dazu sind auch alle Teiltests erforderlich, um diese Schnittstelle zu implementieren.

void setConfiguration(IConfiguration configuration)

Injiziertes IConfiguration in Gebrauch.

void setDevice(ITestDevice device)

Injizieren Sie das zu testende Gerät.

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

void setMetricCollectors( collectors)

Legt die Liste der für den Testlauf definierten IMetricCollector fest.

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

Wert von mPrimaryAbiRun festlegen

void setShouldMakeDynamicModule(boolean dynamicModule)

Beim verteilten Fragmentierung kann keine ModuleDefinition vorhanden sein, die Tests in einem Pool teilt. Andernfalls funktioniert das Sharding innerhalb des Moduls nicht. Daher kann es deaktiviert werden.

void setSystemStatusChecker( systemCheckers)

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

void setTestLogger(ITestLogger testLogger)

ITestLogger-Instanz einschleusen

split(Integer shardCountHint, TestInformation testInfo)

Alternative Version von split(int), die auch einen TestInformation bereitstellt, der frühe Informationen von dem übergeordneten Element enthält, das die Shards erstellt.

Geschützte Methoden

createModuleListeners()

Gibt die Liste der ITestInvocationListener zurück, die auf die Ebene ModuleListener anwendbar sind.

boolean filterByRunnerType(IConfiguration config, allowedRunners)

Wenden Sie den Filter für die weiße Liste für Läufer an und entfernen Sie alle Läufer, die nicht auf der weißen Liste stehen.

getAbisForBuildTargetArch()

Gibt das Abis zurück, das von der Zielarchitektur des Host-Builds unterstützt wird.

getHostAbis()

Gibt den Hostcomputer zurück.

boolean shouldModuleRun(ModuleDefinition module)

Fields

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_WHITELISTE

public static final String PREPARER_WHITELIST

PRIMARY_ABI_RUN (PRIMÄR_ABI_RUN)

public static final String PRIMARY_ABI_RUN

ZUFALLSZAHL_SEED

public static final String RANDOM_SEED

RUNNER_WHITELISTE

public static final String RUNNER_WHITELIST

ÜBERSPRINGEN_HOST_ARCH_CHECK

public static final String SKIP_HOST_ARCH_CHECK

ARTIFACTS_ÜBERSPRINGEN

public static final String SKIP_STAGING_ARTIFACTS

ÜBERSPRINGEN_SYSTEM_STATUS_PRÜFUNG

public static final String SKIP_SYSTEM_STATUS_CHECKER

STAGE_MODULE_ARTIFACTS

public static final String STAGE_MODULE_ARTIFACTS

TEST_TYP_SCHLÜSSEL

public static final String TEST_TYPE_KEY

TEST_TYPE_WERT_LEISTUNG

public static final String TEST_TYPE_VALUE_PERFORMANCE

TOKEN_SCHLÜSSEL

public static final String TOKEN_KEY

protected boolean mEnableResolveSymlinks

mRecoveryDeviceByCvd (Gerät wiederherstellen)

protected boolean mRecoverDeviceByCvd

Öffentliche Konstruktoren

ITestSuite

public ITestSuite ()

Öffentliche Methoden

addModuleMetadataAusschließenFilters

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

Parameter
filters MultiMap

addModuleMetadataIncludeFilters

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

Parameter
filters MultiMap

cleanUpSuite-Einrichtung

public void cleanUpSuiteSetup ()

Möglichkeit, alle Dinge zu bereinigen, die während der Einrichtung der Suiten benötigt wurden, aber nicht zum Ausführen der Tests erforderlich sind.

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 IConfiguration, die ausgewertet werden.

include MultiMap: der Filter „Metadaten-Einschließen“

exclude MultiMap: der Filter zum Ausschließen von Metadaten

Returns
boolean Der Wert ist "True", wenn das Modul ausgeführt werden soll, andernfalls "False".

getAbis

public  getAbis (ITestDevice device)

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

Parameter
device ITestDevice

Returns
Die Gruppe der ABIs, auf denen die Tests ausgeführt werden sollen

Ausgabe
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

getAbisForBuildTargetArchFromSuite

public static  getAbisForBuildTargetArchFromSuite ()

Gibt das mögliche Abis aus den TestSuiteInfo zurück.

Returns

getBuildInfo

public IBuildInfo getBuildInfo ()

Bei der Implementierung von ITestSuite sind möglicherweise die Build-Informationen erforderlich, um die Tests zu laden.

Returns
IBuildInfo

getConfiguration

public final IConfiguration getConfiguration ()

Gibt den Aufruf IConfiguration zurück.

Returns
IConfiguration

getCurrentTestProtokollierung

public ITestLogger getCurrentTestLogger ()

Returns
ITestLogger

getDevice

public ITestDevice getDevice ()

Holen Sie sich das zu testende Gerät.

Returns
ITestDevice ITestDevice

getDirectModule

public ModuleDefinition getDirectModule ()

Gibt das direkt auszuführende ModuleDefinition-Objekt oder null zurück, wenn noch keines vorhanden ist (wenn die ITestSuite noch nicht fragmentiert wurde).

Returns
ModuleDefinition

getIntraModuleSharding

public boolean getIntraModuleSharding ()

Returns
boolean

getInvocationContext

public IInvocationContext getInvocationContext ()

Gibt den Aufrufkontext zurück.

Returns
IInvocationContext

getModuleMetadataIncludeFilters

public MultiMap<String, String> getModuleMetadataIncludeFilters ()

Returns
MultiMap<String, String>

getMultiDeviceStrategy

public ITestSuite.MultiDeviceModuleStrategy getMultiDeviceStrategy ()

Returns
ITestSuite.MultiDeviceModuleStrategy

getRequestedAbi

public final String getRequestedAbi ()

Gibt das mit der Option -a oder --abi angeforderte Abi zurück.

Returns
String

getRequiredTokens

public  getRequiredTokens (TestInformation testInfo)

Gibt die Liste der vom Test erforderlichen Tokens zurück. Gibt null zurück, wenn keine Tokenunterstützung vorhanden ist.

Parameter
testInfo TestInformation

Returns

getRuntimeHint

public long getRuntimeHint ()

Gibt die erwartete Laufzeit des Tests in Millisekunden zurück. Die Zeit wird für das Load-Balancing der fragmentierten Ausführung verwendet

Returns
long

getTestsDir

public File getTestsDir ()

Returns
File

IsSplitting

public boolean isSplitting ()

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

Returns
boolean

LoadTests

public abstract  loadTests ()

Abstrakte Methode zum Laden der auszuführenden Testkonfiguration. Jeder Test wird durch eine IConfiguration und einen eindeutigen Namen definiert, unter dem Ergebnisse zurückgegeben werden.

Returns

reportNotExecuted

public void reportNotExecuted (ITestInvocationListener listener, 
                String message)

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

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

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

reportNotExecuted

public void reportNotExecuted (ITestInvocationListener listener)

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

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

Homerun

public final void run (TestInformation testInfo, 
                ITestInvocationListener listener)

Generische Ausführungsmethode für alle von loadTests() geladenen Tests.

Parameter
testInfo TestInformation: Das TestInformation-Objekt, das nützliche Informationen zum Ausführen von Tests enthält.

listener ITestInvocationListener: die ITestInvocationListener der Testergebnisse

Ausgabe
DeviceNotAvailableException

SetAbiName

public void setAbiName (String abiName)

Wert von mAbiName festlegen

Parameter
abiName String

SetAbis

public final void setAbis ( abis)

Parameter
abis

SetBuild

public void setBuild (IBuildInfo buildInfo)

Parameter
buildInfo IBuildInfo

setCollectTestsOnly

public void setCollectTestsOnly (boolean shouldCollectTest)

Führen Sie die Testsuite im Collector-Only-Modus aus. Dazu sind auch alle Teiltests erforderlich, um diese Schnittstelle zu implementieren.

setConfiguration

public void setConfiguration (IConfiguration configuration)

Injiziertes IConfiguration in Gebrauch.

Parameter
configuration IConfiguration

Gerät festlegen

public void setDevice (ITestDevice device)

Injizieren Sie das zu testende Gerät.

Parameter
device ITestDevice: die zu verwendende ITestDevice

setDirectModule

public void setDirectModule (ModuleDefinition module)

Parameter
module ModuleDefinition

setIntraModuleSharding

public void setIntraModuleSharding (boolean intraModuleSharding)

Parameter
intraModuleSharding boolean

setInvocationContext

public void setInvocationContext (IInvocationContext invocationContext)

Parameter
invocationContext IInvocationContext

setMetricCollectors

public void setMetricCollectors ( collectors)

Legt die Liste der für den Testlauf definierten IMetricCollector fest.

Parameter
collectors

SetMultiDeviceStrategy

public void setMultiDeviceStrategy (ITestSuite.MultiDeviceModuleStrategy strategy)

Parameter
strategy ITestSuite.MultiDeviceModuleStrategy

setPrimaryAbiRun

public void setPrimaryAbiRun (boolean primaryAbiRun)

Wert von mPrimaryAbiRun festlegen

Parameter
primaryAbiRun boolean

setSollteMakeDynamicModule

public void setShouldMakeDynamicModule (boolean dynamicModule)

Beim verteilten Fragmentierung kann keine ModuleDefinition vorhanden sein, die Tests in einem Pool teilt. Andernfalls funktioniert das Sharding innerhalb des Moduls nicht. Daher kann es deaktiviert werden.

Parameter
dynamicModule boolean

setSystemStatusChecker

public void setSystemStatusChecker ( systemCheckers)

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

Parameter
systemCheckers

setTestProtokollierung

public void setTestLogger (ITestLogger testLogger)

ITestLogger-Instanz einschleusen

Parameter
testLogger ITestLogger

Aufteilen

public  split (Integer shardCountHint, 
                TestInformation testInfo)

Alternative Version von split(int), die auch einen TestInformation bereitstellt, der frühe Informationen von dem übergeordneten Element enthält, das die Shards erstellt. Das ist nützlich, wenn während der Fragmentierung auf Geräte- oder Build-Informationen zugegriffen werden muss.

Parameter
shardCountHint Integer: Anzahl der versuchten Shards.

testInfo TestInformation: Das übergeordnete Element TestInformation

Returns
Eine Sammlung von Subtests, die separat ausgeführt werden müssen, oder null, wenn der Test derzeit nicht fragmentierbar ist

Geschützte Methoden

createModuleListeners

protected  createModuleListeners ()

Gibt die Liste der ITestInvocationListener zurück, die auf die Ebene ModuleListener anwendbar sind. Diese Listener werden für jedes Modul wiederverwendet und nicht reinstanziiert, sodass sie keinen internen Status annehmen sollten.

Returns

FilterNachAusführertyp

protected boolean filterByRunnerType (IConfiguration config, 
                 allowedRunners)

Wenden Sie den Filter für die weiße Liste für Läufer an und entfernen Sie alle Läufer, die nicht auf der weißen Liste stehen. Wenn eine Konfiguration mehrere Runner hat, werden möglicherweise einige entfernt. Die Konfiguration wird dann weiter ausgeführt.

Parameter
config IConfiguration: Die IConfiguration, die ausgewertet werden.

allowedRunners : Die aktuelle Zulassungsliste für Läufer.

Returns
boolean Der Wert ist "True", wenn das Konfigurationsmodul ausgeführt werden darf, andernfalls "False".

getAbisForBuildTargetArch

protected  getAbisForBuildTargetArch ()

Gibt das Abis zurück, das von der Zielarchitektur des Host-Builds unterstützt wird. Wird zu Testzwecken zur Verfügung gestellt.

Returns

getHostAbis

protected  getHostAbis ()

Gibt den Hostcomputer zurück.

Returns

shouldModuleRun

protected boolean shouldModuleRun (ModuleDefinition module)

Parameter
module ModuleDefinition

Returns
boolean