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


Clase abstracta que se usa para ejecutar el conjunto de pruebas. Esta clase proporciona la base de cómo se ejecutará el paquete. Cada implementación puede definir la lista de pruebas a través del método loadTests().

Resumen

Constantes

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

Campos

protected boolean mEnableResolveSymlinks

protected boolean mRecoverDeviceByCvd

Constructores públicos

ITestSuite()

Métodos públicos

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

Es una oportunidad para limpiar todo lo que se necesitó durante la configuración de los paquetes, pero que no es necesario para ejecutar las pruebas.

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

Aplica el filtro de metadatos a la configuración y comprueba si se debe ejecutar.

getAbis(ITestDevice device)

Obtiene el conjunto de ABIs compatibles con las pruebas de compatibilidad AbiUtils.getAbisSupportedByCompatibility() y el dispositivo en prueba.

static getAbisForBuildTargetArchFromSuite()

Devuelve los ABIs posibles de TestSuiteInfo.

IBuildInfo getBuildInfo()

La implementación de ITestSuite puede requerir que la información de compilación cargue las pruebas.

final IConfiguration getConfiguration()

Devuelve la invocación IConfiguration.

ITestLogger getCurrentTestLogger()
ITestDevice getDevice()

Obtén el dispositivo que se probará.

ModuleDefinition getDirectModule()

Devuelve el ModuleDefinition que se ejecutará directamente o null si aún no hay ninguno (cuando aún no se fragmentó ITestSuite).

boolean getIntraModuleSharding()
IInvocationContext getInvocationContext()

Devuelve el contexto de invocación.

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

Devuelve la ABI solicitada con la opción -a o --abi.

getRequiredTokens(TestInformation testInfo)

Devuelve la lista de tokens requeridos por la prueba.

long getRuntimeHint()

Devuelve el tiempo de ejecución esperado de la prueba en milisegundos.

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

Devuelve verdadero si actualmente estamos en IShardableTest.split(int).

abstract loadTests()

Método abstracto para cargar la configuración de las pruebas que se ejecutarán.

void reportNotExecuted(ITestInvocationListener listener, String message)

Informa las pruebas no ejecutadas al objeto de escucha principal proporcionado.

void reportNotExecuted(ITestInvocationListener listener)

Informa las pruebas no ejecutadas al objeto de escucha principal proporcionado.

final void run(TestInformation testInfo, ITestInvocationListener listener)

Método de ejecución genérico para todas las pruebas cargadas desde loadTests().

void setAbiName(String abiName)

Establece el valor de mAbiName

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

void setCollectTestsOnly(boolean shouldCollectTest)

Ejecuta el conjunto de pruebas solo en modo de recopilador. Esto requiere que todas las pruebas secundarias también implementen esta interfaz.

void setConfiguration(IConfiguration configuration)

Inserta el IConfiguration en uso.

void setDevice(ITestDevice device)

Inserta el dispositivo en prueba.

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

void setMetricCollectors( collectors)

Establece la lista de IMetricCollector definidos para la ejecución de la prueba.

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

Cómo establecer el valor de mPrimaryAbiRun

void setShouldMakeDynamicModule(boolean dynamicModule)

Cuando se realiza el sharding distribuido, no podemos tener ModuleDefinition que comparta pruebas en un grupo, ya que, de lo contrario, el sharding dentro del módulo no funcionará, por lo que permitimos inhabilitarlo.

void setSkipContext(SkipContext skipContext)
void setSystemStatusChecker( systemCheckers)

Establece los ISystemStatusCheckers de la configuración para la prueba.

void setTestLogger(ITestLogger testLogger)

Inyecta la instancia de ITestLogger.

split(Integer shardCountHint, TestInformation testInfo)

Versión alternativa de split(int) que también proporciona un TestInformation que contiene información inicial del elemento superior que crea los fragmentos.

Métodos protegidos

createModuleListeners()

Devuelve la lista de ITestInvocationListener aplicables al nivel de ModuleListener.

boolean filterByRunnerType(IConfiguration config, allowedRunners)

Aplica el filtro de lista blanca de ejecutores y quita cualquier ejecutor que no esté en la lista blanca.

getAbisForBuildTargetArch()

Devuelve los ABIs compatibles con la arquitectura de destino de la compilación del host.

getHostAbis()

Devuelve los ABIs de la máquina host.

void setPrioritizeHostConfig(boolean prioritizeHostConfig)

Establece la opción prioritize-host-config.

boolean shouldModuleRun(ModuleDefinition module)

Constantes

ABI_OPTION

public static final String ABI_OPTION

Valor de la constante: "abi"

ACTIVE_MAINLINE_PARAMETER_KEY

public static final String ACTIVE_MAINLINE_PARAMETER_KEY

Valor de la constante: "active-mainline-parameter"

BUILD_ATTRIBUTE_FLAG_OVERRIDES_KEY

public static final String BUILD_ATTRIBUTE_FLAG_OVERRIDES_KEY

Valor de la constante: "flag-overrides"

public static final String ENABLE_RESOLVE_SYM_LINKS

Valor de la constante: "enable-resolve-sym-links"

MAINLINE_PARAMETER_KEY

public static final String MAINLINE_PARAMETER_KEY

Valor de la constante: "mainline-param"

MODULE_CHECKER_POST

public static final String MODULE_CHECKER_POST

Valor de la constante: "PostModuleChecker"

MODULE_CHECKER_PRE

public static final String MODULE_CHECKER_PRE

Valor de la constante: "PreModuleChecker"

MODULE_END_TIME

public static final String MODULE_END_TIME

Valor de la constante: "MODULE_END_TIME"

MODULE_METADATA_EXCLUDE_FILTER

public static final String MODULE_METADATA_EXCLUDE_FILTER

Valor de la constante: "module-metadata-exclude-filter"

MODULE_METADATA_INCLUDE_FILTER

public static final String MODULE_METADATA_INCLUDE_FILTER

Valor de la constante: "module-metadata-include-filter"

MODULE_START_TIME

public static final String MODULE_START_TIME

Valor de la constante: "MODULE_START_TIME"

PARAMETER_KEY

public static final String PARAMETER_KEY

Valor de la constante: "parameter"

PREPARER_WHITELIST

public static final String PREPARER_WHITELIST

Valor de la constante: "preparer-whitelist"

PRIMARY_ABI_RUN

public static final String PRIMARY_ABI_RUN

Valor de la constante: "primary-abi-only"

RANDOM_SEED

public static final String RANDOM_SEED

Valor de la constante: "random-seed"

RUNNER_WHITELIST

public static final String RUNNER_WHITELIST

Valor de la constante: "runner-whitelist"

SKIP_HOST_ARCH_CHECK

public static final String SKIP_HOST_ARCH_CHECK

Valor de la constante: "skip-host-arch-check"

SKIP_STAGING_ARTIFACTS

public static final String SKIP_STAGING_ARTIFACTS

Valor de la constante: "skip-staging-artifacts"

SKIP_SYSTEM_STATUS_CHECKER

public static final String SKIP_SYSTEM_STATUS_CHECKER

Valor de la constante: "skip-system-status-check"

STAGE_MODULE_ARTIFACTS

public static final String STAGE_MODULE_ARTIFACTS

Valor de la constante: "stage-module-artifacts"

TEST_TYPE_KEY

public static final String TEST_TYPE_KEY

Valor de la constante: "test-type"

TEST_TYPE_VALUE_PERFORMANCE

public static final String TEST_TYPE_VALUE_PERFORMANCE

Valor de la constante: "performance"

TOKEN_KEY

public static final String TOKEN_KEY

Valor de la constante: "token"

Campos

protected boolean mEnableResolveSymlinks

mRecoverDeviceByCvd

protected boolean mRecoverDeviceByCvd

Constructores públicos

ITestSuite

public ITestSuite ()

Métodos públicos

addModuleMetadataExcludeFilters

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

Parámetros
filters MultiMap

addModuleMetadataIncludeFilters

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

Parámetros
filters MultiMap

cleanUpSuiteSetup

public void cleanUpSuiteSetup ()

Es una oportunidad para limpiar todo lo que se necesitó durante la configuración de los paquetes, pero que no es necesario para ejecutar las pruebas.

filterByConfigMetadata

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

Aplica el filtro de metadatos a la configuración y comprueba si se debe ejecutar.

Parámetros
config IConfiguration: Es el IConfiguration que se evalúa.

include MultiMap: Es el filtro de inclusión de metadatos.

exclude MultiMap: Es el filtro de exclusión de metadatos.

Muestra
boolean Es verdadero si el módulo debe ejecutarse y falso en caso contrario.

getAbis

public  getAbis (ITestDevice device)

Obtiene el conjunto de ABIs compatibles con las pruebas de compatibilidad AbiUtils.getAbisSupportedByCompatibility() y el dispositivo en prueba.

Parámetros
device ITestDevice

Muestra
Conjunto de ABIs en los que se ejecutarán las pruebas

Arroja
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

getAbisForBuildTargetArchFromSuite

public static  getAbisForBuildTargetArchFromSuite ()

Devuelve los ABIs posibles de TestSuiteInfo.

Muestra

getBuildInfo

public IBuildInfo getBuildInfo ()

La implementación de ITestSuite puede requerir que la información de compilación cargue las pruebas.

Muestra
IBuildInfo

getConfiguration

public final IConfiguration getConfiguration ()

Devuelve la invocación IConfiguration.

Muestra
IConfiguration

getCurrentTestLogger

public ITestLogger getCurrentTestLogger ()

Muestra
ITestLogger

getDevice

public ITestDevice getDevice ()

Obtén el dispositivo que se probará.

Muestra
ITestDevice el ITestDevice

getDirectModule

public ModuleDefinition getDirectModule ()

Devuelve el ModuleDefinition que se ejecutará directamente o null si aún no hay ninguno (cuando aún no se fragmentó ITestSuite).

Muestra
ModuleDefinition

getIntraModuleSharding

public boolean getIntraModuleSharding ()

Muestra
boolean

getInvocationContext

public IInvocationContext getInvocationContext ()

Devuelve el contexto de invocación.

Muestra
IInvocationContext

getModuleMetadataIncludeFilters

public MultiMap<String, String> getModuleMetadataIncludeFilters ()

Muestra
MultiMap<String, String>

getMultiDeviceStrategy

public ITestSuite.MultiDeviceModuleStrategy getMultiDeviceStrategy ()

Muestra
ITestSuite.MultiDeviceModuleStrategy

getRequestedAbi

public final String getRequestedAbi ()

Devuelve la ABI solicitada con la opción -a o --abi.

Muestra
String

getRequiredTokens

public  getRequiredTokens (TestInformation testInfo)

Devuelve la lista de tokens requeridos por la prueba. Devuelve nulo si no hay compatibilidad con tokens.

Parámetros
testInfo TestInformation

Muestra

getRuntimeHint

public long getRuntimeHint ()

Devuelve el tiempo de ejecución esperado de la prueba en milisegundos. La hora se usa para balancear la carga de la ejecución fragmentada.

Muestra
long

getTestsDir

public File getTestsDir ()

Muestra
File

isRemoveModuleBuffering

public boolean isRemoveModuleBuffering ()

Muestra
boolean

isSplitting

public boolean isSplitting ()

Devuelve verdadero si actualmente estamos en IShardableTest.split(int).

Muestra
boolean

loadTests

public abstract  loadTests ()

Método abstracto para cargar la configuración de las pruebas que se ejecutarán. Cada prueba se define con un IConfiguration y un nombre único con el que se informarán los resultados.

Muestra

reportNotExecuted

public void reportNotExecuted (ITestInvocationListener listener, 
                String message)

Informa las pruebas no ejecutadas al objeto de escucha principal proporcionado. Se deben informar como fallidas con el mensaje NOT_EXECUTED_FAILURE.

Parámetros
listener ITestInvocationListener: Es el objeto de escucha principal en el que se informan los resultados no ejecutados.

message String: Es el mensaje que se asociará con la falla no ejecutada.

reportNotExecuted

public void reportNotExecuted (ITestInvocationListener listener)

Informa las pruebas no ejecutadas al objeto de escucha principal proporcionado. Se deben informar como fallidas con el mensaje NOT_EXECUTED_FAILURE.

Parámetros
listener ITestInvocationListener: Es el objeto de escucha principal en el que se informan los resultados no ejecutados.

run

public final void run (TestInformation testInfo, 
                ITestInvocationListener listener)

Método de ejecución genérico para todas las pruebas cargadas desde loadTests().

Parámetros
testInfo TestInformation: Es el objeto TestInformation que contiene información útil para ejecutar pruebas.

listener ITestInvocationListener: El ITestInvocationListener de los resultados de la prueba

Arroja
DeviceNotAvailableException

setAbiName

public void setAbiName (String abiName)

Establece el valor de mAbiName

Parámetros
abiName String

setAbis

public final void setAbis ( abis)

Parámetros
abis

setBuild

public void setBuild (IBuildInfo buildInfo)

Parámetros
buildInfo IBuildInfo

setCollectTestsOnly

public void setCollectTestsOnly (boolean shouldCollectTest)

Ejecuta el conjunto de pruebas solo en modo de recopilador. Esto requiere que todas las pruebas secundarias también implementen esta interfaz.

setConfiguration

public void setConfiguration (IConfiguration configuration)

Inserta el IConfiguration en uso.

Parámetros
configuration IConfiguration

setDevice

public void setDevice (ITestDevice device)

Inserta el dispositivo en prueba.

Parámetros
device ITestDevice: El ITestDevice que se usará

setDirectModule

public void setDirectModule (ModuleDefinition module)

Parámetros
module ModuleDefinition

setIntraModuleSharding

public void setIntraModuleSharding (boolean intraModuleSharding)

Parámetros
intraModuleSharding boolean

setInvocationContext

public void setInvocationContext (IInvocationContext invocationContext)

Parámetros
invocationContext IInvocationContext

setMetricCollectors

public void setMetricCollectors ( collectors)

Establece la lista de IMetricCollector definidos para la ejecución de la prueba.

Parámetros
collectors

setMultiDeviceStrategy

public void setMultiDeviceStrategy (ITestSuite.MultiDeviceModuleStrategy strategy)

Parámetros
strategy ITestSuite.MultiDeviceModuleStrategy

setPrimaryAbiRun

public void setPrimaryAbiRun (boolean primaryAbiRun)

Cómo establecer el valor de mPrimaryAbiRun

Parámetros
primaryAbiRun boolean

setShouldMakeDynamicModule

public void setShouldMakeDynamicModule (boolean dynamicModule)

Cuando se realiza el sharding distribuido, no podemos tener ModuleDefinition que comparta pruebas en un grupo. De lo contrario, el sharding dentro del módulo no funcionará, por lo que permitimos inhabilitarlo.

Parámetros
dynamicModule boolean

setSkipContext

public void setSkipContext (SkipContext skipContext)

Parámetros
skipContext SkipContext

setSystemStatusChecker

public void setSystemStatusChecker ( systemCheckers)

Establece los ISystemStatusCheckers de la configuración para la prueba.

Parámetros
systemCheckers

setTestLogger

public void setTestLogger (ITestLogger testLogger)

Inyecta la instancia de ITestLogger.

Parámetros
testLogger ITestLogger

división

public  split (Integer shardCountHint, 
                TestInformation testInfo)

Versión alternativa de split(int) que también proporciona un TestInformation que contiene información inicial del elemento superior que crea los fragmentos. Es útil si se necesita acceder a información del dispositivo o de la compilación durante la fragmentación.

Parámetros
shardCountHint Integer: Es el recuento de fragmentos intentado.

testInfo TestInformation: El TestInformation principal

Muestra
Colección de subpruebas que se ejecutarán por separado o null si la prueba no se puede fragmentar actualmente

Métodos protegidos

createModuleListeners

protected  createModuleListeners ()

Devuelve la lista de ITestInvocationListener aplicables al nivel de ModuleListener. Estos objetos de escucha se reutilizarán para cada módulo y no se volverán a crear instancias, por lo que no deben suponer un estado interno.

Muestra

filterByRunnerType

protected boolean filterByRunnerType (IConfiguration config, 
                 allowedRunners)

Aplica el filtro de lista blanca de ejecutores y quita cualquier ejecutor que no esté en la lista blanca. Si una configuración tiene varios ejecutores, es posible que se quiten algunos y que la configuración siga ejecutándose.

Parámetros
config IConfiguration: Es el IConfiguration que se evalúa.

allowedRunners : Es la lista blanca actual de ejecutores.

Muestra
boolean Es verdadero si se permite la ejecución del módulo de configuración; de lo contrario, es falso.

getAbisForBuildTargetArch

protected  getAbisForBuildTargetArch ()

Devuelve los ABIs compatibles con la arquitectura de destino de la compilación del host. Se expone para pruebas.

Muestra

getHostAbis

protected  getHostAbis ()

Devuelve los ABIs de la máquina host.

Muestra

setPrioritizeHostConfig

protected void setPrioritizeHostConfig (boolean prioritizeHostConfig)

Establece la opción prioritize-host-config.

Parámetros
prioritizeHostConfig boolean: Es verdadero si se prioriza la configuración del host, es decir, se ejecuta la prueba del host si es posible.

shouldModuleRun

protected boolean shouldModuleRun (ModuleDefinition module)

Parámetros
module ModuleDefinition

Devuelve
boolean