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 abstrata usada para executar o pacote de testes. Essa classe fornece a base de como o Suite será executado. Cada implementação pode definir a lista de testes pelo método loadTests().

Resumo

Campos

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

Construtores públicos

ITestSuite()

Métodos públicos

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

Oportunidade de limpar todas as coisas que foram necessárias durante a configuração dos pacotes, mas não necessárias para executar os testes.

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

Aplique o filtro de metadados à configuração e veja se ela deve ser executada.

getAbis(ITestDevice device)

Recebe o conjunto de ABIs compatíveis com o teste de compatibilidade da AbiUtils.getAbisSupportedByCompatibility() e do dispositivo em teste.

static getAbisForBuildTargetArchFromSuite()

Retorna os possíveis abis do TestSuiteInfo.

IBuildInfo getBuildInfo()

A implementação de ITestSuite pode exigir as informações do build para carregar os testes.

final IConfiguration getConfiguration()

Retorna a invocação IConfiguration.

ITestLogger getCurrentTestLogger()
ITestDevice getDevice()

Colocar o dispositivo em teste.

ModuleDefinition getDirectModule()

Retorna o ModuleDefinition a ser executado diretamente ou retorna nulo quando nenhum ainda (quando o ITestSuite ainda não foi fragmentado).

boolean getIntraModuleSharding()
IInvocationContext getInvocationContext()

Retorna o contexto da invocação.

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

Retorna a abi solicitada com a opção -a ou --abi.

getRequiredTokens(TestInformation testInfo)

Retorna a lista de tokens exigidos pelo teste.

long getRuntimeHint()

Retorna o ambiente de execução esperado do teste em milissegundos.

File getTestsDir()
boolean isSplitting()

Retorna "true" se estivermos em IShardableTest.split(int).

abstract loadTests()

Método abstrato para carregar a configuração de testes que será executada.

void reportNotExecuted(ITestInvocationListener listener, String message)

Informe os testes não executados ao listener principal fornecido.

void reportNotExecuted(ITestInvocationListener listener)

Informe os testes não executados ao listener principal fornecido.

final void run(TestInformation testInfo, ITestInvocationListener listener)

Método de execução genérico para todos os testes carregados de loadTests().

void setAbiName(String abiName)

Defina o valor de mAbiName

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

void setCollectTestsOnly(boolean shouldCollectTest)

Execute o pacote de testes no modo somente coletor. Isso exige que todos os subtestes também implementem essa interface.

void setConfiguration(IConfiguration configuration)

Injeta o IConfiguration em uso.

void setDevice(ITestDevice device)

Injete o dispositivo em teste.

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

void setMetricCollectors( collectors)

Define a lista de IMetricCollectors definida para a execução do teste.

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

Defina o valor de mPrimaryAbiRun

void setShouldMakeDynamicModule(boolean dynamicModule)

Ao fazer a fragmentação distribuída, não é possível ter um ModuleDefinition que compartilhe testes em um pool. Caso contrário, a fragmentação intramódulo não vai funcionar, então permitimos a desativação dela.

void setSystemStatusChecker( systemCheckers)

Define os ISystemStatusCheckers da configuração para o teste.

void setTestLogger(ITestLogger testLogger)

Injeta a instância ITestLogger

split(Integer shardCountHint, TestInformation testInfo)

Versão alternativa de split(int), que também fornece um TestInformation que contém informações antecipadas do pai que cria os fragmentos.

Métodos protegidos

createModuleListeners()

Retorna a lista de ITestInvocationListener aplicáveis ao nível de ModuleListener.

boolean filterByRunnerType(IConfiguration config, allowedRunners)

Aplique a filtragem da lista de permissões do executor, removendo qualquer executor que não esteja na lista de permissões.

getAbisForBuildTargetArch()

Retorna o abis compatível com a arquitetura de destino de build do host.

getHostAbis()

Retorna o abis da máquina host.

boolean shouldModuleRun(ModuleDefinition module)

Campos

ABI_OPTION

public static final String ABI_OPTION

CHAVE_DA_PRINCIPAL_ATIVO

public static final String ACTIVE_MAINLINE_PARAMETER_KEY

CHAVE_DE_PARÂMETRO_PRINCIPAL

public static final String MAINLINE_PARAMETER_KEY

POSTAGEM_DE_VERIFICAÇÃO_MÓDULO

public static final String MODULE_CHECKER_POST

MÓDULO_VERIFICADOR_PRE

public static final String MODULE_CHECKER_PRE

MÓDULO_END_TIME

public static final String MODULE_END_TIME

FILTRO_DE_METADADOS_MÓDULO

public static final String MODULE_METADATA_EXCLUDE_FILTER

FILTRO DE METADADOS DE MÓDULO

public static final String MODULE_METADATA_INCLUDE_FILTER

MÓDULO_INÍCIO_DE_HORA

public static final String MODULE_START_TIME

CHAVE_DE PARÂMETRO

public static final String PARAMETER_KEY

LISTA DE PREPARAÇÃO

public static final String PREPARER_WHITELIST

PRINCIPAL_ABI_RUN

public static final String PRIMARY_ABI_RUN

SEED_ALEATÓRIA

public static final String RANDOM_SEED

RUNNER_WHITELIST

public static final String RUNNER_WHITELIST

PULAR_HOST_ARCH_CHECK

public static final String SKIP_HOST_ARCH_CHECK

PULAR_ARTEFATOS_DE_STAGING

public static final String SKIP_STAGING_ARTIFACTS

PULAR_SISTEMA_STATUS_CHECKER

public static final String SKIP_SYSTEM_STATUS_CHECKER

ARTEFATOS_DO_MÓDULO_ESTÁGIO

public static final String STAGE_MODULE_ARTIFACTS

CHAVE_DE_TIPO DE TESTE

public static final String TEST_TYPE_KEY

TEST_TYPE_VALUE_PERFORMANCE

public static final String TEST_TYPE_VALUE_PERFORMANCE

CHAVE_DE_TOKEN

public static final String TOKEN_KEY

protected boolean mEnableResolveSymlinks

mRecoverDeviceByCvd

protected boolean mRecoverDeviceByCvd

Construtores 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

Limpar Suite

public void cleanUpSuiteSetup ()

Oportunidade de limpar todas as coisas que foram necessárias durante a configuração dos pacotes, mas não necessárias para executar os testes.

filterByConfigMetadata

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

Aplique o filtro de metadados à configuração e veja se ela deve ser executada.

Parâmetros
config IConfiguration: o IConfiguration que está sendo avaliado.

include MultiMap: os metadados incluem o filtro

exclude MultiMap: o filtro de exclusão de metadados.

Retorna
boolean Verdadeiro se o módulo precisar ser executado. Caso contrário, será falso.

GetAbis

public  getAbis (ITestDevice device)

Recebe o conjunto de ABIs compatíveis com o teste de compatibilidade da AbiUtils.getAbisSupportedByCompatibility() e do dispositivo em teste.

Parâmetros
device ITestDevice

Retorna
O conjunto de ABIs para executar os testes

Gera
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

getAbisForBuildTargetArchFromSuite

public static  getAbisForBuildTargetArchFromSuite ()

Retorna os possíveis abis do TestSuiteInfo.

Retorna

getBuildInfo

public IBuildInfo getBuildInfo ()

A implementação de ITestSuite pode exigir as informações do build para carregar os testes.

Retorna
IBuildInfo

getConfiguration

public final IConfiguration getConfiguration ()

Retorna a invocação IConfiguration.

Retorna
IConfiguration

getCurrentTestLogger

public ITestLogger getCurrentTestLogger ()

Retorna
ITestLogger

getDevice

public ITestDevice getDevice ()

Colocar o dispositivo em teste.

Retorna
ITestDevice ITestDevice

getDirectModule

public ModuleDefinition getDirectModule ()

Retorna o ModuleDefinition a ser executado diretamente ou retorna nulo quando nenhum ainda (quando o ITestSuite ainda não foi fragmentado).

Retorna
ModuleDefinition

getIntraModuleSharding

public boolean getIntraModuleSharding ()

Retorna
boolean

getInvocationContext

public IInvocationContext getInvocationContext ()

Retorna o contexto da invocação.

Retorna
IInvocationContext

getModuleMetadataIncludeFilters

public MultiMap<String, String> getModuleMetadataIncludeFilters ()

Retorna
MultiMap<String, String>

getMultiDeviceStrategy

public ITestSuite.MultiDeviceModuleStrategy getMultiDeviceStrategy ()

Retorna
ITestSuite.MultiDeviceModuleStrategy

getRequestedAbi

public final String getRequestedAbi ()

Retorna a abi solicitada com a opção -a ou --abi.

Retorna
String

getRequiredTokens

public  getRequiredTokens (TestInformation testInfo)

Retorna a lista de tokens exigidos pelo teste. Retornará nulo se não houver suporte a token.

Parâmetros
testInfo TestInformation

Retorna

getRuntimeHint

public long getRuntimeHint ()

Retorna o ambiente de execução esperado do teste em milissegundos. O tempo é usado para balancear a carga da execução fragmentada

Retorna
long

getTestsDir

public File getTestsDir ()

Retorna
File

dividindo

public boolean isSplitting ()

Retorna "true" se estivermos em IShardableTest.split(int).

Retorna
boolean

loadTests

public abstract  loadTests ()

Método abstrato para carregar a configuração de testes que será executada. Cada teste é definido por um IConfiguration e um nome exclusivo sob o qual os resultados serão relatados.

Retorna

reportNotExecuted

public void reportNotExecuted (ITestInvocationListener listener, 
                String message)

Informe os testes não executados ao listener principal fornecido. Elas precisam ser informadas como falhas com a mensagem NOT_EXECUTED_FAILURE.

Parâmetros
listener ITestInvocationListener: o listener principal em que os resultados não executados são relatados.

message String: a mensagem a ser associada à falha não executada.

reportNotExecuted

public void reportNotExecuted (ITestInvocationListener listener)

Informe os testes não executados ao listener principal fornecido. Elas precisam ser informadas como falhas com a mensagem NOT_EXECUTED_FAILURE.

Parâmetros
listener ITestInvocationListener: o listener principal em que os resultados não executados são relatados.

run

public final void run (TestInformation testInfo, 
                ITestInvocationListener listener)

Método de execução genérico para todos os testes carregados de loadTests().

Parâmetros
testInfo TestInformation: o objeto TestInformation que contém informações úteis para executar testes.

listener ITestInvocationListener: o ITestInvocationListener dos resultados do teste.

Gera
DeviceNotAvailableException

setAbiName

public void setAbiName (String abiName)

Defina o 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)

Execute o pacote de testes no modo somente coletor. Isso exige que todos os subtestes também implementem essa interface.

setConfiguration

public void setConfiguration (IConfiguration configuration)

Injeta o IConfiguration em uso.

Parâmetros
configuration IConfiguration

Definir dispositivo

public void setDevice (ITestDevice device)

Injete o dispositivo em teste.

Parâmetros
device ITestDevice: o ITestDevice a ser usado.

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)

Define a lista de IMetricCollectors definida para a execução do teste.

Parâmetros
collectors

setMultiDeviceStrategy

public void setMultiDeviceStrategy (ITestSuite.MultiDeviceModuleStrategy strategy)

Parâmetros
strategy ITestSuite.MultiDeviceModuleStrategy

setPrimaryAbiRun

public void setPrimaryAbiRun (boolean primaryAbiRun)

Defina o valor de mPrimaryAbiRun

Parâmetros
primaryAbiRun boolean

setShouldMakeDynamicModule

public void setShouldMakeDynamicModule (boolean dynamicModule)

Ao fazer a fragmentação distribuída, não é possível ter um ModuleDefinition que compartilhe testes em um pool. Caso contrário, a fragmentação intramódulo não vai funcionar, então permitimos a desativação dela.

Parâmetros
dynamicModule boolean

setSystemStatusChecker

public void setSystemStatusChecker ( systemCheckers)

Define os ISystemStatusCheckers da configuração para o teste.

Parâmetros
systemCheckers

setTestLogger

public void setTestLogger (ITestLogger testLogger)

Injeta a instância ITestLogger

Parâmetros
testLogger ITestLogger

dividir

public  split (Integer shardCountHint, 
                TestInformation testInfo)

Versão alternativa de split(int), que também fornece um TestInformation que contém informações antecipadas do pai que cria os fragmentos. Ela é útil se informações como do dispositivo ou da versão precisarem ser acessadas durante a fragmentação.

Parâmetros
shardCountHint Integer: a contagem de fragmentos tentados.

testInfo TestInformation: o TestInformation pai

Retorna
uma coleção de subtestes a serem executados separadamente ou null se o teste não for fragmentável no momento

Métodos protegidos

createModuleListeners

protected  createModuleListeners ()

Retorna a lista de ITestInvocationListener aplicáveis ao nível de ModuleListener. Esses listeners serão reutilizados para cada módulo, não vão ser reinstanciados, então não podem assumir um estado interno.

Retorna

filterByRunnerType

protected boolean filterByRunnerType (IConfiguration config, 
                 allowedRunners)

Aplique a filtragem da lista de permissões do executor, removendo qualquer executor que não esteja na lista de permissões. Se uma configuração tiver vários executores, alguns poderão ser removidos, e a configuração ainda será executada.

Parâmetros
config IConfiguration: o IConfiguration que está sendo avaliado.

allowedRunners : a lista de permissões do executor atual.

Retorna
boolean Verdadeiro se o módulo de configuração tiver permissão para ser executado. Caso contrário, será falso.

getAbisForBuildTargetArch

protected  getAbisForBuildTargetArch ()

Retorna o abis compatível com a arquitetura de destino de build do host. Exposto para teste.

Retorna

getHostAbis

protected  getHostAbis ()

Retorna o abis da máquina host.

Retorna

shouldModuleRun.

protected boolean shouldModuleRun (ModuleDefinition module)

Parâmetros
module ModuleDefinition

Retorna
boolean