BasePostProcessor
public abstract class BasePostProcessor
extends Object implements IPostProcessor
| java.lang.Object | |
| ↳ | com.android.tradefed.postprocessor.BasePostProcessor |
Базовый IPostProcessor , который должна расширять каждая реализация. Убедитесь, что методы постобработки вызываются до формировщиков окончательного результата.
Краткое содержание
Публичные конструкторы | |
|---|---|
BasePostProcessor () | |
Публичные методы | |
|---|---|
final ITestInvocationListener | init ( ITestInvocationListener listener)Шаг инициализации постпроцессора. |
final void | invocationEnded (long elapsedTime)Сообщает, что вызов завершен либо успешно, либо из-за какой-либо ошибки. |
final void | invocationFailed ( FailureDescription failure)Сообщает о неполном вызове из-за какой-то ошибки. |
final void | invocationFailed (Throwable cause)Сообщает о неполном вызове из-за какой-то ошибки. |
void | invocationSkipped ( SkipReason reason)Сообщает о пропущенном вызове |
final void | invocationStarted ( IInvocationContext context)Прослушиватели вызовов для пересылки |
final boolean | isDisabled ()Возвращает True, если весь объект отключен (пропустить как настройку, так и демонтаж). |
final void | logAssociation (String dataName, LogFile logFile) В некоторых случаях журнал должен быть тесно связан с тестовыми случаями, но возможность сделать это в прямом обратном вызове Обновляет связь журнала с тестом. |
| processAllTestMetricsAndLogs (ListMultimap<String, MetricMeasurement.Metric> allTestMetrics,Реализуйте этот метод для агрегации показателей и журналов по всем тестам. |
abstract | processRunMetricsAndLogs (Реализуйте этот метод для создания набора новых метрик из существующих метрик и журналов. |
| processTestMetricsAndLogs ( TestDescription testDescription,Реализуйте этот метод для публикации показателей процесса и журналов каждого теста. |
final void | setLogSaver ( ILogSaver logSaver) Настройте |
void | setUp ()Переопределите этот метод в дочерних постпроцессорах для инициализации перед запуском теста. |
final void | testAssumptionFailure ( TestDescription test, String trace)Вызывается, когда атомарный тест сигнализирует, что он предполагает ложное условие. |
final void | testAssumptionFailure ( TestDescription test, FailureDescription failure)Вызывается, когда атомарный тест сигнализирует, что он предполагает ложное условие. |
final void | testEnded ( TestDescription test, long endTime, Альтернатива |
final void | testEnded ( TestDescription test,Сообщает об окончании выполнения отдельного тестового случая. |
final void | testFailed ( TestDescription test, FailureDescription failure)Сообщает о неудачном завершении отдельного тестового случая. |
final void | testFailed ( TestDescription test, String trace)Сообщает о неудачном завершении отдельного тестового случая. |
final void | testIgnored ( TestDescription test)Вызывается, когда тест не будет запущен, обычно потому, что метод теста аннотирован org.junit.Ignore. |
final void | testLog (String dataName, LogDataType dataType, InputStreamSource dataStream)Используйте этот метод для регистрации файла из реализации PostProcessor. |
final void | testLogSaved (String dataName, LogDataType dataType, InputStreamSource dataStream, LogFile logFile)Вызывается при сохранении журнала теста. |
final void | testModuleEnded ()Сообщает об окончании выполнения модуля. |
final void | testModuleStarted ( IInvocationContext moduleContext)Сообщает о начале работы модуля. |
final void | testRunEnded (long elapsedTime,Сообщается об окончании тестового прогона. |
final void | testRunFailed ( FailureDescription failure) Сообщается, что тестовый запуск не был завершен из-за сбоя, описанного |
final void | testRunFailed (String errorMessage)Тестовый запуск отчета не был завершен из-за фатальной ошибки. |
final void | testRunStarted (String runName, int testCount, int attemptNumber)Сообщает о начале тестового прогона. |
final void | testRunStarted (String runName, int testCount)Тестовый запуск обратных вызовов |
final void | testRunStarted (String runName, int testCount, int attemptNumber, long startTime)Сообщает о начале тестового прогона. |
final void | testRunStopped (long elapsedTime)Сообщает, что тестовый запуск был остановлен до завершения по запросу пользователя. |
final void | testSkipped ( TestDescription test, SkipReason reason)Вызывается, когда тест пропущен и не выполнен по причине, которая обычно не ожидается. |
final void | testStarted ( TestDescription test, long startTime) Альтернатива |
final void | testStarted ( TestDescription test)Обратные вызовы тестовых случаев |
Защищенные методы | |
|---|---|
void | cleanUp () |
MetricMeasurement.DataType | getMetricType ()При необходимости переопределите этот метод, чтобы изменить тип метрики. |
String | getRunName () |
Публичные конструкторы
BasePostProcessor
public BasePostProcessor ()
Публичные методы
инициализация
public final ITestInvocationListener init (ITestInvocationListener listener)
Этап инициализации постпроцессора. Гарантируется, что он будет вызван до любого из тестовых обратных вызовов.
| Параметры | |
|---|---|
listener | ITestInvocationListener |
| Возврат | |
|---|---|
ITestInvocationListener | |
вызовЗавершен
public final void invocationEnded (long elapsedTime)
Сообщает, что вызов завершен либо успешно, либо из-за какой-либо ошибки.
Будет автоматически вызываться фреймворком TradeFederation.| Параметры | |
|---|---|
elapsedTime | long : прошедшее время вызова в мс |
вызов не удался
public final void invocationFailed (FailureDescription failure)
Сообщает о неполном вызове из-за какой-то ошибки.
Будет автоматически вызываться фреймворком TradeFederation.
| Параметры | |
|---|---|
failure | FailureDescription : FailureDescription описывающее причину сбоя. |
вызов не удался
public final void invocationFailed (Throwable cause)
Сообщает о неполном вызове из-за какой-то ошибки.
Будет автоматически вызываться фреймворком TradeFederation.| Параметры | |
|---|---|
cause | Throwable : причина неудачи, Throwable |
вызовПропущен
public void invocationSkipped (SkipReason reason)
Сообщает о пропущенном вызове
| Параметры | |
|---|---|
reason | SkipReason |
вызовНачался
public final void invocationStarted (IInvocationContext context)
Прослушиватели вызовов для пересылки
| Параметры | |
|---|---|
context | IInvocationContext : информация о вызове |
isDisabled
public final boolean isDisabled ()
Возвращает True, если весь объект отключен (пропускаются как настройка, так и демонтаж). В противном случае — False.
| Возврат | |
|---|---|
boolean | |
logAssociation
public final void logAssociation (String dataName,
LogFile logFile) В некоторых случаях журнал должен быть тесно связан с тестовыми случаями, но сделать это напрямую с помощью обратного вызова testLogSaved(String, com.android.tradefed.result.LogDataType, com.android.tradefed.result.InputStreamSource, com.android.tradefed.result.LogFile) невозможно. Таким образом, этот обратный вызов позволяет явно задать тесную связь.
Обновляет связь журнала с тестом. Если этот метод вызывается во время теста, то журнал принадлежит тесту; в противном случае это будет журнал выполнения.
| Параметры | |
|---|---|
dataName | String : Имя данных |
logFile | LogFile : LogFile , который был зарегистрирован ранее и должен быть связан с тестовым случаем. |
processAllTestMetricsAndLogs
publicprocessAllTestMetricsAndLogs (ListMultimap<String, MetricMeasurement.Metric> allTestMetrics, allTestLogs)
Реализуйте этот метод для агрегации метрик и журналов по всем тестам. Метрики, полученные этим методом, будут представлены в виде метрик выполнения. Возвращать следует только новые сгенерированные метрики с уникальным именем ключа (конфликты с существующими ключами не допускаются).
| Параметры | |
|---|---|
allTestMetrics | ListMultimap : HashMultimap, хранящий метрики каждого теста, сгруппированные по названиям метрик. |
allTestLogs | : Карта, хранящая карту файлов журнала каждого теста, ключами которой являются имена их данных, с использованием TestDescription каждого теста в качестве ключей. |
| Возврат | |
|---|---|
| Набор вновь сгенерированных метрик из всех тестовых метрик. |
processRunMetricsAndLogs
public abstractprocessRunMetricsAndLogs ( rawMetrics, runLogs)
Реализуйте этот метод для генерации набора новых метрик на основе существующих метрик и журналов. Должны возвращаться только новые сгенерированные метрики с уникальным именем ключа (конфликты с существующими ключами не допускаются).
| Параметры | |
|---|---|
rawMetrics | : Набор необработанных показателей, доступных для запуска. |
runLogs | : Набор файлов журнала для тестового прогона. |
| Возврат | |
|---|---|
| Набор вновь сгенерированных метрик из метрик выполнения. |
processTestMetricsAndLogs
publicprocessTestMetricsAndLogs (TestDescription testDescription, testMetrics, testLogs)
Реализуйте этот метод для публикации метрик и журналов обработки каждого теста. Должны возвращаться только новые сгенерированные метрики с уникальным именем ключа (конфликты с существующими ключами не допускаются).
| Параметры | |
|---|---|
testDescription | TestDescription : объект TestDescription, описывающий тест. |
testMetrics | : Набор показателей из теста. |
testLogs | : Набор файлов, зарегистрированных во время теста. |
| Возврат | |
|---|---|
| Набор вновь сгенерированных метрик из тестовых метрик. |
setLogSaver
public final void setLogSaver (ILogSaver logSaver)
Настройте ILogSaver , чтобы разрешить разработчику сохранять файлы.
| Параметры | |
|---|---|
logSaver | ILogSaver : ILogSaver |
настраивать
public void setUp ()
Переопределите этот метод в дочерних постпроцессорах для инициализации перед запуском теста.
testAssumptionFailure
public final void testAssumptionFailure (TestDescription test, String trace)
Вызывается, когда атомарный тест сигнализирует, что он предполагает ложное условие.
| Параметры | |
|---|---|
test | TestDescription : идентифицирует тест |
trace | String : трассировка стека отказа |
testAssumptionFailure
public final void testAssumptionFailure (TestDescription test, FailureDescription failure)
Вызывается, когда атомарный тест сигнализирует, что он предполагает ложное условие.
| Параметры | |
|---|---|
test | TestDescription : идентифицирует тест |
failure | FailureDescription : FailureDescription , описывающее сбой и его контекст. |
тест завершен
public final void testEnded (TestDescription test, long endTime,testMetrics)
Альтернатива ERROR(/#testEnded(com.android.tradefed.result.TestDescription,Map)) , где можно напрямую указать время окончания. Для точного измерения используйте testStarted(com.android.tradefed.result.TestDescription, long) .
| Параметры | |
|---|---|
test | TestDescription : идентифицирует тест |
endTime | long : время окончания теста, измеренное с помощью System.currentTimeMillis() |
testMetrics | : ERROR(/Map) выданных метрик |
тест завершен
public final void testEnded (TestDescription test,testMetrics)
Сообщает об окончании выполнения отдельного тестового случая.
Если testFailed(TestDescription, FailureDescription) не был вызван, тест считается пройденным. Также возвращаются все метрики «ключ/значение», которые могли быть получены во время выполнения тестового случая.
| Параметры | |
|---|---|
test | TestDescription : идентифицирует тест |
testMetrics | : ERROR(/Map) выданных метрик |
testFailed
public final void testFailed (TestDescription test, FailureDescription failure)
Сообщает о неудачном завершении отдельного тестового случая.
Будет вызван между testStarted и testEnded.
| Параметры | |
|---|---|
test | TestDescription : идентифицирует тест |
failure | FailureDescription : FailureDescription , описывающее сбой и его контекст. |
testFailed
public final void testFailed (TestDescription test, String trace)
Сообщает о неудачном завершении отдельного тестового случая.
Будет вызван между testStarted и testEnded.
| Параметры | |
|---|---|
test | TestDescription : идентифицирует тест |
trace | String : трассировка стека отказа |
тест проигнорирован
public final void testIgnored (TestDescription test)
Вызывается, когда тест не будет запущен, обычно потому, что метод теста аннотирован org.junit.Ignore.
| Параметры | |
|---|---|
test | TestDescription : идентифицирует тест |
testLog
public final void testLog (String dataName,
LogDataType dataType,
InputStreamSource dataStream)Используйте этот метод для регистрации файла из реализации PostProcessor.
| Параметры | |
|---|---|
dataName | String : String описательное имя данных, например, "device_logcat". Обратите внимание, что dataName может быть не уникальным для каждого вызова. То есть разработчики должны иметь возможность обрабатывать несколько вызовов с одним и тем же dataName. |
dataType | LogDataType : LogDataType данных |
dataStream | InputStreamSource : InputStreamSource данных. Разработчики должны вызвать метод createInputStream, чтобы начать чтение данных, и обеспечить закрытие полученного InputStream после завершения. Вызывающие разработчики должны обеспечить наличие и доступность источника данных до завершения метода testLog. |
testLogSaved
public final void testLogSaved (String dataName,
LogDataType dataType,
InputStreamSource dataStream,
LogFile logFile)Вызывается при сохранении журнала теста.
Следует использовать вместо ITestInvocationListener.testLog(String, LogDataType, InputStreamSource) .
| Параметры | |
|---|---|
dataName | String : String описательное имя данных, например, "device_logcat". Обратите внимание, что dataName может быть не уникальным для каждого вызова. То есть разработчики должны иметь возможность обрабатывать несколько вызовов с одним и тем же dataName. |
dataType | LogDataType : LogDataType данных |
dataStream | InputStreamSource : InputStreamSource данных. Разработчикам следует вызвать метод createInputStream, чтобы начать чтение данных, и закрыть полученный поток InputStream после завершения. |
logFile | LogFile : LogFile , содержащий метаданные сохраненного файла. |
testModuleEnded
public final void testModuleEnded ()
Сообщает об окончании выполнения модуля.
testModuleStarted
public final void testModuleStarted (IInvocationContext moduleContext)
Сообщает о начале выполнения модуля. Этот обратный вызов связан с testModuleEnded() и не является обязательным в последовательности. Он используется только во время выполнения, использующего модули: исполнители на основе наборов.
| Параметры | |
|---|---|
moduleContext | IInvocationContext : IInvocationContext модуля. |
testRunEnded
public final void testRunEnded (long elapsedTime,
runMetrics) Сообщается об окончании тестового прогона.
| Параметры | |
|---|---|
elapsedTime | long : устройство сообщило прошедшее время в миллисекундах |
runMetrics | : пары «ключ-значение», сообщаемые в конце тестового прогона |
testRunFailed
public final void testRunFailed (FailureDescription failure)
Сообщается, что тестовый запуск не был завершен из-за сбоя, описанного FailureDescription .
| Параметры | |
|---|---|
failure | FailureDescription : FailureDescription , описывающее сбой и его контекст. |
testRunFailed
public final void testRunFailed (String errorMessage)
Тестовый запуск отчета не был завершен из-за фатальной ошибки.
| Параметры | |
|---|---|
errorMessage | String : String описывающая причину сбоя запуска. |
testRunStarted
public final void testRunStarted (String runName,
int testCount,
int attemptNumber)Сообщает о начале тестового прогона.
| Параметры | |
|---|---|
runName | String : имя тестового запуска |
testCount | int : общее количество тестов в тестовом запуске |
attemptNumber | int : порядковый номер, идентифицирующий различные попытки одного и того же runName, выполняемые несколько раз. Попытка (temptNumber) имеет индекс 0 и должна увеличиваться при каждом новом запуске. Например, тест повторяется 3 раза, всего должно быть 4 запуска с одним и тем же runName, а attemptNumber находится в диапазоне от 0 до 3. |
testRunStarted
public final void testRunStarted (String runName,
int testCount)Тестовый запуск обратных вызовов
| Параметры | |
|---|---|
runName | String : имя тестового запуска |
testCount | int : общее количество тестов в тестовом запуске |
testRunStarted
public final void testRunStarted (String runName,
int testCount,
int attemptNumber,
long startTime)Сообщает о начале тестового прогона.
| Параметры | |
|---|---|
runName | String : имя тестового запуска |
testCount | int : общее количество тестов в тестовом запуске |
attemptNumber | int : порядковый номер, идентифицирующий различные попытки одного и того же runName, выполняемые несколько раз. Попытка (temptNumber) имеет индекс 0 и должна увеличиваться при каждом новом запуске. Например, тест повторяется 3 раза, всего должно быть 4 запуска с одним и тем же runName, а attemptNumber находится в диапазоне от 0 до 3. |
startTime | long : время начала выполнения, измеренное с помощью System.currentTimeMillis() |
testRunStopped
public final void testRunStopped (long elapsedTime)
Сообщает, что тестовый запуск был остановлен до завершения по запросу пользователя.
TODO: в настоящее время не используется, рассмотрите возможность удаления
| Параметры | |
|---|---|
elapsedTime | long : устройство сообщило прошедшее время в миллисекундах |
тестПропущен
public final void testSkipped (TestDescription test, SkipReason reason)
Вызывается, когда тест пропущен и не выполнен по причине, которая обычно не ожидается. Эти тесты будут повторно выполнены, чтобы попытаться добиться корректного выполнения.
| Параметры | |
|---|---|
test | TestDescription : идентифицирует тест |
reason | SkipReason : SkipReason |
тест начат
public final void testStarted (TestDescription test, long startTime)
Альтернатива testStarted(com.android.tradefed.result.TestDescription) , где мы также указываем, когда был запущен тест, в сочетании с ERROR(/#testEnded(com.android.tradefed.result.TestDescription,long,Map)) для точного измерения.
| Параметры | |
|---|---|
test | TestDescription : идентифицирует тест |
startTime | long : время начала теста, измеренное с помощью System.currentTimeMillis() |
тест начат
public final void testStarted (TestDescription test)
Обратные вызовы тестовых случаев
| Параметры | |
|---|---|
test | TestDescription : идентифицирует тест |
Защищенные методы
уборка
protected void cleanUp ()
getMetricType
protected MetricMeasurement.DataType getMetricType ()
При необходимости переопределите этот метод, чтобы изменить тип метрики. По умолчанию метрика имеет тип «обработанная».
| Возврат | |
|---|---|
MetricMeasurement.DataType | |
getRunName
protected String getRunName ()
| Возврат | |
|---|---|
String | |