БазовыйПостпроцессор
public abstract class BasePostProcessor
extends Object
implements IPostProcessor
java.lang.Объект | |
↳ | 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, allTestLogs) processAllTestMetricsAndLogs (ListMultimap<String, MetricMeasurement.Metric> allTestMetrics, allTestLogs) Внедрите этот метод для агрегирования показателей и журналов всех тестов. | |
abstract | processRunMetricsAndLogs ( rawMetrics, runLogs) processRunMetricsAndLogs ( rawMetrics, runLogs) processRunMetricsAndLogs ( rawMetrics, runLogs) Реализуйте этот метод, чтобы создать набор новых метрик из существующих метрик и журналов. |
processTestMetricsAndLogs ( TestDescription testDescription, testMetrics, testLogs) processTestMetricsAndLogs ( TestDescription testDescription, testMetrics, testLogs) processTestMetricsAndLogs ( TestDescription testDescription, testMetrics, testLogs) Реализуйте этот метод для публикации показателей процесса и журналов каждого теста. | |
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, testMetrics) testEnded ( TestDescription test, long endTime, testMetrics) Альтернатива |
final void | testEnded ( TestDescription test, testMetrics) testEnded ( TestDescription test, testMetrics) Сообщает об окончании выполнения отдельного тестового примера. |
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, runMetrics) testRunEnded (long elapsedTime, runMetrics) Сообщает об окончании тестового запуска. |
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 () |
Общественные конструкторы
БазовыйПостпроцессор
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, если весь объект отключен (пропускает как установку, так и демонтаж). В противном случае неверно.
Возврат | |
---|---|
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 , который был зарегистрирован ранее и должен быть связан с тестовым примером. |
процессAllTestMetricsAndLogs
publicprocessAllTestMetricsAndLogs (ListMultimap<String, MetricMeasurement.Metric> allTestMetrics, allTestLogs)
Внедрите этот метод для агрегирования показателей и журналов всех тестов. Метрики, полученные в результате этого метода, будут сообщаться как метрики выполнения. Должны возвращаться только вновь сгенерированные метрики с уникальным именем ключа (коллизии с существующими ключами не допускаются).
Параметры | |
---|---|
allTestMetrics | ListMultimap : HashMultimap, хранящий метрики каждого теста, сгруппированные по именам метрик. |
allTestLogs | TestDescription каждого теста в качестве ключей. |
Возврат | |
---|---|
Набор вновь созданных метрик из всех тестовых метрик. |
ProcessRunMetricsAndLogs
public abstractprocessRunMetricsAndLogs ( rawMetrics, runLogs)
Реализуйте этот метод, чтобы создать набор новых метрик из существующих метрик и журналов. Должны возвращаться только вновь сгенерированные метрики с уникальным именем ключа (коллизии с существующими ключами не допускаются).
Параметры | |
---|---|
rawMetrics | |
runLogs |
Возврат | |
---|---|
Набор вновь созданных метрик на основе метрик выполнения. |
процесстестметриксандлогис
publicprocessTestMetricsAndLogs (TestDescription testDescription, testMetrics, testLogs)
Реализуйте этот метод для публикации показателей процесса и журналов каждого теста. Должны возвращаться только вновь сгенерированные метрики с уникальным именем ключа (коллизии с существующими ключами не допускаются).
Параметры | |
---|---|
testDescription | TestDescription : объект TestDescription, описывающий тест. |
testMetrics | |
testLogs |
Возврат | |
---|---|
Набор вновь созданных метрик из тестовых метрик. |
setLogSaver
public final void setLogSaver (ILogSaver logSaver)
Установите ILogSaver
, чтобы позволить разработчику сохранять файлы.
Параметры | |
---|---|
logSaver | ILogSaver : ILogSaver |
настраивать
public void setUp ()
Переопределите этот метод в дочерних постпроцессорах для инициализации перед запуском теста.
тестПредположениеОтказ
public final void testAssumptionFailure (TestDescription test, String trace)
Вызывается, когда атомарный тест отмечает, что он предполагает ложное условие.
Параметры | |
---|---|
test | TestDescription : идентифицирует тест. |
trace | String : трассировка стека сбоя |
тестПредположениеОтказ
public final void testAssumptionFailure (TestDescription test, FailureDescription failure)
Вызывается, когда атомарный тест отмечает, что он предполагает ложное условие.
Параметры | |
---|---|
test | TestDescription : идентифицирует тест. |
failure | FailureDescription : FailureDescription описывающая сбой и его контекст. |
testEnded
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) выданных метрик |
testEnded
public final void testEnded (TestDescription test,testMetrics)
Сообщает об окончании выполнения отдельного тестового примера.
Если testFailed(TestDescription, FailureDescription)
не был вызван, этот тест пройден. Также возвращает любые метрики «ключ-значение», которые могли быть созданы во время выполнения тестового примера.
Параметры | |
---|---|
test | TestDescription : идентифицирует тест. |
testMetrics | ERROR(/Map) выданных метрик |
тест не пройден
public final void testFailed (TestDescription test, FailureDescription failure)
Сообщает о сбое отдельного тестового примера.
Будет вызываться между testStarted и testEnded.
Параметры | |
---|---|
test | TestDescription : идентифицирует тест. |
failure | FailureDescription : FailureDescription описывающая сбой и его контекст. |
тест не пройден
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 : идентифицирует тест. |
журнал испытаний
public final void testLog (String dataName, LogDataType dataType, InputStreamSource dataStream)
Используйте этот метод для регистрации файла из реализации PostProcessor.
Параметры | |
---|---|
dataName | String : String описательное имя данных. например, «device_logcat». Примечание. 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 не может быть уникальным для каждого вызова. т.е. разработчики должны иметь возможность обрабатывать несколько вызовов с одним и тем же именем данных. |
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)
Сообщает об окончании тестового запуска. ИСПРАВЛЕНИЕ: мы не можем иметь два интерфейса Map<> разного типа, поэтому здесь нам придется использовать HashMap.
Параметры | |
---|---|
elapsedTime | long : устройство сообщило прошедшее время в миллисекундах. |
runMetrics | Metric . |
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 : номер заказа, идентифицирующий различные попытки одного и того же имени запуска, которые выполняются несколько раз. Номер попытки имеет индекс 0 и должен увеличиваться каждый раз при новом запуске. например, тест гранулярно повторяется 3 раза, всего должно быть 4 запуска под одним и тем же именем запуска, а номер попытки — от 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 : номер заказа, идентифицирующий различные попытки одного и того же имени запуска, которые выполняются несколько раз. Номер попытки имеет индекс 0 и должен увеличиваться каждый раз при новом запуске. например, тест гранулярно повторяется 3 раза, всего должно быть 4 запуска под одним и тем же именем запуска, а номер попытки — от 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 |