CollectingTestListener

public class CollectingTestListener
extends Object implements IDisableable , ILogSaverListener , ITestInvocationListener

java.lang.Object
com.android.tradefed.result.CollectingTestListener


Объект ITestInvocationListener , который будет собирать все результаты тестов.

Хотя используемые в этом объекте структуры данных являются потокобезопасными, вызовы функций обратного вызова ITestInvocationListener необходимо производить в правильном порядке.

Краткое содержание

Государственные строители

CollectingTestListener ()

Общедоступные методы

IBuildInfo getBuildInfo ()

Этот метод устарел. Используйте IBuildInfo из getInvocationContext() .

TestRunResult getCurrentRunResults ()

Получает результаты текущего тестового запуска.

int getExpectedTests ()

Возвращает ожидаемое количество тестов.

IInvocationContext getInvocationContext ()

Возвращает контекст вызова, который был указан с помощью invocationStarted(IInvocationContext)

List< TestRunResult > getMergedTestRunResults ()

Возвращает объединенную коллекцию результатов для всех запусков в разных попытках.

IInvocationContext getModuleContextForRunResult (String testRunName)

Возвращает объект IInvocationContext модуля, связанного с результатами.

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 ()

Возвращает основную информацию о сборке, полученную через invocationStarted(IInvocationContext) .

Collection< TestRunResult > getRunResults ()

Этот метод устарел. Используйте getMergedTestRunResults()

TestRunResult getTestRunAtAttempt (String testRunName, int attempt)

Возвращает объект TestRunResult для одной попытки.

int getTestRunAttemptCount (String testRunName)

Возвращает количество попыток для заданного имени тестового запуска.

List< TestRunResult > getTestRunAttempts (String testRunName)

Получает все попытки выполнения TestRunResult в рамках заданного тестового запуска.

List< TestRunResult > getTestRunForAttempts (int attempt)

Получает все результаты для данной попытки.

Collection<String> 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)

В некоторых случаях лог должен быть тесно связан с тестовыми случаями, но сделать это непосредственно в функции обратного вызова testLogSaved(String,LogDataType,InputStreamSource,LogFile) невозможно.

void setBuildInfo ( IBuildInfo buildInfo)

Этот метод устарел. Он больше не нужен для тестирования.

void setDisable (boolean isDisabled)

Определяет, следует ли отключать объект.

void setMergeStrategy ( MergeStrategy strategy)

Задает стратегию MergeStrategy , используемую при объединении результатов.

void testAssumptionFailure ( TestDescription test, String trace)

Вызывается, когда атомарный тест указывает на то, что он предполагает ложное условие.

void testAssumptionFailure ( TestDescription test, FailureDescription failure)

Вызывается, когда атомарный тест указывает на то, что он предполагает ложное условие.

void testEnded ( TestDescription test, long endTime, HashMap<String, MetricMeasurement.Metric> testMetrics)

Альтернатива функции testEnded(TestDescription,Map) позволяющая напрямую указать время окончания.

void testEnded ( TestDescription test, HashMap<String, MetricMeasurement.Metric> testMetrics)

Сообщает о завершении выполнения отдельного тестового случая.

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, HashMap<String, MetricMeasurement.Metric> runMetrics)

Сообщает об окончании тестового запуска.

void testRunFailed ( FailureDescription failure)

Сообщается, что запуск тестового запуска не завершился из-за ошибки, описанной в FailureDescription .

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)

Альтернатива функции testStarted(TestDescription) , где мы также указываем время начала теста, в сочетании с testEnded(TestDescription,long,Map) для более точного измерения.

void testStarted ( TestDescription test)

Сообщает о начале выполнения отдельного тестового случая.

Защищенные методы

final void clearModuleLogFiles ()

Позволяет очистить файл модуля, чтобы избежать его длительного хранения.

final void clearResultsForName (String testRunName)

Позволяет очистить результаты для заданного имени запуска.

final void clearTestRunResults ()

Позволяет очистить все результаты тестовых запусков, чтобы избежать их длительного хранения.

void setIsAggregrateMetrics (boolean aggregate)

Включите опцию «агрегированные метрики».

Государственные строители

CollectingTestListener

public CollectingTestListener ()

Общедоступные методы

получить информацию о сборке

public IBuildInfo getBuildInfo ()

Этот метод устарел.
использовать объект IBuildInfo из getInvocationContext() .

Возвращает информацию о сборке.

Возвраты
IBuildInfo

getCurrentRunResults

public TestRunResult getCurrentRunResults ()

Получает результаты текущего тестового запуска.

Обратите внимание, что результаты могут быть неполными. Рекомендуется проверить значение TestRunResult.isRunComplete() и/или (@link TestRunResult#isRunFailure()) в зависимости от ситуации, прежде чем обрабатывать результаты.

Возвраты
TestRunResult TestRunResult представляет данные, собранные во время последнего запуска теста.

getExpectedTests

public int getExpectedTests ()

Возвращает ожидаемое количество тестов. Может отличаться от значения getNumTotalTests() если некоторые тесты не были выполнены.

Возвраты
int

getInvocationContext

public IInvocationContext getInvocationContext ()

Возвращает контекст вызова, который был указан с помощью invocationStarted(IInvocationContext)

Возвраты
IInvocationContext

getMergedTestRunResults

public List<TestRunResult> getMergedTestRunResults ()

Возвращает объединенную коллекцию результатов для всех запусков в разных попытках.

Если результатов несколько, каждый запуск теста объединяется, при этом последний результат теста перезаписывает результаты предыдущих запусков. Запуски тестов упорядочиваются по номеру попытки.

Показатели для одной и той же попытки будут объединены на основе предпочтений, установленных aggregate-metrics . Итоговыми показателями станут показатели последней попытки.

Возвраты
List< TestRunResult >

getModuleContextForRunResult

public IInvocationContext getModuleContextForRunResult (String testRunName)

Возвращает объект IInvocationContext модуля, связанного с результатами.

Параметры
testRunName String : Имя, заданное функцией { testRunStarted(String,int) .

Возвраты
IInvocationContext Параметр IInvocationContext модуля для заданного имени запуска теста null если для этого имени нет результатов.

getModuleLogFiles

public MultiMap<String, LogFile> getModuleLogFiles ()

Возвращает копию карты, содержащую все файлы журналов, связанные с модулем.

Возвраты
MultiMap <String, LogFile >

getNonAssociatedLogFiles

public MultiMap<String, LogFile> getNonAssociatedLogFiles ()

Возвращает копию карты, содержащую все файлы журналов, не связанные с запуском теста или модулем.

Возвраты
MultiMap <String, LogFile >

getNumAllFailedTestRuns

public int getNumAllFailedTestRuns ()

Возвращает общее количество запусков тестов, завершившихся с ошибкой.

Возвраты
int

getNumAllFailedTests

public int getNumAllFailedTests ()

Возвращает общее количество тестов, находящихся в состоянии сбоя (только неудачные тесты, предполагаемые сбои не учитываются).

Возвраты
int

getNumTestsInState

public int getNumTestsInState (TestStatus status)

Возвращает количество тестов в заданном состоянии для данного запуска.

Параметры
status TestStatus

Возвраты
int

getNumTestsInState

public int getNumTestsInState (TestResult.TestStatus ddmlibStatus)

Для обеспечения совместимости со старыми типами статуса.

Параметры
ddmlibStatus TestResult.TestStatus

Возвраты
int

getNumTotalTests

public int getNumTotalTests ()

Возвращает общее количество полностью пройденных тестов для всех запусков.

Возвраты
int

getPrimaryBuildInfo

public IBuildInfo getPrimaryBuildInfo ()

Возвращает основную информацию о сборке, полученную через invocationStarted(IInvocationContext) . Основная сборка — это сборка, возвращенная первым поставщиком сборки в текущей конфигурации. Возвращает null, если контекст отсутствует (нет сборки для тестового случая).

Возвраты
IBuildInfo

getRunResults

public Collection<TestRunResult> getRunResults ()

Этот метод устарел.
Используйте getMergedTestRunResults()

Возвращает результаты всех тестовых запусков.

Возвраты
Collection< TestRunResult >

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

public List<TestRunResult> getTestRunAttempts (String testRunName)

Получает все попытки выполнения TestRunResult в рамках заданного тестового запуска.

Параметры
testRunName String : Имя, заданное функцией { testRunStarted(String,int) .

Возвраты
List< TestRunResult > Все TestRunResult для данного запуска теста, отсортированные по количеству попыток.

getTestRunForAttempts

public List<TestRunResult> getTestRunForAttempts (int attempt)

Получает все результаты для данной попытки.

Параметры
attempt int : Попытка, для которой мы хотим получить результаты.

Возвраты
List< TestRunResult > Все TestRunResult для данной попытки.

getTestRunNames

public Collection<String> getTestRunNames ()

Возвращает все имена для всех тестовых запусков.

Эти тестовые запуски могли быть выполнены несколько раз с разными попытками.

Возвраты
Collection<String>

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,LogDataType,InputStreamSource,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, 
                HashMap<String, MetricMeasurement.Metric> testMetrics)

Альтернатива функции testEnded(TestDescription,Map) , позволяющая напрямую указать время окончания. Для более точного измерения можно использовать в сочетании с testStarted(TestDescription,long) .

Параметры
test TestDescription : идентифицирует тест

endTime long : время окончания теста, измеренное с помощью System.currentTimeMillis()

testMetrics HashMap : Map сгенерированных метрик

тест завершен

public void testEnded (TestDescription test, 
                HashMap<String, MetricMeasurement.Metric> testMetrics)

Сообщает о завершении выполнения отдельного тестового случая.

Если testFailed(TestDescription, FailureDescription) не был вызван, тест пройден успешно. Также возвращает любые метрики ключ/значение, которые могли быть получены во время выполнения тестового случая.

Параметры
test TestDescription : идентифицирует тест

testMetrics HashMap : 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 : идентифицирует тест

testModuleEnded

public void testModuleEnded ()

Сообщает об окончании выполнения модуля.

testModuleStarted

public void testModuleStarted (IInvocationContext moduleContext)

Сообщает о начале выполнения модуля. Этот обратный вызов связан с testModuleEnded() и является необязательным в последовательности. Он используется только во время запуска, использующего модули: в случае запуска тестов на основе тестовых наборов.

Параметры
moduleContext IInvocationContext : IInvocationContext модуля.

testRunEnded

public void testRunEnded (long elapsedTime, 
                HashMap<String, MetricMeasurement.Metric> runMetrics)

Сообщает об окончании выполнения теста. FIXME: Мы не можем иметь два интерфейса Map<> с разными типами, поэтому здесь необходимо использовать HashMap.

Параметры
elapsedTime long : устройство сообщило о прошедшем времени в миллисекундах

runMetrics HashMap : пары ключ-значение, отображаемые в конце выполнения теста с помощью Metric .

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(TestDescription) , где мы также указываем время начала теста, в сочетании с testEnded(TestDescription,long,Map) для более точного измерения.

Параметры
test TestDescription : идентифицирует тест

startTime long : время начала теста, измеренное с помощью System.currentTimeMillis()

тест начат

public void testStarted (TestDescription test)

Сообщает о начале отдельного тестового случая. Более старый интерфейс, следует использовать testStarted(TestDescription) везде, где это возможно.

Параметры
test TestDescription : идентифицирует тест

Защищенные методы

clearModuleLogFiles

protected final void clearModuleLogFiles ()

Позволяет очистить файл модуля, чтобы избежать его длительного хранения.

clearResultsForName

protected final void clearResultsForName (String testRunName)

Позволяет очистить результаты для заданного имени запуска. Следует использовать только в некоторых случаях, например, для агрегирования результатов.

Параметры
testRunName String

clearTestRunResults

protected final void clearTestRunResults ()

Позволяет очистить все результаты тестовых запусков, чтобы избежать их длительного хранения.

setIsAgggregateMetrics

protected void setIsAggregrateMetrics (boolean aggregate)

Включите опцию «агрегированные метрики».

Параметры
aggregate boolean