UiAutomatorRunner

public class UiAutomatorRunner
extends Object implements IRemoteAndroidTestRunner

java.lang.Object
com.android.tradefed.testtype.UiAutomatorRunner


Запускает тест UI Automator на устройстве и сообщает о результатах. UI Automator test — это специализированный инструмент для запуска автоматизированных тестов пользовательского интерфейса, использующий фреймворк UI Automator. Инструмент запуска тестов на устройстве эмулирует формат вывода инструментальных тестов, что позволяет повторно использовать существующий код парсинга в ddmlib и TF. По сути, это обертка над следующей командой: adb shell uiautomator runtest (jar-файлы) -e class (тестовые классы) ...

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

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

UiAutomatorRunner ( IDevice remoteDevice, String[] jarPaths, String runnerPath)

Создайте объект UiAutomatorRunner для запуска тестов автоматизации пользовательского интерфейса.

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

void addBooleanArg (String name, boolean value)

Добавляет логический аргумент для включения в команду инструментирования.

void addInstrumentationArg (String name, String value)

Добавляет аргумент для включения в команду инструментирования.

void cancel ()

Запрос на отмену данного тестового запуска.

IRemoteAndroidTestRunner.CoverageOutput getCoverageOutputType ()

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

String getPackageName ()

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

String getRunnerName ()

Возвращает имя класса UiAutomatorTestRunner по умолчанию.

void removeInstrumentationArg (String name)

Удаляет ранее добавленный аргумент.

void run ( ITestRunListener... listeners)

Выполните этот тестовый запуск.

void run (Collection< ITestRunListener > listeners)

Выполните этот тестовый запуск.

void setAdditionalTestOutputLocation (String additionalTestDataPath)

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

void setClassName (String className)

Этот параметр запускает только тесты в данном классе. Его необходимо вызвать перед вызовом функции 'run'.

void setClassNames (String[] classNames)

Настраивает запуск только тестов в предоставленных классах. Необходимо вызвать перед вызовом функции 'run'.

void setCoverage (boolean coverage)

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

void setCoverageReportLocation (String arg0)

Задает местоположение сгенерированных отчетов о покрытии кода.

void setDebug (boolean debug)

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

void setIgnoreSighup (boolean value)

Устанавливает в uiautomator параметр, позволяющий игнорировать сигнал SIGHUP.

void setLogOnly (boolean logOnly)

Этот тестовый запуск переключается в режим только логирования — выполнение теста пропускается.

void setMaxTimeToOutputResponse (long timeout, TimeUnit unit)

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

void setMaxTimeout (long maxTimeout, TimeUnit unit)

Устанавливает максимально допустимое время для завершения работы измерительного оборудования.

void setMaxtimeToOutputResponse (int maxTimeToOutputResponse)

Этот метод устарел. Используйте вместо него setMaxTimeToOutputResponse(long,TimeUnit) .

void setMethodName (String className, String testName)

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

void setRunName (String runName)

Задайте пользовательское имя запуска, которое будет передаваться в ITestRunListener при run(ITestRunListener)

Если название не указано, будет использовано имя пакета.

void setTestCollection (boolean b)

Переводит этот тестовый запуск в режим сбора тестовых данных.

void setTestPackageName (String packageName)

Задает запуск всех тестов в указанном пакете. Должен быть вызван перед вызовом функции 'run'.

void setTestSize ( IRemoteAndroidTestRunner.TestSize size)

Настраивает запуск только тестов заданного размера.

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

String getRunCommand ()
String getRunnerPath ()

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

UiAutomatorRunner

public UiAutomatorRunner (IDevice remoteDevice, 
                String[] jarPaths, 
                String runnerPath)

Создайте объект UiAutomatorRunner для запуска тестов автоматизации пользовательского интерфейса.

Параметры
remoteDevice IDevice : удалённое устройство для взаимодействия: запуск тестов, сбор результатов и т. д.

jarPaths String : пути к JAR-файлам, где находятся тестовые случаи UI Automator; пути должны быть абсолютными или относительными к /data/local/tmp/ на устройстве.

runnerPath String : альтернативный вариант запуска uiautomator, который следует использовать; может быть null , в этом случае будет использоваться значение по умолчанию.

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

addBooleanArg

public void addBooleanArg (String name, 
                boolean value)

Добавляет логический аргумент для включения в команду инструментирования.

Параметры
name String : имя аргумента пакета инструментов

value boolean : значение аргумента

addInstrumentationArg

public void addInstrumentationArg (String name, 
                String value)

Добавляет аргумент для включения в команду инструментирования.

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

Параметры
name String : имя аргумента пакета инструментов

value String : значение аргумента

отмена

public void cancel ()

Запрос на отмену данного тестового запуска.

getCoverageOutputType

public IRemoteAndroidTestRunner.CoverageOutput getCoverageOutputType ()

Возвращает тип тестового покрытия, создаваемого средством запуска тестов. См. CoverageOutput .

Возвраты
IRemoteAndroidTestRunner.CoverageOutput

getPackageName

public String getPackageName ()

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

Возвраты
String

getRunnerName

public String getRunnerName ()

Возвращает имя класса UiAutomatorTestRunner по умолчанию.

Возвраты
String

removeInstrumentationArg

public void removeInstrumentationArg (String name)

Удаляет ранее добавленный аргумент.

Параметры
name String : имя аргумента пакета инструментов, который нужно удалить.

бегать

public void run (ITestRunListener... listeners)

Выполните этот тестовый запуск.

Удобный метод для run(Collection) .

Параметры
listeners ITestRunListener : прослушивает результаты тестов.

Броски
AdbCommandRejectedException
IOException
ShellCommandUnresponsiveException
TimeoutException

бегать

public void run (Collection<ITestRunListener> listeners)

Выполните этот тестовый запуск.

Параметры
listeners Collection : набор слушателей для получения результатов тестирования.

Броски
AdbCommandRejectedException
IOException
ShellCommandUnresponsiveException
TimeoutException

setAdditionalTestOutputLocation

public void setAdditionalTestOutputLocation (String additionalTestDataPath)

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

Параметры
additionalTestDataPath String

setClassName

public void setClassName (String className)

Этот параметр запускает только тесты в данном классе. Его необходимо вызвать перед вызовом функции 'run'.

Параметры
className String : полное имя класса (например, xyz)

setClassNames

public void setClassNames (String[] classNames)

Настраивает запуск только тестов в предоставленных классах. Необходимо вызвать перед вызовом функции 'run'.

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

Параметры
classNames String : массив полных имен классов (например, xyz)

setCoverage

public void setCoverage (boolean coverage)

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

Параметры
coverage boolean

setCoverageReportLocation

public void setCoverageReportLocation (String arg0)

Задает местоположение сгенерированных отчетов о покрытии кода.

Параметры
arg0 String

setDebug

public void setDebug (boolean debug)

Устанавливает режим отладки для данного запуска тестов. Если значение равно true, средство запуска тестов Android будет ждать подключения отладчика, прежде чем продолжить выполнение тестов.

Параметры
debug boolean

setIgnoreSighup

public void setIgnoreSighup (boolean value)

Устанавливает в uiautomator параметр, позволяющий игнорировать сигнал SIGHUP.

Параметры
value boolean : игнорировать сигнал, если установлено значение true.

setLogOnly

public void setLogOnly (boolean logOnly)

Этот тестовый запуск переключается в режим только логирования — выполнение теста пропускается.

Параметры
logOnly boolean

setMaxTimeToOutputResponse

public void setMaxTimeToOutputResponse (long timeout, 
                TimeUnit unit)

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

Это позволяет установить тайм-аут на случай, если тесты зависнут и никогда не завершатся. Это отличается от обычного тайм-аута соединения.

По умолчанию тайм-аут не указывается.

Параметры
timeout long : максимальное время, в течение которого команда может не выдавать никакого ответа. Значение 0 означает, что метод будет ждать вывода команды бесконечно (пока receiver не отменит выполнение) и никогда не выдаст исключение.

unit TimeUnit : Единицы измерения для ненулевых значений maxTimeToOutputResponse и maxTimeout .

setMaxTimeout

public void setMaxTimeout (long maxTimeout, 
                TimeUnit unit)

Устанавливает максимально допустимое время для завершения работы измерительного оборудования.

Это позволяет установить тайм-аут на случай, если тесты зависнут и никогда не завершатся. Это отличается от обычного тайм-аута соединения.

По умолчанию тайм-аут не указывается.

Параметры
maxTimeout long : максимальное время, в течение которого команда может не выдавать никакого ответа. Значение 0 означает, что метод будет ждать вывода команды бесконечно (пока receiver не отменит выполнение) и никогда не выдаст исключение.

unit TimeUnit : Единицы измерения для ненулевых значений maxTimeToOutputResponse и maxTimeout .

setMaxtimeToOutputResponse

public void setMaxtimeToOutputResponse (int maxTimeToOutputResponse)

Этот метод устарел.
Вместо этого используйте setMaxTimeToOutputResponse(long,TimeUnit) .

Параметры
maxTimeToOutputResponse int

setMethodName

public void setMethodName (String className, 
                String testName)

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

Параметры
className String : полное имя класса (например, xyz)

testName String : имя метода

setRunName

public void setRunName (String runName)

Задайте пользовательское имя запуска, которое будет передаваться в ITestRunListener при run(ITestRunListener)

Если название не указано, будет использовано имя пакета.

setTestCollection

public void setTestCollection (boolean b)

Переводит этот запуск тестов в режим сбора тестов. Если значение равно true, выполнение тестов будет пропущено, и будут установлены все необходимые аргументы запуска, требуемые для успешного сбора тестов.

Параметры
b boolean

setTestPackageName

public void setTestPackageName (String packageName)

Задает запуск всех тестов в указанном пакете. Должен быть вызван перед вызовом функции 'run'.

Параметры
packageName String : полное имя пакета (например, xyz)

setTestSize

public void setTestSize (IRemoteAndroidTestRunner.TestSize size)

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

Параметры
size IRemoteAndroidTestRunner.TestSize : TestSize для запуска.

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

getRunCommand

protected String getRunCommand ()

Возвраты
String

getRunnerPath

protected String getRunnerPath ()

Возвраты
String