IsolatedHostTest
public class IsolatedHostTest
extends Object implements IBuildReceiver , IConfigurationReceiver , IRemoteTest , IShardableTest , ITestAnnotationFilterReceiver , ITestCollector , ITestFilterReceiver
| java.lang.Object | |
| ↳ | com.android.tradefed.testtype.IsolatedHostTest |
Реализован инструмент запуска тестов TradeFed, использующий дочерний процесс для выполнения тестов в среде с низкой зависимостью от основного процесса, вместо их выполнения в главном процессе.
Этот алгоритм запуска предполагает, что все настроенные JAR-файлы находятся в одном тестовом каталоге, и запускает дочерний процесс в этом каталоге. Поскольку ему необходимо выбрать рабочий каталог для дочернего процесса, а для многих тестов наличие тестового каталога является преимуществом, это был наилучший из доступных компромиссов.
Краткое содержание
Государственные строители | |
|---|---|
IsolatedHostTest () | |
Общедоступные методы | |
|---|---|
void | addAllExcludeAnnotation (Set<String> notAnnotations) Добавляет |
void | addAllExcludeFilters (Set<String> filters) Добавляет |
void | addAllIncludeAnnotation (Set<String> annotations) Добавляет |
void | addAllIncludeFilters (Set<String> filters) Добавляет |
void | addExcludeAnnotation (String notAnnotation)Добавляет аннотацию для исключения тестов, если они помечены этой аннотацией. |
void | addExcludeFilter (String filter)Добавляет фильтр, позволяющий исключить определенные тесты. |
void | addIncludeAnnotation (String annotation)Добавляет аннотацию, которая будет включена, если тест помечен этой аннотацией. |
void | addIncludeFilter (String filter)Добавляет фильтр, определяющий, какие тесты следует включить. |
void | clearExcludeAnnotations ()Удалите все отслеживаемые в данный момент аннотации исключения. |
void | clearExcludeFilters ()Удалите все отслеживаемые в данный момент фильтры исключения. |
void | clearIncludeAnnotations ()Удалите все отслеживаемые в данный момент включаемые аннотации. |
void | clearIncludeFilters ()Удалите все отслеживаемые в данный момент фильтры включения. |
String | compileClassPath ()Создает путь к классам для дочернего процесса, включающий необходимые JAR-файлы для запуска тестов. |
List<String> | compileCommandArgs (String classpath, File artifactsDir)Формирует аргументы команды для запуска дочернего процесса. |
void | deleteTempFiles () |
File | getCoverageExecFile () |
Set<String> | getExcludeAnnotations () Возвращает текущий |
Set<String> | getExcludeFilters () Возвращает текущий |
Set<String> | getIncludeAnnotations () Возвращает текущий |
Set<String> | getIncludeFilters () Возвращает текущий |
void | run ( TestInformation testInfo, ITestInvocationListener listener)Выполняет тесты и сообщает результаты слушателю. |
void | setBuild ( IBuildInfo build) |
void | setCollectTestsOnly (boolean shouldCollectTest)Включает или отключает режим сбора тестовых данных. |
void | setConfiguration ( IConfiguration configuration) Внедряет используемый объект |
void | setDebug (boolean debug) |
Collection< IRemoteTest > | split (int shardCount) Альтернативная версия функции |
void | uploadTestArtifacts (File logDir, ITestInvocationListener listener) |
boolean | useRavenwoodResources () |
boolean | useRobolectricResources () |
Защищенные методы | |
|---|---|
String | compileLdLibraryPathInner (String androidHostOut)Мы вызываем эту версию из модульного теста и напрямую передаем ANDROID_HOST_OUT. |
File | getJarFile (String jarName, TestInformation testInfo)Скопировано из HostTest для имитации используемой в нем системы модульного тестирования. |
void | setServer (ServerSocket server) |
Государственные строители
IsolatedHostTest
public IsolatedHostTest ()
Общедоступные методы
addAllExcludeAnnotation
public void addAllExcludeAnnotation (Set<String> notAnnotations)
Добавляет Set аннотаций, которые следует исключить, если тест помечен ими.
| Параметры | |
|---|---|
notAnnotations | Set |
addAllExcludeFilters
public void addAllExcludeFilters (Set<String> filters)
Добавляет Set фильтров, из которых следует исключить тесты.
| Параметры | |
|---|---|
filters | Set |
addAllIncludeAnnotation
public void addAllIncludeAnnotation (Set<String> annotations)
Добавляет Set аннотаций, которые будут включены, если тест помечен ими.
| Параметры | |
|---|---|
annotations | Set |
addAllIncludeFilters
public void addAllIncludeFilters (Set<String> filters)
Добавляет Set фильтров, определяющих, какие тесты следует включить.
| Параметры | |
|---|---|
filters | Set |
addExcludeAnnotation
public void addExcludeAnnotation (String notAnnotation)
Добавляет аннотацию для исключения тестов, если они помечены этой аннотацией.
| Параметры | |
|---|---|
notAnnotation | String |
addExcludeFilter
public void addExcludeFilter (String filter)
Добавляет фильтр, позволяющий исключить определенные тесты.
| Параметры | |
|---|---|
filter | String |
addIncludeAnnotation
public void addIncludeAnnotation (String annotation)
Добавляет аннотацию, которая будет включена, если тест помечен этой аннотацией.
| Параметры | |
|---|---|
annotation | String |
addIncludeFilter
public void addIncludeFilter (String filter)
Добавляет фильтр, определяющий, какие тесты следует включить.
| Параметры | |
|---|---|
filter | String |
clearExcludeAnnotations
public void clearExcludeAnnotations ()
Удалите все отслеживаемые в данный момент аннотации исключения.
clearExcludeFilters
public void clearExcludeFilters ()
Удалите все отслеживаемые в данный момент фильтры исключения.
clearIncludeAnnotations
public void clearIncludeAnnotations ()
Удалите все отслеживаемые в данный момент включаемые аннотации.
clearIncludeFilters
public void clearIncludeFilters ()
Удалите все отслеживаемые в данный момент фильтры включения.
compileClassPath
public String compileClassPath ()
Создает путь к классам для дочернего процесса, включающий необходимые JAR-файлы для запуска тестов.
| Возвраты | |
|---|---|
String | Строка, указывающая путь к классам, разделённый двоеточиями. |
compileCommandArgs
public List<String> compileCommandArgs (String classpath,
File artifactsDir)Формирует аргументы команды для запуска дочернего процесса.
| Параметры | |
|---|---|
classpath | String |
artifactsDir | File |
| Возвраты | |
|---|---|
List<String> | |
deleteTempFiles
public void deleteTempFiles ()
getCoverageExecFile
public File getCoverageExecFile ()
| Возвраты | |
|---|---|
File | |
getExcludeAnnotations
public Set<String> getExcludeAnnotations ()
Возвращает текущий Set аннотаций для исключения.
| Возвраты | |
|---|---|
Set<String> | |
getExcludeFilters
public Set<String> getExcludeFilters ()
Возвращает текущий Set исключаемых фильтров.
| Возвраты | |
|---|---|
Set<String> | |
getIncludeAnnotations
public Set<String> getIncludeAnnotations ()
Возвращает текущий Set аннотаций для включения.
| Возвраты | |
|---|---|
Set<String> | |
getIncludeFilters
public Set<String> getIncludeFilters ()
Возвращает текущий Set включаемых фильтров.
| Возвраты | |
|---|---|
Set<String> | |
бегать
public void run (TestInformation testInfo, ITestInvocationListener listener)
Выполняет тесты и сообщает результаты слушателю.
| Параметры | |
|---|---|
testInfo | TestInformation : Объект TestInformation , содержащий полезную информацию для запуска тестов. |
listener | ITestInvocationListener : ITestInvocationListener для результатов тестирования. |
| Броски | |
|---|---|
DeviceNotAvailableException | |
setCollectTestsOnly
public void setCollectTestsOnly (boolean shouldCollectTest)
Включает или отключает режим сбора тестовых данных.
setConfiguration
public void setConfiguration (IConfiguration configuration)
Внедряет используемый объект IConfiguration .
| Параметры | |
|---|---|
configuration | IConfiguration |
setDebug
public void setDebug (boolean debug)
| Параметры | |
|---|---|
debug | boolean |
расколоть
public Collection<IRemoteTest> split (int shardCount)
Альтернативная версия функции split() , которая также предоставляет количество шардов, которые пытаются запустить. Это полезно для некоторых средств запуска тестов, которые иногда не могут принимать произвольные решения.
| Параметры | |
|---|---|
shardCount | int : количество попыток создания шардов. |
| Возвраты | |
|---|---|
Collection< IRemoteTest > | набор подтестов, которые должны выполняться отдельно, или null если тест в данный момент не может быть разделен на сегменты. |
uploadTestArtifacts
public void uploadTestArtifacts (File logDir,
ITestInvocationListener listener)| Параметры | |
|---|---|
logDir | File |
listener | ITestInvocationListener |
useRavenwoodResources
public boolean useRavenwoodResources ()
| Возвраты | |
|---|---|
boolean | |
useRobolectricResources
public boolean useRobolectricResources ()
| Возвраты | |
|---|---|
boolean | |
Защищенные методы
compileLdLibraryPathInner
protected String compileLdLibraryPathInner (String androidHostOut)
Мы вызываем эту версию из модульного теста и напрямую передаем ANDROID_HOST_OUT. Она нам нужна, потому что в Java нет API для установки переменных окружения.
| Параметры | |
|---|---|
androidHostOut | String |
| Возвраты | |
|---|---|
String | |
getJarFile
protected File getJarFile (String jarName,
TestInformation testInfo)Скопировано из HostTest для имитации используемой в нем системы модульного тестирования.
Чтобы найти нашу банку, необходимо осмотреть несколько мест, где обычно находятся артефакты, для различных целей.
| Параметры | |
|---|---|
jarName | String |
testInfo | TestInformation |
| Возвраты | |
|---|---|
File | |
| Броски | |
|---|---|
FileNotFoundException | |
setServer
protected void setServer (ServerSocket server)
| Параметры | |
|---|---|
server | ServerSocket |