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 |
Classe abstrata usada para executar o pacote de teste. Essa classe fornece a base de como o pacote será executado.
Cada implementação pode definir a lista de testes usando o método loadTests().
Resumo
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
|
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 tudo o que era necessário durante a configuração dos conjuntos, mas não é necessário para executar os testes. |
boolean
|
filterByConfigMetadata(IConfiguration config, MultiMap<String, String> include, MultiMap<String, String> exclude)
Aplique o filtro de metadados à configuração e verifique se ela precisa ser executada. |
|
getAbis(ITestDevice device)
Recebe o conjunto de ABIs compatíveis com o teste de compatibilidade |
static
|
getAbisForBuildTargetArchFromSuite()
Retorna as ABIs possíveis do TestSuiteInfo. |
IBuildInfo
|
getBuildInfo()
A implementação de |
final
IConfiguration
|
getConfiguration()
Retorna a invocação |
ITestLogger
|
getCurrentTestLogger()
|
ITestDevice
|
getDevice()
Pegue o dispositivo em teste. |
ModuleDefinition
|
getDirectModule()
Retorna o |
boolean
|
getIntraModuleSharding()
|
IInvocationContext
|
getInvocationContext()
Retorna o contexto de 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 obrigatórios pelo teste. |
long
|
getRuntimeHint()
Retorna o tempo de execução esperado do teste em milissegundos. |
File
|
getTestsDir()
|
boolean
|
isRemoveModuleBuffering()
|
boolean
|
isSplitting()
Retorna "true" se estivermos em |
abstract
|
loadTests()
Método abstrato para carregar a configuração dos testes que serão executados. |
void
|
reportNotExecuted(ITestInvocationListener listener, String message)
Informar os testes não executados ao listener principal fornecido. |
void
|
reportNotExecuted(ITestInvocationListener listener)
Informar 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 |
void
|
setAbiName(String abiName)
Defina o valor de mAbiName |
final
void
|
setAbis(
|
void
|
setBuild(IBuildInfo buildInfo)
|
void
|
setCollectTestsOnly(boolean shouldCollectTest)
Execute o conjunto de testes somente no modo de coleta. Isso exige que todos os subtestes também implementem essa interface. |
void
|
setConfiguration(IConfiguration configuration)
Injeta o |
void
|
setDevice(ITestDevice device)
Injete o dispositivo em teste. |
void
|
setDirectModule(ModuleDefinition module)
|
void
|
setIntraModuleSharding(boolean intraModuleSharding)
|
void
|
setInvocationContext(IInvocationContext invocationContext)
|
void
|
setMetricCollectors(
Define a lista de |
void
|
setMultiDeviceStrategy(ITestSuite.MultiDeviceModuleStrategy strategy)
|
void
|
setPrimaryAbiRun(boolean primaryAbiRun)
Defina o valor de mPrimaryAbiRun |
void
|
setShouldMakeDynamicModule(boolean dynamicModule)
Ao fazer o sharding distribuído, não podemos ter ModuleDefinition que compartilhe testes em um pool. Caso contrário, o sharding intra-módulo não vai funcionar. Por isso, permitimos desativá-lo. |
void
|
setSkipContext(SkipContext skipContext)
|
void
|
setSystemStatusChecker(
Define os |
void
|
setTestLogger(ITestLogger testLogger)
Injeta a instância |
|
split(Integer shardCountHint, TestInformation testInfo)
Versão alternativa de |
Métodos protegidos | |
|---|---|
|
createModuleListeners()
Retorna a lista de |
boolean
|
filterByRunnerType(IConfiguration config,
Aplique a filtragem da lista de permissões do Runner, removendo qualquer runner que não esteja na lista. |
|
getAbisForBuildTargetArch()
Retorna as ABIs compatíveis com a arquitetura de destino da build do host. |
|
getHostAbis()
Retorna as ABIs da máquina host. |
void
|
setPrioritizeHostConfig(boolean prioritizeHostConfig)
Defina a opção "prioritize-host-config". |
boolean
|
shouldModuleRun(ModuleDefinition module)
|
Constantes
ABI_OPTION
public static final String ABI_OPTION
Valor da constante: "abi"
ACTIVE_MAINLINE_PARAMETER_KEY
public static final String ACTIVE_MAINLINE_PARAMETER_KEY
Valor da constante: "active-mainline-parameter"
BUILD_ATTRIBUTE_FLAG_OVERRIDES_KEY
public static final String BUILD_ATTRIBUTE_FLAG_OVERRIDES_KEY
Valor da constante: "flag-overrides"
ENABLE_RESOLVE_SYM_LINKS
public static final String ENABLE_RESOLVE_SYM_LINKS
Valor da constante: "enable-resolve-sym-links"
MAINLINE_PARAMETER_KEY
public static final String MAINLINE_PARAMETER_KEY
Valor da constante: "mainline-param"
MODULE_CHECKER_POST
public static final String MODULE_CHECKER_POST
Valor da constante: "PostModuleChecker"
MODULE_CHECKER_PRE
public static final String MODULE_CHECKER_PRE
Valor da constante: "PreModuleChecker"
MODULE_END_TIME
public static final String MODULE_END_TIME
Valor da constante: "MODULE_END_TIME"
MODULE_METADATA_EXCLUDE_FILTER
public static final String MODULE_METADATA_EXCLUDE_FILTER
Valor da constante: "module-metadata-exclude-filter"
MODULE_METADATA_INCLUDE_FILTER
public static final String MODULE_METADATA_INCLUDE_FILTER
Valor da constante: "module-metadata-include-filter"
MODULE_START_TIME
public static final String MODULE_START_TIME
Valor da constante: "MODULE_START_TIME"
PARAMETER_KEY
public static final String PARAMETER_KEY
Valor da constante: "parameter"
PREPARER_WHITELIST
public static final String PREPARER_WHITELIST
Valor da constante: "preparer-whitelist"
PRIMARY_ABI_RUN
public static final String PRIMARY_ABI_RUN
Valor da constante: "primary-abi-only"
RANDOM_SEED
public static final String RANDOM_SEED
Valor da constante: "random-seed"
RUNNER_WHITELIST
public static final String RUNNER_WHITELIST
Valor da constante: "runner-whitelist"
SKIP_HOST_ARCH_CHECK
public static final String SKIP_HOST_ARCH_CHECK
Valor da constante: "skip-host-arch-check"
SKIP_STAGING_ARTIFACTS
public static final String SKIP_STAGING_ARTIFACTS
Valor da constante: "skip-staging-artifacts"
SKIP_SYSTEM_STATUS_CHECKER
public static final String SKIP_SYSTEM_STATUS_CHECKER
Valor da constante: "skip-system-status-check"
STAGE_MODULE_ARTIFACTS
public static final String STAGE_MODULE_ARTIFACTS
Valor da constante: "stage-module-artifacts"
TEST_TYPE_KEY
public static final String TEST_TYPE_KEY
Valor da constante: "test-type"
TEST_TYPE_VALUE_PERFORMANCE
public static final String TEST_TYPE_VALUE_PERFORMANCE
Valor da constante: "performance"
TOKEN_KEY
public static final String TOKEN_KEY
Valor da constante: "token"
Campos
mEnableResolveSymlinks
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 |
cleanUpSuiteSetup
public void cleanUpSuiteSetup ()
Oportunidade de limpar tudo o que era necessário durante a configuração dos conjuntos, mas não é necessário 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 verifique se ela precisa ser executada.
| Parâmetros | |
|---|---|
config |
IConfiguration: o IConfiguration que está sendo avaliado. |
include |
MultiMap: o filtro de inclusão de metadados |
exclude |
MultiMap: o filtro de exclusão de metadados |
| Retorna | |
|---|---|
boolean |
True se o módulo precisar ser executado. Caso contrário, é false. |
getAbis
publicgetAbis (ITestDevice device)
Recebe o conjunto de ABIs compatíveis com o teste de compatibilidade AbiUtils.getAbisSupportedByCompatibility() e o dispositivo em teste.
| Parâmetros | |
|---|---|
device |
ITestDevice |
| Retorna | |
|---|---|
|
O conjunto de ABIs em que os testes serão executados. |
| Gera | |
|---|---|
|
com.android.tradefed.device.DeviceNotAvailableException |
DeviceNotAvailableException |
|
getAbisForBuildTargetArchFromSuite
public staticgetAbisForBuildTargetArchFromSuite ()
Retorna as ABIs possíveis do TestSuiteInfo.
| Retorna | |
|---|---|
|
|
getBuildInfo
public IBuildInfo getBuildInfo ()
A implementação de ITestSuite pode exigir que as informações do build carreguem os testes.
| Retorna | |
|---|---|
IBuildInfo |
|
getConfiguration
public final IConfiguration getConfiguration ()
Retorna a invocação IConfiguration.
| Retorna | |
|---|---|
IConfiguration |
|
getDevice
public ITestDevice getDevice ()
Pegue o dispositivo em teste.
| Retorna | |
|---|---|
ITestDevice |
o ITestDevice |
getDirectModule
public ModuleDefinition getDirectModule ()
Retorna o ModuleDefinition a ser executado diretamente ou nulo se ainda não houver nenhum (quando o
ITestSuite ainda não foi fragmentado).
| Retorna | |
|---|---|
ModuleDefinition |
|
getIntraModuleSharding
public boolean getIntraModuleSharding ()
| Retorna | |
|---|---|
boolean |
|
getInvocationContext
public IInvocationContext getInvocationContext ()
Retorna o contexto de 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
publicgetRequiredTokens (TestInformation testInfo)
Retorna a lista de tokens obrigatórios pelo teste. Retorna nulo se não houver suporte para token.
| Parâmetros | |
|---|---|
testInfo |
TestInformation |
| Retorna | |
|---|---|
|
|
getRuntimeHint
public long getRuntimeHint ()
Retorna o tempo 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 |
|
isRemoveModuleBuffering
public boolean isRemoveModuleBuffering ()
| Retorna | |
|---|---|
boolean |
|
isSplitting
public boolean isSplitting ()
Retorna "true" se estivermos em IShardableTest.split(int).
| Retorna | |
|---|---|
boolean |
|
loadTests
public abstractloadTests ()
Método abstrato para carregar a configuração dos testes que serão executados. Cada teste é definido por um IConfiguration e um nome exclusivo em que os resultados serão informados.
| Retorna | |
|---|---|
|
|
reportNotExecuted
public void reportNotExecuted (ITestInvocationListener listener, String message)
Informar os testes não executados ao listener principal fornecido. Eles devem ser informados como
falha com a mensagem NOT_EXECUTED_FAILURE.
| Parâmetros | |
|---|---|
listener |
ITestInvocationListener: o listener principal onde os resultados não executados são informados. |
message |
String: a mensagem a ser associada à falha não executada. |
reportNotExecuted
public void reportNotExecuted (ITestInvocationListener listener)
Informar os testes não executados ao listener principal fornecido. Eles devem ser informados como
falha com a mensagem NOT_EXECUTED_FAILURE.
| Parâmetros | |
|---|---|
listener |
ITestInvocationListener: o listener principal onde os resultados não executados são informados. |
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 |
|
setCollectTestsOnly
public void setCollectTestsOnly (boolean shouldCollectTest)
Execute o conjunto de testes somente no modo de coleta. 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 |
setDevice
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 definidos 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 o sharding distribuído, não podemos ter ModuleDefinition que compartilhe testes em um pool. Caso contrário, o sharding intra-módulo não vai funcionar. Por isso, permitimos desativá-lo.
| Parâmetros | |
|---|---|
dynamicModule |
boolean |
setSkipContext
public void setSkipContext (SkipContext skipContext)
| Parâmetros | |
|---|---|
skipContext |
SkipContext |
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 |
dividido
publicsplit (Integer shardCountHint, TestInformation testInfo)
Versão alternativa de split(int) que também fornece um TestInformation
que contém informações iniciais do pai que cria os fragmentos. Isso é útil se informações como
dispositivo ou build precisarem ser acessadas durante o sharding.
| Parâmetros | |
|---|---|
shardCountHint |
Integer: a contagem de fragmentos tentada. |
testInfo |
TestInformation: o TestInformation principal |
| Retorna | |
|---|---|
|
uma coleção de subtestes a serem executados separadamente ou null se o teste não puder ser fragmentado no momento. |
Métodos protegidos
createModuleListeners
protectedcreateModuleListeners ()
Retorna a lista de ITestInvocationListener aplicáveis ao nível ModuleListener. Esses listeners serão reutilizados para cada módulo e não serão reinicializados. Portanto, eles não devem presumir um estado interno.
| Retorna | |
|---|---|
|
|
filterByRunnerType
protected boolean filterByRunnerType (IConfiguration config,allowedRunners)
Aplique a filtragem da lista de permissões do Runner, removendo qualquer runner que não esteja na lista. Se uma configuração tiver vários executores, alguns poderão ser removidos, mas 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 |
True se o módulo de configuração puder ser executado. Caso contrário, será false. |
getAbisForBuildTargetArch
protectedgetAbisForBuildTargetArch ()
Retorna as ABIs compatíveis com a arquitetura de destino de build do host. Exposto para testes.
| Retorna | |
|---|---|
|
|
getHostAbis
protectedgetHostAbis ()
Retorna as ABIs da máquina host.
| Retorna | |
|---|---|
|
|
setPrioritizeHostConfig
protected void setPrioritizeHostConfig (boolean prioritizeHostConfig)
Defina a opção "prioritize-host-config".
| Parâmetros | |
|---|---|
prioritizeHostConfig |
boolean: "true" para priorizar a configuração do host, ou seja, executar o teste do host, se possível. |
shouldModuleRun
protected boolean shouldModuleRun (ModuleDefinition module)
| Parâmetros | |
|---|---|
module |
ModuleDefinition |
| Retorna | |
|---|---|
boolean |
|