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


Абстрактный класс, используемый для запуска набора тестов. Этот класс задает основу для запуска набора тестов. Каждая реализация может определить список тестов с помощью метода loadTests() .

Краткое содержание

Константы

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

Поля

protected boolean mEnableResolveSymlinks

protected boolean mRecoverDeviceByCvd

Государственные строители

ITestSuite ()

Общедоступные методы

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

Возможность навести порядок во всем, что потребовалось при настройке тестовых наборов, но не является необходимым для их запуска.

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

Примените фильтр метаданных к конфигурации и проверьте, должна ли она выполняться.

Set< IAbi > getAbis ( ITestDevice device)

Получает набор ABI, поддерживаемых как методом проверки совместимости AbiUtils.getAbisSupportedByCompatibility() , так и тестируемым устройством.

static Set<String> getAbisForBuildTargetArchFromSuite ()

Возвращает возможные значения abis из TestSuiteInfo.

IBuildInfo getBuildInfo ()

Для внедрения ITestSuite может потребоваться информация о сборке для загрузки тестов.

final IConfiguration getConfiguration ()

Возвращает вызов IConfiguration .

ITestLogger getCurrentTestLogger ()
ITestDevice getDevice ()

Проведите тестирование устройства.

ModuleDefinition getDirectModule ()

Возвращает ModuleDefinition , который будет выполнен напрямую, или null, если такового еще нет (если ITestSuite еще не был разделен на сегменты).

boolean getIntraModuleSharding ()
IInvocationContext getInvocationContext ()

Возвращает контекст вызова.

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

Возвращает запрошенный ABI, указанный в параметрах -a или --abi.

Set< TokenProperty > getRequiredTokens ( TestInformation testInfo)

Возвращает список необходимых для теста токенов.

long getRuntimeHint ()

Возвращает ожидаемое время выполнения теста в миллисекундах.

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

Возвращает true, если в данный момент мы находимся в IShardableTest.split(int) .

abstract LinkedHashMap<String, IConfiguration > loadTests ()

Абстрактный метод для загрузки конфигурации тестов, которые будут запущены.

void reportNotExecuted ( ITestInvocationListener listener, String message)

Сообщите о невыполненных тестах основному слушателю.

void reportNotExecuted ( ITestInvocationListener listener)

Сообщите о невыполненных тестах основному слушателю.

final void run ( TestInformation testInfo, ITestInvocationListener listener)

Универсальный метод запуска для всех тестов, загруженных из loadTests() .

void setAbiName (String abiName)

Установите значение mAbiName

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

void setCollectTestsOnly (boolean shouldCollectTest)

Запустите набор тестов в режиме только сборщика мусора; это потребует, чтобы все подтесты также реализовывали этот интерфейс.

void setConfiguration ( IConfiguration configuration)

Внедряет используемый объект IConfiguration .

void setDevice ( ITestDevice device)

Введите исследуемое устройство.

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

void setMetricCollectors (List< IMetricCollector > collectors)

Задает список объектов IMetricCollector , определенных для выполнения теста.

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

Установите значение mPrimaryAbiRun

void setShouldMakeDynamicModule (boolean dynamicModule)

При распределенном сегментировании мы не можем использовать ModuleDefinition, который бы предоставлял доступ к тестам в пуле, иначе внутримодульное сегментирование работать не будет, поэтому мы разрешаем его отключать.

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

Устанавливает параметры ISystemStatusChecker из конфигурации для теста.

void setTestLogger ( ITestLogger testLogger)

Внедряет экземпляр ITestLogger

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

Альтернативная версия функции split(int) , которая также предоставляет TestInformation , содержащий предварительную информацию от родительского объекта, создающего шарды.

Защищенные методы

List< ITestInvocationListener > createModuleListeners ()

Возвращает список объектов ITestInvocationListener , применимых к уровню ModuleListener .

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

Примените фильтрацию по белому списку участников, удалив всех участников, не включенных в белый список.

Set<String> getAbisForBuildTargetArch ()

Возвращает ABI, поддерживаемый архитектурой целевого объекта сборки Host.

Set<String> getHostAbis ()

Возвращает abis хост-машины.

void setPrioritizeHostConfig (boolean prioritizeHostConfig)

Установите параметр prioritize-host-config.

boolean shouldModuleRun ( ModuleDefinition module)

Константы

ABI_OPTION

public static final String ABI_OPTION

Постоянное значение: "abi"

ACTIVE_MAINLINE_PARAMETER_KEY

public static final String ACTIVE_MAINLINE_PARAMETER_KEY

Постоянное значение: "active-mainline-parameter"

BUILD_ATTRIBUTE_FLAG_OVERRIDES_KEY

public static final String BUILD_ATTRIBUTE_FLAG_OVERRIDES_KEY

Постоянное значение: "переопределение флагов"

public static final String ENABLE_RESOLVE_SYM_LINKS

Постоянное значение: "enable-resolve-sym-links"

MAINLINE_PARAMETER_KEY

public static final String MAINLINE_PARAMETER_KEY

Постоянное значение: "mainline-param"

MODULE_CHECKER_POST

public static final String MODULE_CHECKER_POST

Постоянное значение: "PostModuleChecker"

MODULE_CHECKER_PRE

public static final String MODULE_CHECKER_PRE

Постоянное значение: "PreModuleChecker"

MODULE_END_TIME

public static final String MODULE_END_TIME

Постоянное значение: "MODULE_END_TIME"

MODULE_METADATA_EXCLUDE_FILTER

public static final String MODULE_METADATA_EXCLUDE_FILTER

Постоянное значение: "module-metadata-exclude-filter"

MODULE_METADATA_INCLUDE_FILTER

public static final String MODULE_METADATA_INCLUDE_FILTER

Постоянное значение: "module-metadata-include-filter"

MODULE_START_TIME

public static final String MODULE_START_TIME

Постоянное значение: "MODULE_START_TIME"

PARAMETER_KEY

public static final String PARAMETER_KEY

Постоянное значение: "параметр"

PREPARER_WHITELIST

public static final String PREPARER_WHITELIST

Постоянное значение: "белый список подготовителя"

PRIMARY_ABI_RUN

public static final String PRIMARY_ABI_RUN

Постоянное значение: "только для основного ABI"

RANDOM_SEED

public static final String RANDOM_SEED

Постоянное значение: "начальное значение случайной величины"

БЕГУН_БЕЛЫЙ_СПИСОК

public static final String RUNNER_WHITELIST

Постоянная величина: "белый список бегунов"

SKIP_HOST_ARCH_CHECK

public static final String SKIP_HOST_ARCH_CHECK

Постоянное значение: "skip-host-arch-check"

SKIP_STAGING_ARTIFACTS

public static final String SKIP_STAGING_ARTIFACTS

Постоянная величина: "skip-staging-artifacts"

ПРОПУСК_ПРОВЕРКИ_СТАТУСА_СИСТЕМЫ

public static final String SKIP_SYSTEM_STATUS_CHECKER

Постоянное значение: "skip-system-status-check"

STAGE_MODULE_ARTIFACTS

public static final String STAGE_MODULE_ARTIFACTS

Постоянная величина: "артефакты модуля этапа"

TEST_TYPE_KEY

public static final String TEST_TYPE_KEY

Постоянное значение: "test-type"

TEST_TYPE_VALUE_PERFORMANCE

public static final String TEST_TYPE_VALUE_PERFORMANCE

Постоянная величина: «производительность»

TOKEN_KEY

public static final String TOKEN_KEY

Постоянное значение: "токен"

Поля

protected boolean mEnableResolveSymlinks

mRecoverDeviceByCvd

protected boolean mRecoverDeviceByCvd

Государственные строители

ITestSuite

public ITestSuite ()

Общедоступные методы

addModuleMetadataExcludeFilters

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

Параметры
filters MultiMap

addModuleMetadataIncludeFilters

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

Параметры
filters MultiMap

cleanUpSuiteSetup

public void cleanUpSuiteSetup ()

Возможность навести порядок во всем, что потребовалось при настройке тестовых наборов, но не является необходимым для их запуска.

filterByConfigMetadata

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

Примените фильтр метаданных к конфигурации и проверьте, должна ли она выполняться.

Параметры
config IConfiguration : Объект IConfiguration , который оценивается.

include MultiMap : метаданные включают фильтр.

exclude MultiMap : фильтр исключения метаданных

Возвраты
boolean Возвращает true, если модуль должен быть запущен, false в противном случае.

getAbis

public Set<IAbi> getAbis (ITestDevice device)

Получает набор ABI, поддерживаемых как методом проверки совместимости AbiUtils.getAbisSupportedByCompatibility() , так и тестируемым устройством.

Параметры
device ITestDevice

Возвраты
Set< IAbi > Набор ABI для запуска тестов.

Броски
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

getAbisForBuildTargetArchFromSuite

public static Set<String> getAbisForBuildTargetArchFromSuite ()

Возвращает возможные значения abis из TestSuiteInfo.

Возвраты
Set<String>

получить информацию о сборке

public IBuildInfo getBuildInfo ()

Для внедрения ITestSuite может потребоваться информация о сборке для загрузки тестов.

Возвраты
IBuildInfo

получить конфигурацию

public final IConfiguration getConfiguration ()

Возвращает вызов IConfiguration .

Возвраты
IConfiguration

getCurrentTestLogger

public ITestLogger getCurrentTestLogger ()

Возвраты
ITestLogger

getDevice

public ITestDevice getDevice ()

Проведите тестирование устройства.

Возвраты
ITestDevice ITestDevice

getDirectModule

public ModuleDefinition getDirectModule ()

Возвращает ModuleDefinition , который будет выполнен напрямую, или null, если такового еще нет (если ITestSuite еще не был разделен на сегменты).

Возвраты
ModuleDefinition

getIntraModuleSharding

public boolean getIntraModuleSharding ()

Возвраты
boolean

getInvocationContext

public IInvocationContext getInvocationContext ()

Возвращает контекст вызова.

Возвраты
IInvocationContext

getModuleMetadataIncludeFilters

public MultiMap<String, String> getModuleMetadataIncludeFilters ()

Возвраты
MultiMap <String, String>

getMultiDeviceStrategy

public ITestSuite.MultiDeviceModuleStrategy getMultiDeviceStrategy ()

Возвраты
ITestSuite.MultiDeviceModuleStrategy

getRequestedAbi

public final String getRequestedAbi ()

Возвращает запрошенный ABI, указанный в параметрах -a или --abi.

Возвраты
String

getRequiredTokens

public Set<TokenProperty> getRequiredTokens (TestInformation testInfo)

Возвращает список необходимых для теста токенов. Возвращает null, если поддержка токенов отсутствует.

Параметры
testInfo TestInformation

Возвраты
Set< TokenProperty >

getRuntimeHint

public long getRuntimeHint ()

Возвращает ожидаемое время выполнения теста в миллисекундах. Это время используется для балансировки нагрузки при сегментированном выполнении.

Возвраты
long

getTestsDir

public File getTestsDir ()

Возвраты
File

Броски
FileNotFoundException

isRemoveModuleBuffering

public boolean isRemoveModuleBuffering ()

Возвраты
boolean

isSplitting

public boolean isSplitting ()

Возвращает true, если в данный момент мы находимся в IShardableTest.split(int) .

Возвраты
boolean

нагрузочные тесты

public abstract LinkedHashMap<String, IConfiguration> loadTests ()

Абстрактный метод для загрузки конфигурации тестов, которые будут запущены. Каждый тест определяется объектом IConfiguration и уникальным именем, под которым он будет сообщать результаты.

Возвраты
LinkedHashMap<String, IConfiguration >

reportNotExecuted

public void reportNotExecuted (ITestInvocationListener listener, 
                String message)

Сообщите о невыполненных тестах основному слушателю. Они должны быть отмечены как неудачные с сообщением NOT_EXECUTED_FAILURE .

Параметры
listener ITestInvocationListener : основной слушатель, куда следует сообщать о результатах, которые не были выполнены.

message String : сообщение, которое будет связано с невыполненной ошибкой.

reportNotExecuted

public void reportNotExecuted (ITestInvocationListener listener)

Сообщите о невыполненных тестах основному слушателю. Они должны быть отмечены как неудачные с сообщением NOT_EXECUTED_FAILURE .

Параметры
listener ITestInvocationListener : основной слушатель, куда следует сообщать о результатах, которые не были выполнены.

бегать

public final void run (TestInformation testInfo, 
                ITestInvocationListener listener)

Универсальный метод запуска для всех тестов, загруженных из loadTests() .

Параметры
testInfo TestInformation : Объект TestInformation , содержащий полезную информацию для запуска тестов.

listener ITestInvocationListener : ITestInvocationListener для результатов тестирования.

Броски
DeviceNotAvailableException

setAbiName

public void setAbiName (String abiName)

Установите значение mAbiName

Параметры
abiName String

setAbis

public final void setAbis (Set<IAbi> abis)

Параметры
abis Set

setBuild

public void setBuild (IBuildInfo buildInfo)

Параметры
buildInfo IBuildInfo

setCollectTestsOnly

public void setCollectTestsOnly (boolean shouldCollectTest)

Запустите набор тестов в режиме только сборщика мусора; это потребует, чтобы все подтесты также реализовывали этот интерфейс.

setConfiguration

public void setConfiguration (IConfiguration configuration)

Внедряет используемый объект IConfiguration .

Параметры
configuration IConfiguration

setDevice

public void setDevice (ITestDevice device)

Введите исследуемое устройство.

Параметры
device ITestDevice : устройство ITestDevice для использования

setDirectModule

public void setDirectModule (ModuleDefinition module)

Параметры
module ModuleDefinition

setInLocalRetry

public void setInLocalRetry (boolean inLocalRetry)

Параметры
inLocalRetry boolean

setIntraModuleSharding

public void setIntraModuleSharding (boolean intraModuleSharding)

Параметры
intraModuleSharding boolean

setInvocationContext

public void setInvocationContext (IInvocationContext invocationContext)

Параметры
invocationContext IInvocationContext

setMetricCollectors

public void setMetricCollectors (List<IMetricCollector> collectors)

Задает список объектов IMetricCollector , определенных для выполнения теста.

Параметры
collectors List

setMultiDeviceStrategy

public void setMultiDeviceStrategy (ITestSuite.MultiDeviceModuleStrategy strategy)

Параметры
strategy ITestSuite.MultiDeviceModuleStrategy

setPrimaryAbiRun

public void setPrimaryAbiRun (boolean primaryAbiRun)

Установите значение mPrimaryAbiRun

Параметры
primaryAbiRun boolean

setShouldMakeDynamicModule

public void setShouldMakeDynamicModule (boolean dynamicModule)

При распределенном сегментировании мы не можем использовать ModuleDefinition, который бы предоставлял доступ к тестам в пуле, иначе внутримодульное сегментирование работать не будет, поэтому мы разрешаем его отключать.

Параметры
dynamicModule boolean

setSkipContext

public void setSkipContext (SkipContext skipContext)

Параметры
skipContext SkipContext

setSystemStatusChecker

public void setSystemStatusChecker (List<ISystemStatusChecker> systemCheckers)

Устанавливает параметры ISystemStatusChecker из конфигурации для теста.

Параметры
systemCheckers List

setTestLogger

public void setTestLogger (ITestLogger testLogger)

Внедряет экземпляр ITestLogger

Параметры
testLogger ITestLogger

расколоть

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

Альтернативная версия функции split(int) , которая также предоставляет объект TestInformation , содержащий предварительную информацию от родительского процесса, создающего шарды. Это полезно, если во время шардирования необходимо получить доступ к таким данным, как информация об устройстве или сборке.

Параметры
shardCountHint Integer : количество попыток создания фрагментов.

testInfo TestInformation : Родительский объект TestInformation

Возвраты
Collection< IRemoteTest > набор подтестов, которые должны выполняться отдельно, или null если тест в данный момент не может быть разделен на сегменты.

Защищенные методы

createModuleListeners

protected List<ITestInvocationListener> createModuleListeners ()

Возвращает список объектов ITestInvocationListener применимых к уровню ModuleListener . Эти слушатели будут повторно использоваться для каждого модуля, они не будут создаваться заново, поэтому им не следует присваивать себе внутреннее состояние.

Возвраты
List< ITestInvocationListener >

filterByRunnerType

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

Примените фильтрацию по белому списку исполнителей, удалив все исполнители, не включенные в белый список. Если конфигурация содержит несколько исполнителей, некоторые из них могут быть удалены, но конфигурация все равно будет работать.

Параметры
config IConfiguration : Объект IConfiguration , который оценивается.

allowedRunners Set : Список разрешенных участников текущего забега.

Возвраты
boolean Значение true, если конфигурационному модулю разрешено выполнение, false в противном случае.

getAbisForBuildTargetArch

protected Set<String> getAbisForBuildTargetArch ()

Возвращает ABI, поддерживаемый архитектурой целевого объекта сборки Host. Предоставляется для тестирования.

Возвраты
Set<String>

getHostAbis

protected Set<String> getHostAbis ()

Возвращает abis хост-машины.

Возвраты
Set<String>

setPrioritizeHostConfig

protected void setPrioritizeHostConfig (boolean prioritizeHostConfig)

Установите параметр prioritize-host-config.

Параметры
prioritizeHostConfig boolean : true, чтобы отдать приоритет конфигурации хоста, т.е. запустить тест хоста, если это возможно.

shouldModuleRun

protected boolean shouldModuleRun (ModuleDefinition module)

Параметры
module ModuleDefinition

Возвраты
boolean