BugreportCollector

public class BugreportCollector
extends Object implements ITestInvocationListener

java.lang.Obiekt
com.android.tradefed.result.BugreportCollector


Przekazujący obiekt ITestInvocationListener , który zbiera raporty o błędach, gdy wystąpią konfigurowalne zdarzenia, a następnie wywołuje ITestInvocationListener#testLog na swoich elementach podrzędnych po zebraniu każdego raportu o błędzie.

Zachowania: (FIXME: dokończ to)

  • Przechwytuj po każdym, jeśli któryś z przypadków testowych zakończył się niepowodzeniem
  • Przechwytywanie po każdym przypadku testowym
  • Przechwytuj po każdym nieudanym przypadku testowym
  • Schwytać

Streszczenie

Klasy zagnieżdżone

class BugreportCollector.Predicate

Pełny predykat opisujący, kiedy przechwycić raport o błędzie.

interface BugreportCollector.SubPredicate

Pola

public static final BugreportCollector.Predicate AFTER_FAILED_TESTCASES

Predefiniowany predykat, który jest uruchamiany po każdym nieudanym przypadku testowym

public static final BugreportCollector.Predicate AT_START

Predefiniowany predykat, który uruchamia się, gdy rozpoczyna się pierwsze wywołanie

Konstruktory publiczne

BugreportCollector ( ITestInvocationListener listener, ITestDevice testDevice)

Metody publiczne

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

Blokuj, dopóki kolektor nie będzie zbierał żadnych raportów o błędach.

TestSummary getSummary ()

Umożliwia InvocationListener zwrócenie podsumowania.

void invocationEnded (long elapsedTime)

Zgłasza, że ​​wywołanie zakończyło się pomyślnie lub z powodu błędu.

void invocationFailed (Throwable cause)

Zgłasza niekompletne wywołanie z powodu błędu.

void invocationStarted ( IInvocationContext context)

Zgłasza początek wywołania testowego.

void setAsynchronous (boolean asynchronous)

Ustaw, czy zbieranie raportu o błędzie powinno zbierać raport o błędzie w innym wątku ( asynchronous = true ), czy też blokować wywołującego, dopóki raport o błędzie nie zostanie przechwycony ( asynchronous = false ).

void setDescriptiveName (String name)

Ustaw opisową nazwę używaną podczas rejestrowania raportów o błędach.

void setDeviceWaitTime (int waitTime)

Ustaw czas (w sekundach) oczekiwania na przejście urządzenia w tryb online, zanim spróbujemy przechwycić raport o błędzie.

void testAssumptionFailure ( TestDescription test, String trace)

Wywoływana, gdy test atomowy oznacza, że ​​zakłada warunek, który jest fałszywy

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

Zgłasza koniec wykonania pojedynczego przypadku testowego.

void testFailed ( TestDescription test, String trace)

Zgłasza awarię pojedynczego przypadku testowego.

void testIgnored ( TestDescription test)

Wywoływana, gdy test nie zostanie uruchomiony, zwykle dlatego, że metoda testowa ma adnotację org.junit.Ignore.

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

Udostępnia powiązane dane dziennika lub debugowania z wywołania testowego.

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

Zgłasza koniec przebiegu testowego.

void testRunFailed (String errorMessage)

Testowanie raportów nie zostało ukończone z powodu błędu krytycznego.

void testRunStarted (String runName, int testCount)

Zgłasza początek przebiegu testowego.

void testRunStopped (long elapsedTime)

Przebieg testu raportów został zatrzymany przed zakończeniem z powodu żądania użytkownika.

void testStarted ( TestDescription test)

Raportuje początek pojedynczego przypadku testowego.

Pola

AFTER_FAILED_TESTCASES

public static final BugreportCollector.Predicate AFTER_FAILED_TESTCASES

Predefiniowany predykat, który jest uruchamiany po każdym nieudanym przypadku testowym

NA STARCIE

public static final BugreportCollector.Predicate AT_START

Predefiniowany predykat, który uruchamia się, gdy rozpoczyna się pierwsze wywołanie

Konstruktory publiczne

BugreportCollector

public BugreportCollector (ITestInvocationListener listener, 
                ITestDevice testDevice)

Parametry
listener ITestInvocationListener

testDevice ITestDevice

Metody publiczne

addPredicate

public void addPredicate (BugreportCollector.Predicate p)

Parametry
p BugreportCollector.Predicate

blokuj do czasu bezczynności

public void blockUntilIdle ()

Blokuj, dopóki kolektor nie będzie zbierał żadnych raportów o błędach. Jeśli kolektor nie zbiera aktywnie raportu o błędzie, wróć natychmiast

getStreszczenie

public TestSummary getSummary ()

Umożliwia InvocationListener zwrócenie podsumowania.

Zwroty
TestSummary TestSummary podsumowujący przebieg lub null

wywołanie zakończone

public void invocationEnded (long elapsedTime)

Zgłasza, że ​​wywołanie zakończyło się pomyślnie lub z powodu błędu.

Zostanie automatycznie wywołany przez platformę TradeFederation.

Parametry
elapsedTime long : czas, który upłynął od wywołania w ms

wywołanie nie powiodło się

public void invocationFailed (Throwable cause)

Zgłasza niekompletne wywołanie z powodu błędu.

Zostanie automatycznie wywołany przez platformę TradeFederation.

Parametry
cause Throwable : przyczyna niepowodzenia ERROR(/Throwable)

wywołanie rozpoczęte

public void invocationStarted (IInvocationContext context)

Zgłasza początek wywołania testowego.

Zostanie automatycznie wywołany przez platformę TradeFederation. Reporterzy muszą zastąpić tę metodę, aby obsługiwać raportowanie wielu urządzeń.

Parametry
context IInvocationContext : informacje o wywołaniu

setAsynchroniczny

public void setAsynchronous (boolean asynchronous)

Ustaw, czy zbieranie raportu o błędzie powinno zbierać raport o błędzie w innym wątku ( asynchronous = true ), czy też blokować wywołującego, dopóki raport o błędzie nie zostanie przechwycony ( asynchronous = false ).

Parametry
asynchronous boolean

zestawNazwaOpisowa

public void setDescriptiveName (String name)

Ustaw opisową nazwę używaną podczas rejestrowania raportów o błędach. Jeśli null , BugreportCollector powróci do domyślnego zachowania polegającego na serializacji nazwy zdarzenia, które spowodowało zebranie raportu o błędzie.

Parametry
name String

ustaw czas oczekiwania na urządzenie

public void setDeviceWaitTime (int waitTime)

Ustaw czas (w sekundach) oczekiwania na przejście urządzenia w tryb online, zanim spróbujemy przechwycić raport o błędzie. W przypadku wyniku negatywnego kontrola nie zostanie przeprowadzona. Każdy wyjątek DeviceNotAvailableException napotkany podczas tego sprawdzania zostanie zarejestrowany i zignorowany.

Parametry
waitTime int

testZałożenieNiepowodzenie

public void testAssumptionFailure (TestDescription test, 
                String trace)

Wywoływana, gdy test atomowy oznacza, że ​​zakłada warunek, który jest fałszywy

Parametry
test TestDescription : identyfikuje test

trace String : ślad stosu awarii

test zakończony

public void testEnded (TestDescription test, 
                 testMetrics)

Zgłasza koniec wykonania pojedynczego przypadku testowego.

Jeśli testFailed(TestDescription, FailureDescription) nie został wywołany, ten test zakończył się pomyślnie. Zwraca również wszelkie metryki klucza/wartości, które mogły zostać wyemitowane podczas wykonywania przypadku testowego.

Parametry
test TestDescription : identyfikuje test

testMetrics : ERROR(/Map) emitowanych metryk

Test nieudany

public void testFailed (TestDescription test, 
                String trace)

Zgłasza awarię pojedynczego przypadku testowego.

Zostanie wywołany między testStarted a testEnded.

Parametry
test TestDescription : identyfikuje test

trace String : ślad stosu awarii

zignorowano test

public void testIgnored (TestDescription test)

Wywoływana, gdy test nie zostanie uruchomiony, zwykle dlatego, że metoda testowa ma adnotację org.junit.Ignore.

Parametry
test TestDescription : identyfikuje test

dziennik testowy

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

Udostępnia powiązane dane dziennika lub debugowania z wywołania testowego.

Musi zostać wywołane przed ERROR(/ITestInvocationListener#invocationFailed(Throwable)) lub ERROR(/ITestInvocationListener#invocationEnded(long))

Platforma TradeFederation automatycznie wywoła tę metodę, dostarczając dziennik hosta i, jeśli ma to zastosowanie, logcat urządzenia.

Parametry
dataName String : opisowa nazwa danych ERROR(/String) . np. „device_logcat”. Uwaga dataName może nie być unikatowa na wywołanie. tj. realizatorzy muszą być w stanie obsłużyć wiele wywołań z tą samą nazwą danych

dataType LogDataType : LogDataType danych

dataStream InputStreamSource : InputStreamSource danych. Implementatorzy powinni wywoływać metodę createInputStream, aby rozpocząć odczytywanie danych, i upewnić się, że wynikowy InputStream zostanie zamknięty po zakończeniu. Obiekty wywołujące powinny upewnić się, że źródło danych pozostaje obecne i dostępne do czasu zakończenia metody testLog.

testRunEnded

public void testRunEnded (long elapsedTime, 
                 runMetrics)

Zgłasza koniec przebiegu testowego. FIXME: Nie możemy mieć dwóch różnych interfejsów Map<>, więc musimy tutaj użyć HashMap.

Parametry
elapsedTime long : czas, który upłynął od urządzenia, w milisekundach

runMetrics : pary klucz-wartość zgłaszane na koniec przebiegu testu z Metric .

testRunNie powiodło się

public void testRunFailed (String errorMessage)

Testowanie raportów nie zostało ukończone z powodu błędu krytycznego.

Parametry
errorMessage String : ERROR(/String) opisujący przyczynę niepowodzenia uruchomienia.

testRunStarted

public void testRunStarted (String runName, 
                int testCount)

Zgłasza początek przebiegu testowego.

Parametry
runName String : nazwa uruchomienia testu

testCount int : całkowita liczba testów w przebiegu testu

testRunZatrzymany

public void testRunStopped (long elapsedTime)

Przebieg testu raportów został zatrzymany przed zakończeniem z powodu żądania użytkownika.

DO ZROBIENIA: obecnie nieużywane, rozważ usunięcie

Parametry
elapsedTime long : czas, który upłynął od urządzenia, w milisekundach

testRozpoczęty

public void testStarted (TestDescription test)

Raportuje początek pojedynczego przypadku testowego. Starszy interfejs powinien używać testStarted(com.android.tradefed.result.TestDescription) gdy tylko jest to możliwe.

Parametry
test TestDescription : identyfikuje test