Kolekcjoner raportów błędów

public class BugreportCollector
extends Object implements ITestInvocationListener

Obiekt Java.lang.Object
com.android.tradefed.result.BugreportCollector


Element przekazujący ITestInvocationListener , który zbiera raporty o błędach w przypadku wystąpienia konfigurowalnych zdarzeń, a następnie wywołuje ITestInvocationListener#testLog na swoich elementach podrzędnych po zebraniu każdego raportu o błędach.

Zachowania: (FIXME: zakończ to)

  • Przechwyć po każdym przypadku, gdy którykolwiek przypadek testowy zakończył się niepowodzeniem
  • Przechwytywanie po każdym przypadku testowym
  • Przechwytywanie po każdym nieudanym teście
  • Schwytać

Streszczenie

Zagnieżdżone klasy

class BugreportCollector.Predicate

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

interface BugreportCollector.SubPredicate

Pola

public static final BugreportCollector.Predicate AFTER_FAILED_TESTCASES

Predefiniowany predykat uruchamiany po każdym nieudanym przypadku testowym

public static final BugreportCollector.Predicate AT_START

Predefiniowany predykat uruchamiany po rozpoczęciu pierwszego wywołania

Konstruktorzy publiczni

BugreportCollector ( ITestInvocationListener listener, ITestDevice testDevice)

Metody publiczne

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

Blokuj, dopóki moduł zbierający nie będzie zbierał żadnych raportów o błędach.

TestSummary getSummary ()

Umożliwia InvocationListener zwrócenie podsumowania.

void invocationEnded (long elapsedTime)

Raportuje, że wywołanie zostało zakończone 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 testu.

void setAsynchronous (boolean asynchronous)

Ustaw, czy zbieranie raportów o błędach powinno zbierać raporty o błędach w innym wątku ( asynchronous = true ), czy też blokuj obiekt wywołujący do czasu przechwycenia raportu o błędach ( asynchronous = false ).

void setDescriptiveName (String name)

Ustaw nazwę opisową, która będzie używana podczas rejestrowania raportów o błędach.

void setDeviceWaitTime (int waitTime)

Ustaw czas (w sekundach) oczekiwania, aż urządzenie będzie online, zanim spróbujemy przechwycić raport o błędzie.

void testAssumptionFailure ( TestDescription test, String trace)

Wywoływana, gdy test atomowy sygnalizuje, ż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 niepowodzenie pojedynczego przypadku testowego.

void testIgnored ( TestDescription test)

Wywoływane, gdy test nie zostanie uruchomiony, zazwyczaj dlatego, że metoda testowa jest oznaczona adnotacją org.junit.Ignore.

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

Zawiera skojarzone dane dziennika lub debugowania z wywołania testu.

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

Zgłasza koniec przebiegu testowego.

void testRunFailed (String errorMessage)

Raportuje, że przebieg testu nie został ukończony z powodu błędu krytycznego.

void testRunStarted (String runName, int testCount)

Zgłasza rozpoczęcie przebiegu testowego.

void testRunStopped (long elapsedTime)

Raportuje, że uruchomienie testowe zostało zatrzymane przed zakończeniem z powodu żądania użytkownika.

void testStarted ( TestDescription test)

Zgłasza rozpoczęcie pojedynczego przypadku testowego.

Pola

AFTER_FAILED_TESTCASES

public static final BugreportCollector.Predicate AFTER_FAILED_TESTCASES

Predefiniowany predykat uruchamiany po każdym nieudanym przypadku testowym

NA STARCIE

public static final BugreportCollector.Predicate AT_START

Predefiniowany predykat uruchamiany po rozpoczęciu pierwszego wywołania

Konstruktorzy publiczni

Kolekcjoner raportów błędów

public BugreportCollector (ITestInvocationListener listener, 
                ITestDevice testDevice)

Parametry
listener ITestInvocationListener

testDevice ITestDevice

Metody publiczne

dodajpredykat

public void addPredicate (BugreportCollector.Predicate p)

Parametry
p BugreportCollector.Predicate

blokuj do bezczynności

public void blockUntilIdle ()

Blokuj, dopóki moduł zbierający nie będzie zbierał żadnych raportów o błędach. Jeśli osoba zbierająca nie zbiera aktywnie raportu o błędzie, wróć natychmiast

pobierz podsumowanie

public TestSummary getSummary ()

Umożliwia InvocationListener zwrócenie podsumowania.

Zwroty
TestSummary TestSummary podsumowujący przebieg lub null

wywołanieZakończone

public void invocationEnded (long elapsedTime)

Raportuje, że wywołanie zostało zakończone pomyślnie lub z powodu błędu.

Zostanie automatycznie wywołany przez platformę TradeFederation.

Parametry
elapsedTime long : czas wywołania, który upłynął 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 : Throwable , czyli przyczyna niepowodzenia

wywołanieRozpoczęte

public void invocationStarted (IInvocationContext context)

Zgłasza początek wywołania testu.

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

Parametry
context IInvocationContext : informacja o wywołaniu

zestawAsynchroniczny

public void setAsynchronous (boolean asynchronous)

Ustaw, czy zbieranie raportów o błędach powinno zbierać raporty o błędach w innym wątku ( asynchronous = true ), czy też blokuj obiekt wywołujący do czasu przechwycenia raportu o błędach ( asynchronous = false ).

Parametry
asynchronous boolean

zestawNazwaOpisowa

public void setDescriptiveName (String name)

Ustaw nazwę opisową, która będzie używana 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, aż urządzenie będzie online, zanim spróbujemy przechwycić raport o błędzie. Jeżeli wynik będzie negatywny, 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 sygnalizuje, że zakłada warunek, który jest fałszywy

Parametry
test TestDescription : identyfikuje test

trace String : ślad stosu awarii

testZakończony

public void testEnded (TestDescription test, 
                 testMetrics)

Zgłasza koniec wykonania pojedynczego przypadku testowego.

Jeśli testFailed(TestDescription, FailureDescription) nie został wywołany, test zakończył się pomyślnie. Zwraca również wszelkie metryki klucz/wartość, 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 niepowodzenie pojedynczego przypadku testowego.

Będzie wywoływany pomiędzy testStarted i testEnded.

Parametry
test TestDescription : identyfikuje test

trace String : ślad stosu awarii

testIgnorowany

public void testIgnored (TestDescription test)

Wywoływane, gdy test nie zostanie uruchomiony, zazwyczaj dlatego, że metoda testowa jest oznaczona adnotacją org.junit.Ignore.

Parametry
test TestDescription : identyfikuje test

dziennik testowy

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

Zawiera skojarzone dane dziennika lub debugowania z wywołania testu.

Należy wywołać przed ERROR(/ITestInvocationListener#invocationFailed(Throwable)) lub ERROR(/ITestInvocationListener#invocationEnded(long))

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

Parametry
dataName String : String opisowy nazwy danych. np. „urządzenie_logcat”. Uwaga nazwa_danych może nie być unikalna dla każdego wywołania. tj. osoby wdrażające muszą być w stanie obsłużyć wiele wywołań z tą samą nazwą danych

dataType LogDataType : LogDataType danych

dataStream InputStreamSource : InputStreamSource danych. Osoby wdrażające powinny wywołać funkcję createInputStream, aby rozpocząć odczytywanie danych, i upewnić się, że po ukończeniu wynikowy strumień wejściowy zostanie zamknięty. Osoby wywołujące powinny upewnić się, że źródło danych pozostaje obecne i dostępne do czasu zakończenia metody testLog.

testRunZakończony

public void testRunEnded (long elapsedTime, 
                 runMetrics)

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

Parametry
elapsedTime long : urządzenie zgłosiło czas, który upłynął, w milisekundach

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

testRun nie powiódł się

public void testRunFailed (String errorMessage)

Raportuje, że przebieg testu nie został ukończony z powodu błędu krytycznego.

Parametry
errorMessage String : String opisujący przyczynę niepowodzenia uruchomienia.

Uruchomiono testRun

public void testRunStarted (String runName, 
                int testCount)

Zgłasza rozpoczęcie przebiegu testowego.

Parametry
runName String : nazwa przebiegu testowego

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

testRunZatrzymany

public void testRunStopped (long elapsedTime)

Raportuje, że uruchomienie testowe zostało zatrzymane przed zakończeniem z powodu żądania użytkownika.

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

Parametry
elapsedTime long : urządzenie zgłosiło czas, który upłynął, w milisekundach

test rozpoczęty

public void testStarted (TestDescription test)

Zgłasza rozpoczęcie pojedynczego przypadku testowego. Starszy interfejs, jeśli to możliwe, należy używać testStarted(com.android.tradefed.result.TestDescription) .

Parametry
test TestDescription : identyfikuje test