BugreportКоллектор

public class BugreportCollector
extends Object implements ITestInvocationListener

java.lang.Объект
com.android.tradefed.result.BugreportCollector


Сквозной ITestInvocationListener , который собирает отчеты об ошибках при возникновении настраиваемых событий, а затем вызывает ITestInvocationListener#testLog для своих дочерних элементов после сбора каждого отчета об ошибках.

Поведение: (FIXME: закончить это)

  • Захват после каждого, если какие-либо тестовые примеры не пройдены
  • Захват после каждого тестового примера
  • Захват после каждого неудачного тестового примера
  • Захватывать

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

Вложенные классы

class BugreportCollector.Predicate

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

interface BugreportCollector.SubPredicate

Поля

public static final BugreportCollector.Predicate AFTER_FAILED_TESTCASES

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

public static final BugreportCollector.Predicate AT_START

Предопределенный предикат, который срабатывает при начале первого вызова.

Общественные конструкторы

BugreportCollector ( ITestInvocationListener listener, ITestDevice testDevice)

Публичные методы

void addPredicate ( BugreportCollector.Predicate p)
void blockUntilIdle ()

Блокируйте до тех пор, пока сборщик не перестанет собирать отчеты об ошибках.

TestSummary getSummary ()

Позволяет InvokeListener возвращать сводку.

void invocationEnded (long elapsedTime)

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

void invocationFailed (Throwable cause)

Сообщает о неполном вызове из-за какой-либо ошибки.

void invocationStarted ( IInvocationContext context)

Сообщает о начале тестового вызова.

void setAsynchronous (boolean asynchronous)

Установите, должен ли сбор отчетов об ошибках собирать отчет об ошибке в другом потоке ( asynchronous = true ) или блокировать вызывающую сторону до тех пор, пока отчет об ошибке не будет захвачен ( asynchronous = false ).

void setDescriptiveName (String name)

Установите описательное имя, которое будет использоваться при записи отчетов об ошибках.

void setDeviceWaitTime (int waitTime)

Установите время (в секундах) ожидания подключения устройства к сети, прежде чем мы попытаемся записать отчет об ошибке.

void testAssumptionFailure ( TestDescription test, String trace)

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

void testEnded ( TestDescription test, testMetrics) testEnded ( TestDescription test, testMetrics)

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

void testFailed ( TestDescription test, String trace)

Сообщает о сбое отдельного тестового примера.

void testIgnored ( TestDescription test)

Вызывается, когда тест не будет запускаться, обычно потому, что метод теста помечен с помощью org.junit.Ignore.

void testLog (String dataName, LogDataType dataType, InputStreamSource dataStream)

Предоставляет связанные данные журнала или отладки из тестового вызова.

void testRunEnded (long elapsedTime, runMetrics) testRunEnded (long elapsedTime, runMetrics)

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

void testRunFailed (String errorMessage)

Тестовый запуск отчетов не удалось завершить из-за фатальной ошибки.

void testRunStarted (String runName, int testCount)

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

void testRunStopped (long elapsedTime)

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

void testStarted ( TestDescription test)

Сообщает о начале отдельного тестового примера.

Поля

AFTER_FAILED_TESTCASES

public static final BugreportCollector.Predicate AFTER_FAILED_TESTCASES

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

AT_START

public static final BugreportCollector.Predicate AT_START

Предопределенный предикат, который срабатывает при начале первого вызова.

Общественные конструкторы

BugreportКоллектор

public BugreportCollector (ITestInvocationListener listener, 
                ITestDevice testDevice)

Параметры
listener ITestInvocationListener

testDevice ITestDevice

Публичные методы

добавитьпредикат

public void addPredicate (BugreportCollector.Predicate p)

Параметры
p BugreportCollector.Predicate

блокироватьUntilIdle

public void blockUntilIdle ()

Блокируйте до тех пор, пока сборщик не перестанет собирать отчеты об ошибках. Если сборщик не собирает отчеты об ошибках активно, вернитесь немедленно.

получитьСводка

public TestSummary getSummary ()

Позволяет InvokeListener возвращать сводку.

Возврат
TestSummary TestSummary , суммирующий прогон, или нулевой

вызовЗавершен

public void invocationEnded (long elapsedTime)

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

Будет автоматически вызываться платформой TradeFederation.

Параметры
elapsedTime long : прошедшее время вызова в мс.

вызов не пройден

public void invocationFailed (Throwable cause)

Сообщает о неполном вызове из-за какой-либо ошибки.

Будет автоматически вызываться платформой TradeFederation.

Параметры
cause Throwable : Throwable причина сбоя

вызовНачало

public void invocationStarted (IInvocationContext context)

Сообщает о начале тестового вызова.

Будет автоматически вызываться платформой TradeFederation. Создателям отчетов необходимо переопределить этот метод для поддержки отчетов с нескольких устройств.

Параметры
context IInvocationContext : информация о вызове.

setAsynchronous

public void setAsynchronous (boolean asynchronous)

Установите, должен ли сбор отчетов об ошибках собирать отчет об ошибке в другом потоке ( asynchronous = true ) или блокировать вызывающую сторону до тех пор, пока отчет об ошибке не будет захвачен ( asynchronous = false ).

Параметры
asynchronous boolean

setDescriptiveName

public void setDescriptiveName (String name)

Установите описательное имя, которое будет использоваться при записи отчетов об ошибках. Если null , BugreportCollector вернется к поведению по умолчанию, сериализуя имя события, вызвавшего сбор отчета об ошибке.

Параметры
name String

SetDeviceWaitTime

public void setDeviceWaitTime (int waitTime)

Установите время (в секундах) ожидания подключения устройства к сети, прежде чем мы попытаемся записать отчет об ошибке. В случае отрицательного результата проверка производиться не будет. Любое DeviceNotAvailableException обнаруженное во время этой проверки, будет зарегистрировано и проигнорировано.

Параметры
waitTime int

тестПредположениеОтказ

public void testAssumptionFailure (TestDescription test, 
                String trace)

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

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

trace String : трассировка стека сбоя.

testEnded

public void testEnded (TestDescription test, 
                 testMetrics)

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

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

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

testMetrics : ERROR(/Map) выданных метрик

тест не пройден

public void testFailed (TestDescription test, 
                String trace)

Сообщает о сбое отдельного тестового примера.

Будет вызываться между testStarted и testEnded.

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

trace String : трассировка стека сбоя.

тестИгнорируется

public void testIgnored (TestDescription test)

Вызывается, когда тест не будет запускаться, обычно потому, что метод теста помечен с помощью org.junit.Ignore.

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

журнал испытаний

public void testLog (String dataName, 
                LogDataType dataType, 
                InputStreamSource dataStream)

Предоставляет связанные данные журнала или отладки из тестового вызова.

Должен быть вызван перед ERROR(/ITestInvocationListener#invocationFailed(Throwable)) или ERROR(/ITestInvocationListener#invocationEnded(long))

Платформа TradeFederation автоматически вызовет этот метод, предоставив журнал хоста и, если применимо, logcat устройства.

Параметры
dataName String : String описательное имя данных. например, «device_logcat». Примечание. dataName не может быть уникальным для каждого вызова. т.е. разработчики должны иметь возможность обрабатывать несколько вызовов с одним и тем же именем данных.

dataType LogDataType : LogDataType данных.

dataStream InputStreamSource : InputStreamSource данных. Разработчики должны вызвать createInputStream, чтобы начать чтение данных, и обеспечить закрытие результирующего InputStream после завершения. Вызывающая сторона должна гарантировать, что источник данных остается присутствующим и доступным до завершения метода testLog.

testRunEnded

public void testRunEnded (long elapsedTime, 
                 runMetrics)

Сообщает об окончании тестового запуска. ИСПРАВЛЕНИЕ: мы не можем иметь два интерфейса Map<> разного типа, поэтому здесь нам придется использовать HashMap.

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

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

testRunFailed

public void testRunFailed (String errorMessage)

Тестовый запуск отчетов не удалось завершить из-за фатальной ошибки.

Параметры
errorMessage String : String , описывающая причину сбоя выполнения.

testRunStarted

public void testRunStarted (String runName, 
                int testCount)

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

Параметры
runName String : имя запуска теста.

testCount int : общее количество тестов в тестовом запуске

testRunStopped

public void testRunStopped (long elapsedTime)

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

TODO: в настоящее время не используется, рассмотрите возможность удаления

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

тестНачало

public void testStarted (TestDescription test)

Сообщает о начале отдельного тестового примера. В более старом интерфейсе следует по возможности использовать testStarted(com.android.tradefed.result.TestDescription) .

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