CollectingTestListener
public class CollectingTestListener
extends Object
implements IDisableable , ILogSaverListener , ITestInvocationListener
java.lang.Объект | |
↳ | com.android.tradefed.result.СборТестовогоСлушателя |
ITestInvocationListener
, который будет собирать все результаты тестов.
Хотя структуры данных, используемые в этом объекте, являются потокобезопасными, обратные вызовы ITestInvocationListener
должны вызываться в правильном порядке.
Краткое содержание
Публичные конструкторы | |
---|---|
CollectingTestListener () |
Публичные методы | |
---|---|
IBuildInfo | getBuildInfo () Этот метод устарел. Используйте |
TestRunResult | getCurrentRunResults () Получает результаты текущего тестового запуска. |
int | getExpectedTests () Возвращает ожидаемое количество тестов. |
IInvocationContext | getInvocationContext () Верните контекст вызова, который был сообщен через |
| getMergedTestRunResults () Верните объединенную коллекцию результатов для всех запусков в разных попытках. |
IInvocationContext | getModuleContextForRunResult (String testRunName) Возвращает |
MultiMap <String, LogFile > | getModuleLogFiles () Возвращает копию карты, содержащей все зарегистрированные файлы, связанные с модулем. |
MultiMap <String, LogFile > | getNonAssociatedLogFiles () Возвращает копию карты, содержащую все зарегистрированные файлы, не связанные с тестовым запуском или модулем. |
int | getNumAllFailedTestRuns () Возвращает общее количество тестовых запусков в состоянии отказа. |
int | getNumAllFailedTests () Возвращает общее количество тестов в состоянии отказа (только неудачные, неудачные предположения не учитываются). |
int | getNumTestsInState ( TestStatus status) Возвращает количество тестов в заданном состоянии для этого запуска. |
int | getNumTestsInState (TestResult.TestStatus ddmlibStatus) Для совместимости со старым типом статуса |
int | getNumTotalTests () Возвращает общее количество завершенных тестов для всех запусков. |
IBuildInfo | getPrimaryBuildInfo () Верните основную информацию о сборке, которая была сообщена через |
| getRunResults () Этот метод устарел. Используйте |
TestRunResult | getTestRunAtAttempt (String testRunName, int attempt) Верните |
int | getTestRunAttemptCount (String testRunName) Возвращает количество попыток для заданного имени тестового запуска. |
| getTestRunAttempts (String testRunName) Получает все попытки для |
| getTestRunForAttempts (int attempt) Получает все результаты для данной попытки. |
| getTestRunNames () Верните все имена для всех тестовых запусков. |
boolean | hasFailedTests () Возвращает, если вызов имел какие-либо неудачные тесты или тесты, не прошедшие проверку предположения. |
boolean | hasTestRunResultsForName (String testRunName) Возвращает, есть ли какие-либо результаты у заданного имени тестового запуска. |
void | invocationEnded (long elapsedTime) Сообщает, что вызов завершен успешно или из-за какой-либо ошибки. |
void | invocationFailed (Throwable cause) Сообщает о неполном вызове из-за какой-то ошибки. |
void | invocationSkipped ( SkipReason reason) Сообщает о пропущенном вызове |
void | invocationStarted ( IInvocationContext context) Сообщает о начале тестового вызова. |
boolean | isDisabled () Возвращает True, если весь объект отключен (пропускается как настройка, так и демонтаж). |
void | logAssociation (String dataName, LogFile logFile) В некоторых случаях журнал должен быть тесно связан с тестовыми случаями, но возможность сделать это в прямом обратном вызове |
void | setBuildInfo ( IBuildInfo buildInfo) Этот метод устарел. Больше не нужен для тестирования. |
void | setDisable (boolean isDisabled) Устанавливает, следует ли отключать объект. |
void | setMergeStrategy ( MergeStrategy strategy) Устанавливает |
void | testAssumptionFailure ( TestDescription test, String trace) Вызывается, когда атомарный тест сигнализирует, что он предполагает ложное условие. |
void | testAssumptionFailure ( TestDescription test, FailureDescription failure) Вызывается, когда атомарный тест сигнализирует, что он предполагает ложное условие. |
void | testEnded ( TestDescription test, long endTime, Альтернатива |
void | testEnded ( TestDescription test, Сообщает об окончании выполнения отдельного тестового случая. |
void | testFailed ( TestDescription test, FailureDescription failure) Сообщает о неудачном выполнении отдельного тестового случая. |
void | testFailed ( TestDescription test, String trace) Сообщает о неудачном выполнении отдельного тестового случая. |
void | testIgnored ( TestDescription test) Вызывается, когда тест не будет запущен, как правило, потому что метод теста аннотирован org.junit.Ignore. |
void | testModuleEnded () Сообщает об окончании выполнения модуля. |
void | testModuleStarted ( IInvocationContext moduleContext) Сообщает о начале работы модуля. |
void | testRunEnded (long elapsedTime, Сообщает об окончании тестового прогона. |
void | testRunFailed ( FailureDescription failure) Сообщается, что тестовый запуск не был завершен из-за сбоя, описанного |
void | testRunFailed (String errorMessage) Сообщается, что тестовый запуск не был завершен из-за фатальной ошибки. |
void | testRunStarted (String name, int numTests, int attemptNumber) Сообщает о начале тестового запуска. |
void | testRunStarted (String name, int numTests) Сообщает о начале тестового запуска. |
void | testRunStarted (String name, int numTests, int attemptNumber, long startTime) Сообщает о начале тестового запуска. |
void | testRunStopped (long elapsedTime) Тестовый запуск отчетов остановлен до завершения по запросу пользователя. |
void | testSkipped ( TestDescription test, SkipReason reason) Вызывается, когда тест пропущен и не выполнен по причине, которая обычно не ожидается. |
void | testStarted ( TestDescription test, long startTime) Альтернатива |
void | testStarted ( TestDescription test) Сообщает о начале отдельного тестового случая. |
Защищенные методы | |
---|---|
final void | clearModuleLogFiles () Позволяет очистить файл модуля, чтобы избежать его слишком долгого хранения. |
final void | clearResultsForName (String testRunName) Позволяет очистить результаты для заданного имени прогона. |
final void | clearTestRunResults () Позволяет очистить все результаты тестового прогона, чтобы избежать их слишком долгого хранения. |
void | setIsAggregrateMetrics (boolean aggregate) Переключить опцию «агрегированные показатели» |
Публичные конструкторы
CollectingTestListener
public CollectingTestListener ()
Публичные методы
получитьBuildInfo
public IBuildInfo getBuildInfo ()
Этот метод устарел.
полагаться на IBuildInfo
из getInvocationContext()
.
Возвращает информацию о сборке.
Возвраты | |
---|---|
IBuildInfo |
получитьCurrentRunResults
public TestRunResult getCurrentRunResults ()
Получает результаты текущего тестового запуска.
Обратите внимание, что результаты могут быть неполными. Рекомендуется проверить значение TestRunResult.isRunComplete()
и/или (@link TestRunResult#isRunFailure()} соответствующим образом перед обработкой результатов.
Возвраты | |
---|---|
TestRunResult | TestRunResult представляет данные, собранные во время последнего тестового запуска |
получитьОжидаемыеТесты
public int getExpectedTests ()
Возвращает количество ожидаемых тестов. Может отличаться от getNumTotalTests()
, если некоторые тесты не были запущены.
Возвраты | |
---|---|
int |
получитьInvocationContext
public IInvocationContext getInvocationContext ()
Верните контекст вызова, который был сообщен через invocationStarted(com.android.tradefed.invoker.IInvocationContext)
Возвраты | |
---|---|
IInvocationContext |
получитьMergedTestRunResults
publicgetMergedTestRunResults ()
Верните объединенную коллекцию результатов для всех запусков в разных попытках.
Если результатов несколько, каждый тестовый запуск объединяется, причем последний тестовый результат перезаписывает результаты предыдущих запусков. Тестовые запуски упорядочиваются по номеру попытки.
Метрики для одной и той же попытки будут объединены на основе предпочтений, установленных с aggregate-metrics
. Окончательными метриками будут метрики последней попытки.
Возвраты | |
---|---|
|
получитьModuleContextForRunResult
public IInvocationContext getModuleContextForRunResult (String testRunName)
Возвращает IInvocationContext
модуля, связанного с результатами.
Параметры | |
---|---|
testRunName | String : Имя, заданное { testRunStarted(String, int) . |
Возвраты | |
---|---|
IInvocationContext | IInvocationContext модуля для заданного имени тестового прогона имеет значение null если для этого имени нет результатов. |
получитьModuleLogFiles
public MultiMap<String, LogFile> getModuleLogFiles ()
Возвращает копию карты, содержащей все зарегистрированные файлы, связанные с модулем.
Возвраты | |
---|---|
MultiMap <String, LogFile > |
получитьNonAssociatedLogFiles
public MultiMap<String, LogFile> getNonAssociatedLogFiles ()
Возвращает копию карты, содержащую все зарегистрированные файлы, не связанные с тестовым запуском или модулем.
Возвраты | |
---|---|
MultiMap <String, LogFile > |
получитьNumAllFailedTestRuns
public int getNumAllFailedTestRuns ()
Возвращает общее количество тестовых запусков в состоянии отказа.
Возвраты | |
---|---|
int |
получитьNumAllFailedTests
public int getNumAllFailedTests ()
Возвращает общее количество тестов в состоянии отказа (только неудачные, неудачные предположения не учитываются).
Возвраты | |
---|---|
int |
получитьNumTestsInState
public int getNumTestsInState (TestStatus status)
Возвращает количество тестов в заданном состоянии для этого запуска.
Параметры | |
---|---|
status | TestStatus |
Возвраты | |
---|---|
int |
получитьNumTestsInState
public int getNumTestsInState (TestResult.TestStatus ddmlibStatus)
Для совместимости со старым типом статуса
Параметры | |
---|---|
ddmlibStatus | TestResult.TestStatus |
Возвраты | |
---|---|
int |
получитьNumTotalTests
public int getNumTotalTests ()
Возвращает общее количество завершенных тестов для всех запусков.
Возвраты | |
---|---|
int |
получитьPrimaryBuildInfo
public IBuildInfo getPrimaryBuildInfo ()
Возвращает информацию об основной сборке, которая была сообщена через invocationStarted(com.android.tradefed.invoker.IInvocationContext)
. Основная сборка — это сборка, возвращенная первым поставщиком сборки запущенной конфигурации. Возвращает null, если контекст отсутствует (нет сборки для тестового случая).
Возвраты | |
---|---|
IBuildInfo |
getRunResults
publicgetRunResults ()
Этот метод устарел.
Используйте getMergedTestRunResults()
Возвращает результаты всех тестовых запусков.
Возвраты | |
---|---|
|
getTestRunAtTempt
public TestRunResult getTestRunAtAttempt (String testRunName, int attempt)
Верните TestRunResult
для одной попытки.
Параметры | |
---|---|
testRunName | String : Имя, заданное { testRunStarted(String, int) . |
attempt | int : Идентификатор попытки. |
Возвраты | |
---|---|
TestRunResult | TestRunResult для указанного имени и идентификатора попытки или null , если он не существует. |
получитьTestRunAttemptCount
public int getTestRunAttemptCount (String testRunName)
Возвращает количество попыток для заданного имени тестового запуска.
Параметры | |
---|---|
testRunName | String : Имя, заданное { testRunStarted(String, int) . |
Возвраты | |
---|---|
int |
getTestRunAttempts
publicgetTestRunAttempts (String testRunName)
Получает все попытки для TestRunResult
заданного тестового запуска.
Параметры | |
---|---|
testRunName | String : Имя, заданное { testRunStarted(String, int) . |
Возвраты | |
---|---|
| Все TestRunResult для данного тестового запуска, упорядоченные по попыткам. |
получитьTestRunForAttempts
publicgetTestRunForAttempts (int attempt)
Получает все результаты для данной попытки.
Параметры | |
---|---|
attempt | int : Попытка, для которой мы хотим получить результаты. |
Возвраты | |
---|---|
| Все TestRunResult для данной попытки. |
получитьTestRunNames
publicgetTestRunNames ()
Верните все имена для всех тестовых запусков.
Эти тестовые запуски могли проводиться несколько раз с разными попытками.
Возвраты | |
---|---|
|
hasFailedTests
public boolean hasFailedTests ()
Возвращает, если вызов имел какие-либо неудачные тесты или тесты, не прошедшие проверку предположения.
Возвраты | |
---|---|
boolean |
hasTestRunResultsForName
public boolean hasTestRunResultsForName (String testRunName)
Возвращает, есть ли какие-либо результаты у заданного имени тестового запуска.
Параметры | |
---|---|
testRunName | String : Имя, заданное { testRunStarted(String, int) . |
Возвраты | |
---|---|
boolean |
вызовЗавершен
public void invocationEnded (long elapsedTime)
Сообщает, что вызов завершен успешно или из-за какой-либо ошибки.
Будет автоматически вызван фреймворком TradeFederation.Параметры | |
---|---|
elapsedTime | long : прошедшее время вызова в мс |
вызовНе удалось
public void invocationFailed (Throwable cause)
Сообщает о неполном вызове из-за какой-то ошибки.
Будет автоматически вызван фреймворком TradeFederation.Параметры | |
---|---|
cause | Throwable : причина отказа Throwable |
вызовПропущен
public void invocationSkipped (SkipReason reason)
Сообщает о пропущенном вызове
Параметры | |
---|---|
reason | SkipReason |
вызовНачался
public void invocationStarted (IInvocationContext context)
Сообщает о начале тестового вызова.
Будет автоматически вызван фреймворком TradeFederation. Репортерам необходимо переопределить этот метод для поддержки отчетов по нескольким устройствам.
Параметры | |
---|---|
context | IInvocationContext : информация о вызове |
isDisabled
public boolean isDisabled ()
Возвращает True, если весь объект отключен (пропустить и настройку, и демонтаж). В противном случае — False.
Возвраты | |
---|---|
boolean |
logAssociation
public 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 , который был зарегистрирован ранее и должен быть связан с тестовым случаем. |
setBuildInfo
public void setBuildInfo (IBuildInfo buildInfo)
Этот метод устарел.
Для тестирования больше не требуется.
Установить информацию о сборке. Следует использовать только для тестирования.
Параметры | |
---|---|
buildInfo | IBuildInfo |
установитьОтключить
public void setDisable (boolean isDisabled)
Устанавливает, следует ли отключать объект. Отключено означает, что шаги настройки и демонтажа следует пропустить. Может использоваться для отключения объекта по умолчанию в конструкторе по умолчанию.
Параметры | |
---|---|
isDisabled | boolean : состояние, в которое следует перевести объект. |
setMergeStrategy
public void setMergeStrategy (MergeStrategy strategy)
Устанавливает MergeStrategy
, используемую при объединении результатов.
Параметры | |
---|---|
strategy | MergeStrategy |
тестПредположениеНеудача
public void testAssumptionFailure (TestDescription test, String trace)
Вызывается, когда атомарный тест сигнализирует, что он предполагает ложное условие.
Параметры | |
---|---|
test | TestDescription : идентифицирует тест |
trace | String : трассировка стека отказа |
тестПредположениеНеудача
public void testAssumptionFailure (TestDescription test, FailureDescription failure)
Вызывается, когда атомарный тест сигнализирует, что он предполагает ложное условие.
Параметры | |
---|---|
test | TestDescription : идентифицирует тест |
failure | FailureDescription : FailureDescription , описывающий сбой и его контекст. |
тестЗавершен
public 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 void testEnded (TestDescription test,testMetrics)
Сообщает об окончании выполнения отдельного тестового случая.
Если testFailed(TestDescription, FailureDescription)
не был вызван, этот тест пройден. Также возвращает любые метрики ключ/значение, которые могли быть выданы во время выполнения тестового случая.
Параметры | |
---|---|
test | TestDescription : идентифицирует тест |
testMetrics | : ERROR(/Map) выданных метрик |
тестНе пройден
public void testFailed (TestDescription test, FailureDescription failure)
Сообщает о неудачном выполнении отдельного тестового случая.
Будет вызван между testStarted и testEnded.
Параметры | |
---|---|
test | TestDescription : идентифицирует тест |
failure | FailureDescription : FailureDescription , описывающий сбой и его контекст. |
тестНе пройден
public void testFailed (TestDescription test, String trace)
Сообщает о неудачном выполнении отдельного тестового случая.
Будет вызван между testStarted и testEnded.
Параметры | |
---|---|
test | TestDescription : идентифицирует тест |
trace | String : трассировка стека отказа |
тестИгнорируется
public void testIgnored (TestDescription test)
Вызывается, когда тест не будет запущен, как правило, потому что метод теста аннотирован org.junit.Ignore.
Параметры | |
---|---|
test | TestDescription : идентифицирует тест |
testModuleЗавершен
public void testModuleEnded ()
Сообщает об окончании выполнения модуля.
testModuleStarted
public void testModuleStarted (IInvocationContext moduleContext)
Сообщает о начале выполнения модуля. Этот обратный вызов связан с testModuleEnded()
и является необязательным в последовательности. Он используется только во время выполнения, использующего модули: раннеры на основе набора.
Параметры | |
---|---|
moduleContext | IInvocationContext : IInvocationContext модуля. |
testRunEnded
public void testRunEnded (long elapsedTime,runMetrics)
Сообщает об окончании тестового прогона.
Параметры | |
---|---|
elapsedTime | long : устройство сообщило прошедшее время в миллисекундах |
runMetrics | : пары «ключ-значение», сообщаемые в конце тестового прогона |
testRunFailed
public void testRunFailed (FailureDescription failure)
Сообщается, что тестовый запуск не был завершен из-за сбоя, описанного FailureDescription
.
Параметры | |
---|---|
failure | FailureDescription : FailureDescription , описывающий сбой и его контекст. |
testRunFailed
public void testRunFailed (String errorMessage)
Сообщается, что тестовый запуск не был завершен из-за фатальной ошибки.
Параметры | |
---|---|
errorMessage | String : String , описывающая причину сбоя запуска. |
testRunStarted
public void testRunStarted (String name, int numTests, int attemptNumber)
Сообщает о начале тестового запуска.
Параметры | |
---|---|
name | String : имя тестового запуска |
numTests | int : общее количество тестов в тестовом прогоне |
attemptNumber | int : порядковый номер, идентифицирующий различные попытки одного и того же runName, которые выполняются несколько раз. attemptNumber индексируется 0 и должен увеличиваться каждый раз, когда происходит новый запуск. Например, тест гранулярно повторяется 3 раза, он должен иметь 4 общих запуска под тем же runName, а attemptNumber находится в диапазоне от 0 до 3. |
testRunStarted
public void testRunStarted (String name, int numTests)
Сообщает о начале тестового запуска.
Параметры | |
---|---|
name | String : имя тестового запуска |
numTests | int : общее количество тестов в тестовом прогоне |
testRunStarted
public void testRunStarted (String name, int numTests, int attemptNumber, long startTime)
Сообщает о начале тестового запуска.
Параметры | |
---|---|
name | String : имя тестового запуска |
numTests | int : общее количество тестов в тестовом прогоне |
attemptNumber | int : порядковый номер, идентифицирующий различные попытки одного и того же runName, которые выполняются несколько раз. attemptNumber индексируется 0 и должен увеличиваться каждый раз, когда происходит новый запуск. Например, тест гранулярно повторяется 3 раза, он должен иметь 4 общих запуска под тем же runName, а attemptNumber находится в диапазоне от 0 до 3. |
startTime | long : время начала прогона, измеренное с помощью System.currentTimeMillis() |
testRunStopped
public void testRunStopped (long elapsedTime)
Тестовый запуск отчетов остановлен до завершения по запросу пользователя.
TODO: в настоящее время не используется, рассмотрите возможность удаления
Параметры | |
---|---|
elapsedTime | long : устройство сообщило прошедшее время в миллисекундах |
тестПропущен
public void testSkipped (TestDescription test, SkipReason reason)
Вызывается, когда тест пропущен и не выполнен по причине, которая обычно не ожидается. Эти тесты будут попытаны быть повторены, чтобы попытаться получить надлежащее выполнение.
Параметры | |
---|---|
test | TestDescription : идентифицирует тест |
reason | SkipReason : SkipReason |
тестНачался
public 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 void testStarted (TestDescription test)
Сообщает о начале отдельного тестового случая. Старый интерфейс, следует использовать testStarted(com.android.tradefed.result.TestDescription)
везде, где это возможно.
Параметры | |
---|---|
test | TestDescription : идентифицирует тест |
Защищенные методы
clearModuleLogFiles
protected final void clearModuleLogFiles ()
Позволяет очистить файл модуля, чтобы избежать его слишком долгого хранения.
clearResultsForName
protected final void clearResultsForName (String testRunName)
Позволяет очистить результаты для заданного имени запуска. Следует использовать только в некоторых случаях, например, в качестве агрегатора результатов.
Параметры | |
---|---|
testRunName | String |
clearTestRunResults
protected final void clearTestRunResults ()
Позволяет очистить все результаты тестового прогона, чтобы избежать их слишком долгого хранения.
setIsAggregateMetrics
protected void setIsAggregrateMetrics (boolean aggregate)
Переключить опцию «агрегированные показатели»
Параметры | |
---|---|
aggregate | boolean |