SubprocessResultsReporter
public class SubprocessResultsReporter
extends Object implements AutoCloseable, ILogSaverListener , ISupportGranularResults , ITestInvocationListener
| java.lang.Object | |
| ↳ | com.android.tradefed.result.SubprocessResultsReporter |
Реализует ITestInvocationListener который указывается в качестве result_reporter и пересылает из дочернего процесса результаты тестов, запусков тестов и вызовов тестов.
Краткое содержание
Государственные строители | |
|---|---|
SubprocessResultsReporter () | |
Общедоступные методы | |
|---|---|
void | close () |
TestSummary | getSummary ()Позволяет InvocationListener возвращать сводку. |
void | invocationEnded (long elapsedTime)Сообщает о завершении вызова, будь то успешное завершение или возникновение ошибки. |
void | invocationFailed ( FailureDescription failure)Сообщает о неполном вызове из-за какой-либо ошибки. |
void | invocationFailed (Throwable cause)Сообщает о неполном вызове из-за какой-либо ошибки. |
void | invocationStarted ( IInvocationContext context)Сообщает о начале выполнения теста. |
void | logAssociation (String dataName, LogFile logFile) В некоторых случаях лог должен быть тесно связан с тестовыми случаями, но сделать это непосредственно в функции обратного вызова |
void | printEvent (String key, Object event)Вспомогательная функция для вывода ключа события, а затем объекта JSON. |
void | setOutputTestLog (boolean outputTestLog)Определяет, следует ли выводить результаты теста в лог. |
boolean | supportGranularResults ()Возвращает True, если система поддерживает детализированные результаты, и False в противном случае. |
void | testAssumptionFailure ( TestDescription testId, String trace)Вызывается, когда атомарный тест указывает на то, что он предполагает ложное условие. |
void | testAssumptionFailure ( TestDescription testId, FailureDescription failure)Вызывается, когда атомарный тест указывает на то, что он предполагает ложное условие. |
void | testEnded ( TestDescription testId, long endTime, HashMap<String, MetricMeasurement.Metric> metrics) Альтернатива функции |
void | testEnded ( TestDescription testId, HashMap<String, MetricMeasurement.Metric> metrics)Сообщает о завершении выполнения отдельного тестового случая. |
void | testFailed ( TestDescription testId, FailureDescription failure)Сообщает о сбое отдельного тестового случая. |
void | testFailed ( TestDescription testId, String reason)Сообщает о сбое отдельного тестового случая. |
void | testIgnored ( TestDescription testId)Вызывается, когда тест выполняться не будет, как правило, потому что тестовый метод аннотирован с помощью org.junit.Ignore. |
void | testLog (String dataName, LogDataType dataType, InputStreamSource dataStream)Предоставляет соответствующие данные журнала или отладочные данные из вызова теста. |
void | testModuleEnded ()Сообщает об окончании выполнения модуля. |
void | testModuleStarted ( IInvocationContext moduleContext)Сообщает о начале работы модуля. |
void | testRunEnded (long time, HashMap<String, MetricMeasurement.Metric> runMetrics)Сообщает об окончании тестового запуска. |
void | testRunFailed ( FailureDescription failure) Сообщается, что запуск тестового запуска не завершился из-за ошибки, описанной в |
void | testRunFailed (String reason)Сообщается, что тестовый запуск не завершился из-за критической ошибки. |
void | testRunStarted (String runName, int testCount, int attemptNumber)Сообщает о начале тестового запуска. |
void | testRunStarted (String runName, int testCount)Сообщает о начале тестового запуска. |
void | testRunStarted (String runName, int testCount, int attemptNumber, long startTime)Сообщает о начале тестового запуска. |
void | testRunStopped (long arg0)Тестирование отчетов было прервано до завершения по запросу пользователя. |
void | testSkipped ( TestDescription testId, SkipReason reason)Вызывается, когда тест пропущен и не выполнен по причине, которая обычно не ожидается. |
void | testStarted ( TestDescription testId, long startTime) Альтернатива функции |
void | testStarted ( TestDescription testId)Сообщает о начале выполнения отдельного тестового случая. |
Государственные строители
SubprocessResultsReporter
public SubprocessResultsReporter ()
Общедоступные методы
закрывать
public void close ()
получитьСводка
public TestSummary getSummary ()
Позволяет InvocationListener возвращать сводку.
| Возвраты | |
|---|---|
TestSummary | TestSummary суммирующий результаты выполнения, или значение null. |
вызов завершен
public void invocationEnded (long elapsedTime)
Сообщает о завершении вызова, будь то успешное завершение или возникновение ошибки.
Будет автоматически вызвана фреймворком TradeFederation.| Параметры | |
|---|---|
elapsedTime | long : время выполнения вызова в миллисекундах |
вызов не удался
public void invocationFailed (FailureDescription failure)
Сообщает о неполном вызове из-за какой-либо ошибки.
Будет автоматически вызвана фреймворком TradeFederation.
| Параметры | |
|---|---|
failure | FailureDescription : описание причины сбоя FailureDescription |
вызов не удался
public void invocationFailed (Throwable cause)
Сообщает о неполном вызове из-за какой-либо ошибки.
Будет автоматически вызвана фреймворком TradeFederation.| Параметры | |
|---|---|
cause | Throwable : Throwable причина отказа. |
вызовНачался
public void invocationStarted (IInvocationContext context)
Сообщает о начале выполнения теста.
Этот метод будет автоматически вызываться фреймворком TradeFederation. Для поддержки отправки данных с нескольких устройств разработчикам необходимо переопределить этот метод.
| Параметры | |
|---|---|
context | IInvocationContext : информация о вызове |
logAssociation
public void logAssociation (String dataName,
LogFile logFile) В некоторых случаях необходимо обеспечить тесную связь между логом и тестовыми примерами, но сделать это непосредственно в функции обратного вызова testLogSaved(String,LogDataType,InputStreamSource,LogFile) невозможно. Поэтому данная функция обратного вызова позволяет явно установить тесную связь.
| Параметры | |
|---|---|
dataName | String : Название данных |
logFile | LogFile : LogFile , в который были записаны данные ранее и который должен быть связан с тестовым случаем. |
printEvent
public void printEvent (String key,
Object event)Вспомогательная функция для вывода ключа события, а затем объекта JSON.
| Параметры | |
|---|---|
key | String |
event | Object |
setOutputTestLog
public void setOutputTestLog (boolean outputTestLog)
Определяет, следует ли выводить результаты теста в лог.
| Параметры | |
|---|---|
outputTestLog | boolean |
supportGranularResults
public boolean supportGranularResults ()
Возвращает True, если система поддерживает детализированные результаты, и False в противном случае.
| Возвраты | |
|---|---|
boolean | |
testAssumptionFailure
public void testAssumptionFailure (TestDescription testId, String trace)
Вызывается, когда атомарный тест указывает на то, что он предполагает ложное условие.
| Параметры | |
|---|---|
testId | TestDescription : идентифицирует тест |
trace | String : трассировка стека ошибки |
testAssumptionFailure
public void testAssumptionFailure (TestDescription testId, FailureDescription failure)
Вызывается, когда атомарный тест указывает на то, что он предполагает ложное условие.
| Параметры | |
|---|---|
testId | TestDescription : идентифицирует тест |
failure | FailureDescription : Описание ошибки и контекст её FailureDescription . |
тест завершен
public void testEnded (TestDescription testId, long endTime, HashMap<String, MetricMeasurement.Metric> metrics)
Альтернатива функции testEnded(TestDescription,Map) , позволяющая напрямую указать время окончания. Для более точного измерения можно использовать в сочетании с testStarted(TestDescription,long) .
| Параметры | |
|---|---|
testId | TestDescription : идентифицирует тест |
endTime | long : время окончания теста, измеренное с помощью System.currentTimeMillis() |
metrics | HashMap : Map сгенерированных метрик |
тест завершен
public void testEnded (TestDescription testId, HashMap<String, MetricMeasurement.Metric> metrics)
Сообщает о завершении выполнения отдельного тестового случая.
Если testFailed(TestDescription, FailureDescription) не был вызван, тест пройден успешно. Также возвращает любые метрики ключ/значение, которые могли быть получены во время выполнения тестового случая.
| Параметры | |
|---|---|
testId | TestDescription : идентифицирует тест |
metrics | HashMap : Map сгенерированных метрик |
тест не пройден
public void testFailed (TestDescription testId, FailureDescription failure)
Сообщает о сбое отдельного тестового случая.
Эта функция будет вызвана в промежутке между testStarted и testEnded.
| Параметры | |
|---|---|
testId | TestDescription : идентифицирует тест |
failure | FailureDescription : Описание ошибки и контекст её FailureDescription . |
тест не пройден
public void testFailed (TestDescription testId, String reason)
Сообщает о сбое отдельного тестового случая.
Эта функция будет вызвана в промежутке между testStarted и testEnded.
| Параметры | |
|---|---|
testId | TestDescription : идентифицирует тест |
reason | String : трассировка стека ошибки |
тест проигнорирован
public void testIgnored (TestDescription testId)
Вызывается, когда тест выполняться не будет, как правило, потому что тестовый метод аннотирован с помощью org.junit.Ignore.
| Параметры | |
|---|---|
testId | TestDescription : идентифицирует тест |
testLog
public void testLog (String dataName,
LogDataType dataType,
InputStreamSource dataStream)Предоставляет соответствующие данные журнала или отладочные данные из вызова теста.
Необходимо вызвать передERROR(ITestInvocationListener.invocationFailed(Throwable)/ITestInvocationListener#invocationFailed(java.lang.Throwable) ITestInvocationListener.invocationFailed(Throwable)) или ERROR(/ITestInvocationListener#invocationEnded(long)) Фреймворк TradeFederation автоматически вызовет этот метод, предоставив лог хоста и, если применимо, лог устройства.| Параметры | |
|---|---|
dataName | String : String описательное имя данных. Например, "device_logcat". Обратите внимание, что dataName может быть не уникальным для каждого вызова. То есть разработчики должны иметь возможность обрабатывать несколько вызовов с одним и тем же dataName. |
dataType | LogDataType : тип данных LogDataType |
dataStream | InputStreamSource : InputStreamSource данных. Разработчикам следует вызвать createInputStream для начала чтения данных и убедиться, что результирующий InputStream закрыт по завершении. Вызывающие стороны должны убедиться, что источник данных остается доступным до завершения метода testLog. |
testModuleEnded
public void testModuleEnded ()
Сообщает об окончании выполнения модуля.
testModuleStarted
public void testModuleStarted (IInvocationContext moduleContext)
Сообщает о начале выполнения модуля. Этот обратный вызов связан с testModuleEnded() и является необязательным в последовательности. Он используется только во время запуска, использующего модули: в случае запуска тестов на основе тестовых наборов.
| Параметры | |
|---|---|
moduleContext | IInvocationContext : IInvocationContext модуля. |
testRunEnded
public void testRunEnded (long time,
HashMap<String, MetricMeasurement.Metric> runMetrics)Сообщает об окончании выполнения теста. FIXME: Мы не можем иметь два интерфейса Map<> с разными типами, поэтому здесь необходимо использовать HashMap.
| Параметры | |
|---|---|
time | long : устройство сообщило о прошедшем времени в миллисекундах |
runMetrics | HashMap : пары ключ-значение, отображаемые в конце выполнения теста с помощью Metric . |
testRunFailed
public void testRunFailed (FailureDescription failure)
Сообщается, что запуск тестового запуска не завершился из-за ошибки, описанной в FailureDescription .
| Параметры | |
|---|---|
failure | FailureDescription : Описание ошибки и контекст её FailureDescription . |
testRunFailed
public void testRunFailed (String reason)
Сообщается, что тестовый запуск не завершился из-за критической ошибки.
| Параметры | |
|---|---|
reason | String : String описывающая причину сбоя выполнения. |
testRunStarted
public void testRunStarted (String runName,
int testCount,
int attemptNumber)Сообщает о начале тестового запуска.
| Параметры | |
|---|---|
runName | String : название тестового запуска |
testCount | int : общее количество тестов в тестовом запуске |
attemptNumber | int : порядковый номер, идентифицирующий различные попытки выполнения одного и того же runName, которые выполняются несколько раз. attemptNumber имеет индексацию от 0 и должен увеличиваться каждый раз при новом запуске. Например, если тест повторяется 3 раза, то всего должно быть 4 запуска под одним и тем же runName, а attemptNumber принимает значения от 0 до 3. |
testRunStarted
public void testRunStarted (String runName,
int testCount)Сообщает о начале тестового запуска.
| Параметры | |
|---|---|
runName | String : название тестового запуска |
testCount | int : общее количество тестов в тестовом запуске |
testRunStarted
public void testRunStarted (String runName,
int testCount,
int attemptNumber,
long startTime)Сообщает о начале тестового запуска.
| Параметры | |
|---|---|
runName | String : название тестового запуска |
testCount | int : общее количество тестов в тестовом запуске |
attemptNumber | int : порядковый номер, идентифицирующий различные попытки выполнения одного и того же runName, которые выполняются несколько раз. attemptNumber имеет индексацию от 0 и должен увеличиваться каждый раз при новом запуске. Например, если тест повторяется 3 раза, то всего должно быть 4 запуска под одним и тем же runName, а attemptNumber принимает значения от 0 до 3. |
startTime | long : время начала выполнения, измеренное с помощью System.currentTimeMillis() |
testRunStopped
public void testRunStopped (long arg0)
Тестирование отчетов было прервано до завершения по запросу пользователя.
TODO: в настоящее время не используется, рассмотрите возможность удаления.
| Параметры | |
|---|---|
arg0 | long : устройство сообщило о прошедшем времени в миллисекундах |
тест пропущен
public void testSkipped (TestDescription testId, SkipReason reason)
Вызывается, когда тест пропущен и не выполнен по нетипичной причине. Будет предпринята попытка повторного выполнения таких тестов для обеспечения их корректного выполнения.
| Параметры | |
|---|---|
testId | TestDescription : идентифицирует тест |
reason | SkipReason : SkipReason |
тест начат
public void testStarted (TestDescription testId, long startTime)
Альтернатива функции testStarted(TestDescription) , где мы также указываем время начала теста, в сочетании с testEnded(TestDescription,long,Map) для более точного измерения.
| Параметры | |
|---|---|
testId | TestDescription : идентифицирует тест |
startTime | long : время начала теста, измеренное с помощью System.currentTimeMillis() |
тест начат
public void testStarted (TestDescription testId)
Сообщает о начале отдельного тестового случая. Более старый интерфейс, следует использовать testStarted(TestDescription) везде, где это возможно.
| Параметры | |
|---|---|
testId | TestDescription : идентифицирует тест |