FehlerberichtCollector

public class BugreportCollector
extends Object implements ITestInvocationListener

java.lang.Object
😎 com.android.tradefed.result.BugreportCollector


Durchlauf-ITestInvocationListener, die Fehlerberichte erfasst, wenn konfigurierbare Ereignisse und ruft dann nach jedem untergeordneten Element ITestInvocationListener#testLog für die untergeordneten Elemente auf. Fehlerbericht erfasst wird.

Verhaltensweisen: (PROBLEM: fertigstellen)

  • Nach jedem Test erfassen, wenn Testläufe fehlgeschlagen sind
  • Nach jedem Testfall erfassen
  • Nach jedem fehlgeschlagenen Testlauf erfassen
  • Aufnehmen

Zusammenfassung

Verschachtelte Klassen

class BugreportCollector.Predicate

Ein vollständiges Prädikat, das beschreibt, wann ein Fehlerbericht erfasst werden soll. 

interface BugreportCollector.SubPredicate

 

Felder

public static final BugreportCollector.Predicate AFTER_FAILED_TESTCASES

Ein vordefiniertes Prädikat, das nach jedem fehlgeschlagenen Testfall ausgelöst wird

public static final BugreportCollector.Predicate AT_START

Ein vordefiniertes Prädikat, das beim Beginn des ersten Aufrufs ausgelöst wird

Öffentliche Konstruktoren

BugreportCollector(ITestInvocationListener listener, ITestDevice testDevice)

Öffentliche Methoden

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

Blockieren, bis der Collector keine Fehlerberichte erfasst.

TestSummary getSummary()

Ermöglicht dem InvocationListener, eine Zusammenfassung zurückzugeben.

void invocationEnded(long elapsedTime)

Meldet, dass der Aufruf beendet wurde, ob erfolgreich oder aufgrund eines Fehlers .

void invocationFailed(Throwable cause)

Meldet einen unvollständigen Aufruf aufgrund einer Fehlerbedingung.

void invocationStarted(IInvocationContext context)

Meldet den Beginn des Testaufrufs.

void setAsynchronous(boolean asynchronous)

Legen Sie fest, ob der Fehlerbericht in einem anderen Thread erfasst werden soll (asynchronous = true) oder blockiere den Anrufer, bis der Fehlerbericht erfasst wird (asynchronous = false)

void setDescriptiveName(String name)

Legen Sie einen beschreibenden Namen für die Aufzeichnung von Fehlerberichten fest.

void setDeviceWaitTime(int waitTime)

Stellen Sie ein, wie lange (in Sekunden) gewartet werden soll, bis das Gerät online ist, bevor wir versuchen, ein Ereignis zu erfassen. Fehlerbericht erstellen.

void testAssumptionFailure(TestDescription test, String trace)

Wird aufgerufen, wenn ein Atomtest meldet, dass eine Bedingung falsch ist

void testEnded(TestDescription test, testMetrics)

Meldet das Ausführungsende eines einzelnen Testlaufs.

void testFailed(TestDescription test, String trace)

Meldet das Scheitern eines einzelnen Testlaufs.

void testIgnored(TestDescription test)

Wird aufgerufen, wenn ein Test nicht ausgeführt wird. Dies ist im Allgemeinen der Fall, weil eine Testmethode mit org.junit.Ignorieren.

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

Stellt die zugehörigen Log- oder Debug-Daten aus dem Testaufruf bereit.

void testRunEnded(long elapsedTime, runMetrics)

Ende des Testlaufs für Berichte.

void testRunFailed(String errorMessage)

Der Testlauf für Berichte konnte aufgrund eines schwerwiegenden Fehlers nicht abgeschlossen werden.

void testRunStarted(String runName, int testCount)

Meldet den Start eines Testlaufs.

void testRunStopped(long elapsedTime)

Der Testlauf für Berichte wurde aufgrund einer Nutzeranfrage vor dem Abschluss gestoppt.

void testStarted(TestDescription test)

Meldet den Beginn eines einzelnen Testlaufs.

Felder

AFTER_FAILED_TESTCASES

public static final BugreportCollector.Predicate AFTER_FAILED_TESTCASES

Ein vordefiniertes Prädikat, das nach jedem fehlgeschlagenen Testfall ausgelöst wird

AT_START

public static final BugreportCollector.Predicate AT_START

Ein vordefiniertes Prädikat, das beim Beginn des ersten Aufrufs ausgelöst wird

Öffentliche Konstruktoren

FehlerberichtCollector

public BugreportCollector (ITestInvocationListener listener, 
                ITestDevice testDevice)

Parameter
listener ITestInvocationListener

testDevice ITestDevice

Öffentliche Methoden

addPredicate

public void addPredicate (BugreportCollector.Predicate p)

Parameter
p BugreportCollector.Predicate

blockUntilIdle

public void blockUntilIdle ()

Blockieren, bis der Collector keine Fehlerberichte erfasst. Wenn der Collector nicht aktiv Fehlerbericht abrufen, sofort zurückkehren

GetSummary

public TestSummary getSummary ()

Ermöglicht dem InvocationListener, eine Zusammenfassung zurückzugeben.

Returns
TestSummary Ein TestSummary für die Zusammenfassung der Ausführung oder null

Aufrufende beendet

public void invocationEnded (long elapsedTime)

Meldet, dass der Aufruf beendet wurde, ob erfolgreich oder aufgrund eines Fehlers .

Wird automatisch vom TradeFederation-Framework aufgerufen.

Parameter
elapsedTime long: die verstrichene Zeit des Aufrufs in ms

CallFailed (Aufruf fehlgeschlagen)

public void invocationFailed (Throwable cause)

Meldet einen unvollständigen Aufruf aufgrund einer Fehlerbedingung.

Wird automatisch vom TradeFederation-Framework aufgerufen.

Parameter
cause Throwable: die Throwable-Ursache des Fehlers

callStarted

public void invocationStarted (IInvocationContext context)

Meldet den Beginn des Testaufrufs.

Wird automatisch vom TradeFederation-Framework aufgerufen. Reporter müssen die um Berichte für mehrere Geräte zu erstellen.

Parameter
context IInvocationContext: Informationen zum Aufruf

SetAsynchronous

public void setAsynchronous (boolean asynchronous)

Legen Sie fest, ob der Fehlerbericht in einem anderen Thread erfasst werden soll (asynchronous = true) oder blockiere den Anrufer, bis der Fehlerbericht erfasst wird (asynchronous = false)

Parameter
asynchronous boolean

setDescriptiveName

public void setDescriptiveName (String name)

Legen Sie einen beschreibenden Namen für die Aufzeichnung von Fehlerberichten fest. Wenn null, BugreportCollector greift auf das Standardverhalten bei der Serialisierung des Namens Das Ereignis, das zur Erstellung des Fehlerberichts geführt hat.

Parameter
name String

setDeviceWartezeit

public void setDeviceWaitTime (int waitTime)

Stellen Sie ein, wie lange (in Sekunden) gewartet werden soll, bis das Gerät online ist, bevor wir versuchen, ein Ereignis zu erfassen. Fehlerbericht erstellen. Im Fall eines negativen Werts wird keine Prüfung durchgeführt. Beliebige DeviceNotAvailableException werden protokolliert und ignoriert.

Parameter
waitTime int

testAssumptionFailure

public void testAssumptionFailure (TestDescription test, 
                String trace)

Wird aufgerufen, wenn ein Atomtest meldet, dass eine Bedingung falsch ist

Parameter
test TestDescription: Identifiziert den Test

trace String: Stacktrace des Fehlers

TestBeendet

public void testEnded (TestDescription test, 
                 testMetrics)

Meldet das Ausführungsende eines einzelnen Testlaufs.

Wenn testFailed(TestDescription, FailureDescription) nicht aufgerufen wurde, ist dieser Test erfolgreich. Gibt auch beliebige Schlüssel/Wert-Paare zurück Messwerte, die möglicherweise während der Ausführung des Testlaufs ausgegeben wurden.

Parameter
test TestDescription: Identifiziert den Test

testMetrics : ein ERROR(/Map) der ausgegebenen Messwerte

TestFehlgeschlagen

public void testFailed (TestDescription test, 
                String trace)

Meldet das Scheitern eines einzelnen Testlaufs.

Wird zwischen testStarted und testEnded aufgerufen.

Parameter
test TestDescription: Identifiziert den Test

trace String: Stacktrace des Fehlers

testIgnoriert

public void testIgnored (TestDescription test)

Wird aufgerufen, wenn ein Test nicht ausgeführt wird. Dies ist im Allgemeinen der Fall, weil eine Testmethode mit org.junit.Ignorieren.

Parameter
test TestDescription: Identifiziert den Test

testLog

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

Stellt die zugehörigen Log- oder Debug-Daten aus dem Testaufruf bereit.

Muss vor ERROR(/ITestInvocationListener#invocationFailed(Throwable)) aufgerufen werden oder ERROR(/ITestInvocationListener#invocationEnded(long))

Das TradeFederation-Framework ruft diese Methode automatisch auf und stellt das Host-Protokoll bereit. und ggf. den Geräte-Logcat.

Parameter
dataName String: Ein beschreibender String-Name der Daten. z.B. „device_logcat“. Hinweis dataName darf pro Aufruf nicht eindeutig sein. d. h. Implementierungsteams müssen Mehrere Aufrufe mit demselben dataName

dataType LogDataType: die LogDataType der Daten

dataStream InputStreamSource: die InputStreamSource der Daten. Implementierungslösungen sollten createInputStream, um mit dem Lesen der Daten zu beginnen und sicherzustellen, dass das resultierende InputStream, wenn abgeschlossen ist. Anrufer sollten dafür sorgen, dass die Datenquelle nicht verloren geht. vorhanden und zugänglich sind, bis die testLog-Methode abgeschlossen ist.

testRunEnded

public void testRunEnded (long elapsedTime, 
                 runMetrics)

Ende des Testlaufs für Berichte. PROBLEM: Es können nicht zwei Karten verwendet werden.<> mit unterschiedlichen Typen. Wir müssen hier HashMap verwenden.

Parameter
elapsedTime long: Gerät hat die verstrichene Zeit in Millisekunden gemeldet

runMetrics : Schlüssel/Wert-Paare, die am Ende eines Testlaufs mit Metric gemeldet werden.

testRunFailed (Testlauf fehlgeschlagen)

public void testRunFailed (String errorMessage)

Der Testlauf für Berichte konnte aufgrund eines schwerwiegenden Fehlers nicht abgeschlossen werden.

Parameter
errorMessage String: String, die den Grund für den Ausführungsfehler beschreibt.

testRunStarted

public void testRunStarted (String runName, 
                int testCount)

Meldet den Start eines Testlaufs.

Parameter
runName String: der Name der Testausführung

testCount int: Gesamtzahl der Tests im Testlauf

testRunStopped

public void testRunStopped (long elapsedTime)

Der Testlauf für Berichte wurde aufgrund einer Nutzeranfrage vor dem Abschluss gestoppt.

AUFGABE: Derzeit nicht verwendet, entfernen Sie eventuell

Parameter
elapsedTime long: Gerät hat die verstrichene Zeit in Millisekunden gemeldet

testgestartet

public void testStarted (TestDescription test)

Meldet den Beginn eines einzelnen Testlaufs. Ältere Benutzeroberfläche; sollte nach Möglichkeit testStarted(com.android.tradefed.result.TestDescription) verwendet werden.

Parameter
test TestDescription: Identifiziert den Test