CollectingTestListener
public class CollectingTestListener
extends Object implements IDisableable , ILogSaverListener , ITestInvocationListener
| java.lang.Object | |
| ↳ | com.android.tradefed.result.CollectingTestListener |
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 представляет данные, собранные во время последнего тестового запуска |
getExpectedTests
public int getExpectedTests ()
Возвращает ожидаемое количество тестов. Может отличаться от getNumTotalTests() если некоторые тесты не были выполнены.
| Возврат | |
|---|---|
int | |
получитьInvocationContext
public IInvocationContext getInvocationContext ()
Верните контекст вызова, который был сообщен через invocationStarted(com.android.tradefed.invoker.IInvocationContext)
| Возврат | |
|---|---|
IInvocationContext | |
getMergedTestRunResults
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 > | |
getNumAllFailedTestRuns
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()
Возвращает результаты всех тестовых запусков.
| Возврат | |
|---|---|
| |
getTestRunAtAttempt
public TestRunResult getTestRunAtAttempt (String testRunName, int attempt)
Верните TestRunResult для одной попытки.
| Параметры | |
|---|---|
testRunName | String : Имя, заданное { testRunStarted(String, int) . |
attempt | int : Идентификатор попытки. |
| Возврат | |
|---|---|
TestRunResult | TestRunResult для указанного имени и идентификатора попытки или null , если он не существует. |
getTestRunAttemptCount
public int getTestRunAttemptCount (String testRunName)
Возвращает количество попыток для заданного имени тестового запуска.
| Параметры | |
|---|---|
testRunName | String : Имя, заданное { testRunStarted(String, int) . |
| Возврат | |
|---|---|
int | |
getTestRunAttempts
publicgetTestRunAttempts (String testRunName)
Получает все попытки TestRunResult заданного тестового запуска.
| Параметры | |
|---|---|
testRunName | String : Имя, заданное { testRunStarted(String, int) . |
| Возврат | |
|---|---|
| Все TestRunResult для данного тестового прогона, упорядоченные по попыткам. |
getTestRunForAttempts
publicgetTestRunForAttempts (int attempt)
Получает все результаты для заданной попытки.
| Параметры | |
|---|---|
attempt | int : Попытка, для которой мы хотим получить результаты. |
| Возврат | |
|---|---|
| Все TestRunResult для данной попытки. |
getTestRunNames
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 |
setDisable
public void setDisable (boolean isDisabled)
Устанавливает, следует ли отключать объект. Отключение означает, что этапы настройки и демонтажа следует пропустить. Можно использовать, чтобы сделать объект отключённым по умолчанию в конструкторе по умолчанию.
| Параметры | |
|---|---|
isDisabled | boolean : состояние, в которое следует поместить объект. |
setMergeStrategy
public void setMergeStrategy (MergeStrategy strategy)
Задает MergeStrategy , используемую при объединении результатов.
| Параметры | |
|---|---|
strategy | MergeStrategy |
testAssumptionFailure
public void testAssumptionFailure (TestDescription test, String trace)
Вызывается, когда атомарный тест сигнализирует, что он предполагает ложное условие.
| Параметры | |
|---|---|
test | TestDescription : идентифицирует тест |
trace | String : трассировка стека отказа |
testAssumptionFailure
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) выданных метрик |
testFailed
public void testFailed (TestDescription test, FailureDescription failure)
Сообщает о неудачном завершении отдельного тестового случая.
Будет вызван между testStarted и testEnded.
| Параметры | |
|---|---|
test | TestDescription : идентифицирует тест |
failure | FailureDescription : FailureDescription , описывающее сбой и его контекст. |
testFailed
public void testFailed (TestDescription test, String trace)
Сообщает о неудачном завершении отдельного тестового случая.
Будет вызван между testStarted и testEnded.
| Параметры | |
|---|---|
test | TestDescription : идентифицирует тест |
trace | String : трассировка стека отказа |
тест проигнорирован
public void testIgnored (TestDescription test)
Вызывается, когда тест не будет запущен, обычно потому, что метод теста аннотирован org.junit.Ignore.
| Параметры | |
|---|---|
test | TestDescription : идентифицирует тест |
testModuleEnded
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, выполняемые несколько раз. Попытка (temptNumber) имеет индекс 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, выполняемые несколько раз. Попытка (temptNumber) имеет индекс 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 |