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)Примените фильтр метаданных к конфигурации и проверьте, должна ли конфигурация запускаться. |
| getAbis ( ITestDevice device) Получает набор ABI, поддерживаемых как тестированием совместимости |
static | getAbisForBuildTargetArchFromSuite ()Возвращает возможный abis из TestSuiteInfo. |
IBuildInfo | getBuildInfo () Реализация |
final IConfiguration | getConfiguration () Возвращает вызов |
ITestLogger | getCurrentTestLogger () |
ITestDevice | getDevice ()Проведите тестирование устройства. |
ModuleDefinition | getDirectModule () Возвращает |
boolean | getIntraModuleSharding () |
IInvocationContext | getInvocationContext ()Возвращает контекст вызова. |
MultiMap <String, String> | getModuleMetadataIncludeFilters () |
ITestSuite.MultiDeviceModuleStrategy | getMultiDeviceStrategy () |
final String | getRequestedAbi ()Возвращает abi, запрошенный с помощью опции -a или --abi. |
| getRequiredTokens ( TestInformation testInfo)Возвращает список требуемых токенов по тесту. |
long | getRuntimeHint ()Верните ожидаемое время выполнения теста в миллисекундах. |
File | getTestsDir () |
boolean | isRemoveModuleBuffering () |
boolean | isSplitting () Возвращает true, если мы в данный момент находимся в |
abstract | loadTests ()Абстрактный метод для загрузки конфигурации тестов, которые будут запущены. |
void | reportNotExecuted ( ITestInvocationListener listener, String message)Сообщить о невыполненных тестах основному слушателю. |
void | reportNotExecuted ( ITestInvocationListener listener)Сообщить о невыполненных тестах основному слушателю. |
final void | run ( TestInformation testInfo, ITestInvocationListener listener) Универсальный метод запуска для всех тестов, загруженных из |
void | setAbiName (String abiName)Установите значение mAbiName |
final void | setAbis ( |
void | setBuild ( IBuildInfo buildInfo) |
void | setCollectTestsOnly (boolean shouldCollectTest)Запустите тестовый набор в режиме «только сборщик». Для этого необходимо, чтобы все подтесты также реализовали этот интерфейс. |
void | setConfiguration ( IConfiguration configuration) Внедряет используемую |
void | setDevice ( ITestDevice device)Введите тестируемое устройство. |
void | setDirectModule ( ModuleDefinition module) |
void | setIntraModuleSharding (boolean intraModuleSharding) |
void | setInvocationContext ( IInvocationContext invocationContext) |
void | setMetricCollectors ( Задает список |
void | setMultiDeviceStrategy ( ITestSuite.MultiDeviceModuleStrategy strategy) |
void | setPrimaryAbiRun (boolean primaryAbiRun)Установите значение mPrimaryAbiRun |
void | setShouldMakeDynamicModule (boolean dynamicModule)При распределенном шардинге мы не можем иметь ModuleDefinition, который разделяет тесты в пуле, в противном случае внутримодульное шардинг не будет работать, поэтому мы разрешаем его отключать. |
void | setSkipContext ( SkipContext skipContext) |
void | setSystemStatusChecker ( Устанавливает |
void | setTestLogger ( ITestLogger testLogger) Внедряет экземпляр |
| split (Integer shardCountHint, TestInformation testInfo) Альтернативная версия |
Защищенные методы | |
|---|---|
| createModuleListeners () Возвращает список |
boolean | filterByRunnerType ( IConfiguration config,Примените фильтрацию по белому списку участников, удалив всех участников, которые не были занесены в белый список. |
| getAbisForBuildTargetArch ()Верните abis, поддерживаемый целевой архитектурой сборки хоста. |
| getHostAbis ()Возвращает abis хост-машины. |
void | setPrioritizeHostConfig (boolean prioritizeHostConfig)Установите опцию priorityize-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
Постоянное значение: «flag-overrides»
ENABLE_RESOLVE_SYM_LINKS
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»
КЛЮЧ_ПАРАМЕТРА
public static final String PARAMETER_KEY
Постоянное значение: «параметр»
PREPARER_WHITELIST
public static final String PREPARER_WHITELIST
Постоянное значение: «preparer-whitelist»
PRIMARY_ABI_RUN
public static final String PRIMARY_ABI_RUN
Постоянное значение: «primary-abi-only»
RANDOM_SEED
public static final String RANDOM_SEED
Постоянное значение: «random-seed»
RUNNER_WHITELIST
public static final String RUNNER_WHITELIST
Постоянное значение: «runner-whitelist»
SKIP_HOST_ARCH_CHECK
public static final String SKIP_HOST_ARCH_CHECK
Постоянное значение: «skip-host-arch-check»
ПРОПУСК_ПОСТАНОВКИ_АРТИФАКТОВ
public static final String SKIP_STAGING_ARTIFACTS
Постоянное значение: «skip-staging-artifacts»
SKIP_SYSTEM_STATUS_CHECKER
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"
ТЕСТ_ТИП_ЗНАЧЕНИЕ_ПРОИЗВОДИТЕЛЬНОСТЬ
public static final String TEST_TYPE_VALUE_PERFORMANCE
Постоянное значение: «производительность»
TOKEN_KEY
public static final String TOKEN_KEY
Постоянное значение: «токен»
Поля
mEnableResolveSymlinks
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
publicgetAbis (ITestDevice device)
Получает набор ABI, поддерживаемых как тестированием совместимости AbiUtils.getAbisSupportedByCompatibility() , так и тестируемым устройством.
| Параметры | |
|---|---|
device | ITestDevice |
| Возврат | |
|---|---|
| Набор ABI для запуска тестов |
| Броски | |
|---|---|
| com.android.tradefed.device.DeviceNotAvailableException |
DeviceNotAvailableException | |
getAbisForBuildTargetArchFromSuite
public staticgetAbisForBuildTargetArchFromSuite ()
Возвращает возможный abis из TestSuiteInfo.
| Возврат | |
|---|---|
| |
получитьBuildInfo
public IBuildInfo getBuildInfo ()
Реализация ITestSuite может потребовать информацию о сборке для загрузки тестов.
| Возврат | |
|---|---|
IBuildInfo | |
получитьКонфигурацию
public final IConfiguration getConfiguration ()
Возвращает вызов IConfiguration .
| Возврат | |
|---|---|
IConfiguration | |
получить устройство
public ITestDevice getDevice ()
Проведите тестирование устройства.
| Возврат | |
|---|---|
ITestDevice | ITestDevice |
getDirectModule
public ModuleDefinition getDirectModule ()
Возвращает ModuleDefinition для непосредственного выполнения или null, если его еще нет (когда ITestSuite еще не был сегментирован).
| Возврат | |
|---|---|
ModuleDefinition | |
getIntraModuleSharding
public boolean getIntraModuleSharding ()
| Возврат | |
|---|---|
boolean | |
получитьInvocationContext
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 | |
получитьRequiredTokens
publicgetRequiredTokens (TestInformation testInfo)
Возвращает список необходимых токенов для теста. Возвращает null, если токен не поддерживается.
| Параметры | |
|---|---|
testInfo | TestInformation |
| Возврат | |
|---|---|
| |
getRuntimeHint
public long getRuntimeHint ()
Возвращает ожидаемое время выполнения теста в миллисекундах. Это время используется для балансировки нагрузки при выполнении шардированных тестов.
| Возврат | |
|---|---|
long | |
getTestsDir
public File getTestsDir ()
| Возврат | |
|---|---|
File | |
isRemoveModuleBuffering
public boolean isRemoveModuleBuffering ()
| Возврат | |
|---|---|
boolean | |
isSplitting
public boolean isSplitting ()
Возвращает true, если мы в данный момент находимся в IShardableTest.split(int) .
| Возврат | |
|---|---|
boolean | |
loadTests
public abstractloadTests ()
Абстрактный метод для загрузки конфигурации тестов, которые будут запущены. Каждый тест определяется IConfiguration и уникальным именем, под которым он будет выдавать результаты.
| Возврат | |
|---|---|
| |
отчет не выполнен
public void reportNotExecuted (ITestInvocationListener listener, String message)
Сообщите о невыполненных тестах основному слушателю. Они должны быть отмечены как невыполненные с сообщением NOT_EXECUTED_FAILURE .
| Параметры | |
|---|---|
listener | ITestInvocationListener : основной прослушиватель, куда будут передаваться невыполненные результаты. |
message | String : сообщение, которое будет связано с невыполненной ошибкой. |
отчет не выполнен
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 (abis)
| Параметры | |
|---|---|
abis | |
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 |
setIntraModuleSharding
public void setIntraModuleSharding (boolean intraModuleSharding)
| Параметры | |
|---|---|
intraModuleSharding | boolean |
setInvocationContext
public void setInvocationContext (IInvocationContext invocationContext)
| Параметры | |
|---|---|
invocationContext | IInvocationContext |
setMetricCollectors
public void setMetricCollectors (collectors)
Задает список IMetricCollector , определенных для тестового запуска.
| Параметры | |
|---|---|
collectors | |
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 (systemCheckers)
Устанавливает ISystemStatusChecker из конфигурации для теста.
| Параметры | |
|---|---|
systemCheckers | |
setTestLogger
public void setTestLogger (ITestLogger testLogger)
Внедряет экземпляр ITestLogger
| Параметры | |
|---|---|
testLogger | ITestLogger |
расколоть
publicsplit (Integer shardCountHint, TestInformation testInfo)
Альтернативная версия split(int) , которая также предоставляет TestInformation , содержащую раннюю информацию от родительского объекта, создающего шарды. Это полезно, если во время шардинга требуется доступ к таким данным, как информация об устройстве или сборке.
| Параметры | |
|---|---|
shardCountHint | Integer : количество попыток осколков. |
testInfo | TestInformation : Родительская TestInformation |
| Возврат | |
|---|---|
| набор подтестов, которые будут выполняться отдельно, или null если тест в данный момент не поддается сегментированию |
Защищенные методы
createModuleListeners
protectedcreateModuleListeners ()
Возвращает список слушателей ITestInvocationListener применимых к уровню ModuleListener . Эти слушатели будут повторно использоваться для каждого модуля, они не будут создаваться повторно, поэтому они не должны принимать внутреннее состояние.
| Возврат | |
|---|---|
| |
filterByRunnerType
protected boolean filterByRunnerType (IConfiguration config,allowedRunners)
Примените фильтрацию по белому списку исполнителей, удалив все исполнители, не внесённые в белый список. Если в конфигурации несколько исполнителей, некоторые из них могут быть удалены, но конфигурация всё равно будет работать.
| Параметры | |
|---|---|
config | IConfiguration : оцениваемая IConfiguration . |
allowedRunners | : Текущий белый список участников. |
| Возврат | |
|---|---|
boolean | True, если запуск модуля конфигурации разрешен, в противном случае — false. |
получитьAbisForBuildTargetArch
protectedgetAbisForBuildTargetArch ()
Возвращает abis, поддерживаемый целевой архитектурой сборки хоста. Предоставляется для тестирования.
| Возврат | |
|---|---|
| |
getHostAbis
protectedgetHostAbis ()
Возвращает abis хост-машины.
| Возврат | |
|---|---|
| |
setPrioritizeHostConfig
protected void setPrioritizeHostConfig (boolean prioritizeHostConfig)
Установите опцию priorityize-host-config.
| Параметры | |
|---|---|
prioritizeHostConfig | boolean : true, чтобы отдать приоритет конфигурации хоста, т. е. запустить проверку хоста, если это возможно. |
shouldModuleRun
protected boolean shouldModuleRun (ModuleDefinition module)
| Параметры | |
|---|---|
module | ModuleDefinition |
| Возврат | |
|---|---|
boolean | |