BasePostProcessor

public abstract class BasePostProcessor
extends Object implements IPostProcessor

java.lang.Object
com.android.tradefed.postprocessor.BasePostProcessor


Der Basis IPostProcessor , den jede Implementierung erweitern sollte. Stellen Sie sicher, dass die Nachbearbeitungsmethoden vor den Endergebnisreportern aufgerufen werden.

Zusammenfassung

Öffentliche Konstrukteure

BasePostProcessor ()

Öffentliche Methoden

final ITestInvocationListener init ( ITestInvocationListener listener)

Initialisierungsschritt des Postprozessors.

final void invocationEnded (long elapsedTime)

Meldet, dass der Aufruf erfolgreich oder aufgrund einer Fehlerbedingung beendet wurde.

final void invocationFailed ( FailureDescription failure)

Meldet einen unvollständigen Aufruf aufgrund einer Fehlerbedingung.

final void invocationFailed (Throwable cause)

Meldet einen unvollständigen Aufruf aufgrund einer Fehlerbedingung.

final void invocationStarted ( IInvocationContext context)

Aufruf-Listener für die Weiterleitung

final boolean isDisabled ()

Gibt True zurück, wenn das gesamte Objekt deaktiviert ist (Setup und Teardown überspringen).

final void logAssociation (String dataName, LogFile logFile)

In einigen Fällen muss das Protokoll stark mit einem Testfall verknüpft werden, aber die Möglichkeit dazu besteht direkt in testLogSaved(String, com.android.tradefed.result.LogDataType, com.android.tradefed.result.InputStreamSource, com.android.tradefed.result.LogFile) Callback ist nicht möglich.

Aktualisiert die Log-to-Test-Zuordnung.

processAllTestMetricsAndLogs (ListMultimap<String, MetricMeasurement.Metric> allTestMetrics, allTestLogs) processAllTestMetricsAndLogs (ListMultimap<String, MetricMeasurement.Metric> allTestMetrics, allTestLogs)

Implementieren Sie diese Methode, um Metriken und Protokolle über alle Tests hinweg zu aggregieren.

abstract processRunMetricsAndLogs ( rawMetrics, runLogs) processRunMetricsAndLogs ( rawMetrics, runLogs) processRunMetricsAndLogs ( rawMetrics, runLogs)

Implementieren Sie diese Methode, um eine Reihe neuer Metriken aus den vorhandenen Metriken und Protokollen zu generieren.

processTestMetricsAndLogs ( TestDescription testDescription, testMetrics, testLogs) processTestMetricsAndLogs ( TestDescription testDescription, testMetrics, testLogs) processTestMetricsAndLogs ( TestDescription testDescription, testMetrics, testLogs)

Implementieren Sie diese Methode, um Prozessmetriken und Protokolle von jedem Test zu posten.

final void setLogSaver ( ILogSaver logSaver)

Legen Sie ILogSaver so fest, dass der Implementierer Dateien speichern kann.

void setUp ()

Überschreiben Sie diese Methode in den untergeordneten Postprozessoren, um sie vor den Testläufen zu initialisieren.

final void testAssumptionFailure ( TestDescription test, String trace)

Wird aufgerufen, wenn ein atomarer Test anzeigt, dass er eine falsche Bedingung annimmt

final void testAssumptionFailure ( TestDescription test, FailureDescription failure)

Wird aufgerufen, wenn ein atomarer Test anzeigt, dass er eine falsche Bedingung annimmt

final void testEnded ( TestDescription test, long endTime, testMetrics) testEnded ( TestDescription test, long endTime, testMetrics)

Alternative zu ERROR(/#testEnded(com.android.tradefed.result.TestDescription,Map)) wo wir die Endzeit direkt angeben können.

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

Meldet das Ausführungsende eines einzelnen Testfalls.

final void testFailed ( TestDescription test, FailureDescription failure)

Meldet das Fehlschlagen eines einzelnen Testfalls.

final void testFailed ( TestDescription test, String trace)

Meldet das Fehlschlagen eines einzelnen Testfalls.

final void testIgnored ( TestDescription test)

Wird aufgerufen, wenn ein Test nicht ausgeführt wird, im Allgemeinen, weil eine Testmethode mit org.junit.Ignore kommentiert ist.

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

Verwenden Sie diese Methode, um eine Datei aus der PostProcessor-Implementierung zu protokollieren.

final void testLogSaved (String dataName, LogDataType dataType, InputStreamSource dataStream, LogFile logFile)

Wird aufgerufen, wenn das Testprotokoll gespeichert wird.

final void testModuleEnded ()

Meldet das Ende einer Modulausführung.

final void testModuleStarted ( IInvocationContext moduleContext)

Meldet den Beginn eines laufenden Moduls.

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

Meldet das Ende des Testlaufs.

final void testRunFailed ( FailureDescription failure)

Der Berichtstestlauf konnte aufgrund eines von FailureDescription beschriebenen Fehlers nicht abgeschlossen werden.

final void testRunFailed (String errorMessage)

Berichtstestlauf konnte aufgrund eines schwerwiegenden Fehlers nicht abgeschlossen werden.

final void testRunStarted (String runName, int testCount, int attemptNumber)

Meldet den Start eines Testlaufs.

final void testRunStarted (String runName, int testCount)

Rückrufe testen

final void testRunStarted (String runName, int testCount, int attemptNumber, long startTime)

Meldet den Start eines Testlaufs.

final void testRunStopped (long elapsedTime)

Berichtet, dass der Testlauf aufgrund einer Benutzeranforderung vor Abschluss beendet wurde.

final void testStarted ( TestDescription test, long startTime)

Alternative zu testStarted(com.android.tradefed.result.TestDescription) , wo wir auch angeben, wann der Test gestartet wurde, kombiniert mit ERROR(/#testEnded(com.android.tradefed.result.TestDescription,long,Map)) für eine genaue Messung .

final void testStarted ( TestDescription test)

Rückrufe für Testfälle

Geschützte Methoden

MetricMeasurement.DataType getMetricType ()

Überschreiben Sie diese Methode, um den Metriktyp bei Bedarf zu ändern.

String getRunName ()

Öffentliche Konstrukteure

BasePostProcessor

public BasePostProcessor ()

Öffentliche Methoden

drin

public final ITestInvocationListener init (ITestInvocationListener listener)

Initialisierungsschritt des Postprozessors. Sichergestellt, dass Sie vor einem der Testrückrufe angerufen werden.

Parameter
listener ITestInvocationListener

Kehrt zurück
ITestInvocationListener

AufrufBeendet

public final void invocationEnded (long elapsedTime)

Meldet, dass der Aufruf erfolgreich oder aufgrund einer Fehlerbedingung beendet wurde.

Wird automatisch vom TradeFederation-Framework aufgerufen.

Parameter
elapsedTime long : die verstrichene Zeit des Aufrufs in ms

Aufruf fehlgeschlagen

public final void invocationFailed (FailureDescription failure)

Meldet einen unvollständigen Aufruf aufgrund einer Fehlerbedingung.

Wird automatisch vom TradeFederation-Framework aufgerufen.

Parameter
failure FailureDescription : die FailureDescription , die die Ursache des Fehlers beschreibt

Aufruf fehlgeschlagen

public final void invocationFailed (Throwable cause)

Meldet einen unvollständigen Aufruf aufgrund einer Fehlerbedingung.

Wird automatisch vom TradeFederation-Framework aufgerufen.

Parameter
cause Throwable : die Fehlerursache ERROR(/Throwable)

AufrufStarted

public final void invocationStarted (IInvocationContext context)

Aufruf-Listener für die Weiterleitung

Parameter
context IInvocationContext : Informationen über den Aufruf

ist behindert

public final boolean isDisabled ()

Gibt True zurück, wenn das gesamte Objekt deaktiviert ist (Setup und Teardown überspringen). Sonst falsch.

Kehrt zurück
boolean

logAssoziation

public final void logAssociation (String dataName, 
                LogFile logFile)

In einigen Fällen muss das Protokoll stark mit einem Testfall verknüpft werden, aber die Möglichkeit dazu besteht direkt in testLogSaved(String, com.android.tradefed.result.LogDataType, com.android.tradefed.result.InputStreamSource, com.android.tradefed.result.LogFile) Callback ist nicht möglich. Somit ermöglicht dieser Rückruf die explizite Bereitstellung einer starken Assoziation.

Aktualisiert die Log-to-Test-Zuordnung. Wenn diese Methode während eines Tests aufgerufen wird, gehört das Protokoll zum Test; andernfalls handelt es sich um ein Ausführungsprotokoll.

Parameter
dataName String : Der Name der Daten

logFile LogFile : die zuvor protokollierte LogFile , die dem Testfall zugeordnet werden soll.

ProcessAllTestMetricsAndLogs

public  processAllTestMetricsAndLogs (ListMultimap<String, MetricMeasurement.Metric> allTestMetrics, 
                 allTestLogs)

Implementieren Sie diese Methode, um Metriken und Protokolle über alle Tests hinweg zu aggregieren. Metriken, die aus dieser Methode hervorgehen, werden als Laufmetriken gemeldet. Nur die neu generierten Metriken sollten zurückgegeben werden, und zwar mit eindeutigem Schlüsselnamen (es sind keine Kollisionen mit vorhandenen Schlüsseln zulässig).

Parameter
allTestMetrics ListMultimap : Eine HashMultimap, die die Metriken aus jedem Test speichert, gruppiert nach Metriknamen.

allTestLogs : Eine Karte, die die Karte der Protokolldateien jedes Tests speichert, die nach ihren Datennamen verschlüsselt sind, wobei die TestDescription jedes Tests als Schlüssel verwendet wird.

Kehrt zurück
Der Satz neu generierter Metriken aus allen Testmetriken.

processRunMetricsAndLogs

public abstract  processRunMetricsAndLogs ( rawMetrics, 
                 runLogs)

Implementieren Sie diese Methode, um eine Reihe neuer Metriken aus den vorhandenen Metriken und Protokollen zu generieren. Nur die neu generierten Metriken sollten zurückgegeben werden, und zwar mit eindeutigem Schlüsselnamen (es sind keine Kollisionen mit vorhandenen Schlüsseln zulässig).

Parameter
rawMetrics : Der Satz von Rohmetriken, die für den Lauf verfügbar sind.

runLogs : Der Satz von Protokolldateien für den Testlauf.

Kehrt zurück
Der Satz neu generierter Metriken aus den Laufmetriken.

processTestMetricsAndLogs

public  processTestMetricsAndLogs (TestDescription testDescription, 
                 testMetrics, 
                 testLogs)

Implementieren Sie diese Methode, um Prozessmetriken und Protokolle von jedem Test zu posten. Nur die neu generierten Metriken sollten zurückgegeben werden, und zwar mit eindeutigem Schlüsselnamen (es sind keine Kollisionen mit vorhandenen Schlüsseln zulässig).

Parameter
testDescription TestDescription : Das TestDescription-Objekt, das den Test beschreibt.

testMetrics : Der Satz von Metriken aus dem Test.

testLogs : Der Satz von Dateien, die während des Tests protokolliert wurden.

Kehrt zurück
Der Satz neu generierter Metriken aus den Testmetriken.

setLogSaver

public final void setLogSaver (ILogSaver logSaver)

Legen Sie ILogSaver so fest, dass der Implementierer Dateien speichern kann.

Parameter
logSaver ILogSaver : der ILogSaver

aufstellen

public void setUp ()

Überschreiben Sie diese Methode in den untergeordneten Postprozessoren, um sie vor den Testläufen zu initialisieren.

TestAnnahmeFehler

public final void testAssumptionFailure (TestDescription test, 
                String trace)

Wird aufgerufen, wenn ein atomarer Test anzeigt, dass er eine falsche Bedingung annimmt

Parameter
test TestDescription : identifiziert den Test

trace String : Stack-Trace des Fehlers

TestAnnahmeFehler

public final void testAssumptionFailure (TestDescription test, 
                FailureDescription failure)

Wird aufgerufen, wenn ein atomarer Test anzeigt, dass er eine falsche Bedingung annimmt

Parameter
test TestDescription : identifiziert den Test

failure FailureDescription : FailureDescription , die den Fehler und seinen Kontext beschreibt.

testBeendet

public final void testEnded (TestDescription test, 
                long endTime, 
                 testMetrics)

Alternative zu ERROR(/#testEnded(com.android.tradefed.result.TestDescription,Map)) wo wir die Endzeit direkt angeben können. Kombinieren Sie mit testStarted(com.android.tradefed.result.TestDescription, long) für eine genaue Messung.

Parameter
test TestDescription : identifiziert den Test

endTime long : die Zeit, zu der der Test endete, gemessen über ERROR(/System#currentTimeMillis())

testMetrics : ein ERROR(/Map) der ausgegebenen Metriken

testBeendet

public final void testEnded (TestDescription test, 
                 testMetrics)

Meldet das Ausführungsende eines einzelnen Testfalls.

Wenn testFailed(TestDescription, FailureDescription) nicht aufgerufen wurde, wurde dieser Test bestanden. Gibt auch alle Schlüssel/Wert-Metriken zurück, die möglicherweise während der Ausführung des Testfalls ausgegeben wurden.

Parameter
test TestDescription : identifiziert den Test

testMetrics : ein ERROR(/Map) der ausgegebenen Metriken

im Test durchgefallen

public final void testFailed (TestDescription test, 
                FailureDescription failure)

Meldet das Fehlschlagen eines einzelnen Testfalls.

Wird zwischen testStarted und testEnded aufgerufen.

Parameter
test TestDescription : identifiziert den Test

failure FailureDescription : FailureDescription , die den Fehler und seinen Kontext beschreibt.

im Test durchgefallen

public final void testFailed (TestDescription test, 
                String trace)

Meldet das Fehlschlagen eines einzelnen Testfalls.

Wird zwischen testStarted und testEnded aufgerufen.

Parameter
test TestDescription : identifiziert den Test

trace String : Stack-Trace des Fehlers

testIgnoriert

public final void testIgnored (TestDescription test)

Wird aufgerufen, wenn ein Test nicht ausgeführt wird, im Allgemeinen, weil eine Testmethode mit org.junit.Ignore kommentiert ist.

Parameter
test TestDescription : identifiziert den Test

testLog

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

Verwenden Sie diese Methode, um eine Datei aus der PostProcessor-Implementierung zu protokollieren.

Parameter
dataName String : ein ERROR(/String) beschreibender Name der Daten. zB "device_logcat". Hinweis dataName darf pro Aufruf nicht eindeutig sein. dh Implementierer müssen in der Lage sein, mehrere Aufrufe mit demselben dataName zu verarbeiten

dataType LogDataType : der LogDataType der Daten

dataStream InputStreamSource : die InputStreamSource der Daten. Implementierer sollten createInputStream aufrufen, um mit dem Lesen der Daten zu beginnen, und sicherstellen, dass der resultierende InputStream nach Abschluss geschlossen wird. Aufrufer sollten sicherstellen, dass die Quelle der Daten vorhanden und zugänglich bleibt, bis die testLog-Methode abgeschlossen ist.

testLogGespeichert

public final void testLogSaved (String dataName, 
                LogDataType dataType, 
                InputStreamSource dataStream, 
                LogFile logFile)

Wird aufgerufen, wenn das Testprotokoll gespeichert wird.

Sollte anstelle von ITestInvocationListener#testLog(String, LogDataType, InputStreamSource) verwendet werden.

Parameter
dataName String : ein ERROR(/String) beschreibender Name der Daten. zB "device_logcat". Hinweis dataName darf pro Aufruf nicht eindeutig sein. dh Implementierer müssen in der Lage sein, mehrere Aufrufe mit demselben dataName zu verarbeiten

dataType LogDataType : der LogDataType der Daten

dataStream InputStreamSource : die InputStreamSource der Daten. Implementierer sollten createInputStream aufrufen, um mit dem Lesen der Daten zu beginnen, und sicherstellen, dass der resultierende InputStream nach Abschluss geschlossen wird.

logFile LogFile : das LogFile , das die Metadaten der gespeicherten Datei enthält.

testModuleEnded

public final void testModuleEnded ()

Meldet das Ende einer Modulausführung.

testModuleStarted

public final void testModuleStarted (IInvocationContext moduleContext)

Meldet den Beginn eines laufenden Moduls. Dieser Rückruf ist testModuleEnded() zugeordnet und in der Sequenz optional. Es wird nur während eines Laufs verwendet, der Module verwendet: Suite-basierte Läufer.

Parameter
moduleContext IInvocationContext : der IInvocationContext des Moduls.

testRunEnded

public final void testRunEnded (long elapsedTime, 
                 runMetrics)

Meldet das Ende des Testlaufs. FIXME: Wir können nicht zwei Map<>-Schnittstellen mit unterschiedlichem Typ haben, also müssen wir hier HashMap verwenden.

Parameter
elapsedTime long : vom Gerät gemeldete verstrichene Zeit in Millisekunden

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

testRunFailed

public final void testRunFailed (FailureDescription failure)

Der Berichtstestlauf konnte aufgrund eines von FailureDescription beschriebenen Fehlers nicht abgeschlossen werden.

Parameter
failure FailureDescription : FailureDescription , die den Fehler und seinen Kontext beschreibt.

testRunFailed

public final void testRunFailed (String errorMessage)

Berichtstestlauf konnte aufgrund eines schwerwiegenden Fehlers nicht abgeschlossen werden.

Parameter
errorMessage String : ERROR(/String) beschreibt den Grund für den Ausführungsfehler.

testRunStarted

public final void testRunStarted (String runName, 
                int testCount, 
                int attemptNumber)

Meldet den Start eines Testlaufs.

Parameter
runName String : der Name des Testlaufs

testCount int : Gesamtzahl der Tests im Testlauf

attemptNumber int : Auftragsnummer, die die verschiedenen Versuche desselben runName identifiziert, die mehrmals ausgeführt werden. Die tryNumber ist 0-indiziert und sollte bei jeder neuen Ausführung erhöht werden. Beispiel: Ein Test wird granular 3 Mal wiederholt, er sollte insgesamt 4 Läufe unter demselben RunName haben und die tryNumber liegt zwischen 0 und 3.

testRunStarted

public final void testRunStarted (String runName, 
                int testCount)

Rückrufe testen

Parameter
runName String : der Name des Testlaufs

testCount int : Gesamtzahl der Tests im Testlauf

testRunStarted

public final void testRunStarted (String runName, 
                int testCount, 
                int attemptNumber, 
                long startTime)

Meldet den Start eines Testlaufs.

Parameter
runName String : der Name des Testlaufs

testCount int : Gesamtzahl der Tests im Testlauf

attemptNumber int : Auftragsnummer, die die verschiedenen Versuche desselben runName identifiziert, die mehrmals ausgeführt werden. Die tryNumber ist 0-indiziert und sollte bei jeder neuen Ausführung erhöht werden. Beispiel: Ein Test wird granular 3 Mal wiederholt, er sollte insgesamt 4 Läufe unter demselben RunName haben und die tryNumber liegt zwischen 0 und 3.

startTime long : die Zeit, zu der der Lauf gestartet wurde, gemessen über ERROR(/System#currentTimeMillis())

testRunStopped

public final void testRunStopped (long elapsedTime)

Berichtet, dass der Testlauf aufgrund einer Benutzeranforderung vor Abschluss beendet wurde.

TODO: Derzeit nicht verwendet, erwägen Sie das Entfernen

Parameter
elapsedTime long : vom Gerät gemeldete verstrichene Zeit in Millisekunden

testGestartet

public final void testStarted (TestDescription test, 
                long startTime)

Alternative zu testStarted(com.android.tradefed.result.TestDescription) , wo wir auch angeben, wann der Test gestartet wurde, kombiniert mit ERROR(/#testEnded(com.android.tradefed.result.TestDescription,long,Map)) für eine genaue Messung .

Parameter
test TestDescription : identifiziert den Test

startTime long : die Zeit, zu der der Test gestartet wurde, gemessen über ERROR(/System#currentTimeMillis())

testGestartet

public final void testStarted (TestDescription test)

Rückrufe für Testfälle

Parameter
test TestDescription : identifiziert den Test

Geschützte Methoden

getMetricType

protected MetricMeasurement.DataType getMetricType ()

Überschreiben Sie diese Methode, um den Metriktyp bei Bedarf zu ändern. Standardmäßig ist die Metrik auf den verarbeiteten Typ eingestellt.

Kehrt zurück
MetricMeasurement.DataType

getRunName

protected String getRunName ()

Kehrt zurück
String