BasePostProcessor
public
abstract
class
BasePostProcessor
extends Object
implements
IPostProcessor
java.lang.Object | |
↳ | com.android.tradefed.postprocessor.BasePostProcessor |
Die Basis-IPostProcessor
, die jede Implementierung erweitern sollte. Die Methoden zur Nachverarbeitung müssen vor den Berichtern für das Endergebnis aufgerufen werden.
Zusammenfassung
Öffentliche Konstruktoren | |
---|---|
BasePostProcessor()
|
Öffentliche Methoden | |
---|---|
final
ITestInvocationListener
|
init(ITestInvocationListener listener)
Initialisierungsschritt des Postprozessors. |
final
void
|
invocationEnded(long elapsedTime)
Gibt an, ob die Aufrufe erfolgreich oder aufgrund eines Fehlers beendet wurden. |
final
void
|
invocationFailed(FailureDescription failure)
Eine unvollständige Aufrufung wird aufgrund einer Fehlerbedingung gemeldet. |
final
void
|
invocationFailed(Throwable cause)
Eine unvollständige Aufrufung wird aufgrund einer Fehlerbedingung gemeldet. |
void
|
invocationSkipped(SkipReason reason)
Meldet einen Aufruf als übersprungen |
final
void
|
invocationStarted(IInvocationContext context)
Listener für Aufrufe zur Weiterleitung |
final
boolean
|
isDisabled()
Gibt "True" zurück, wenn das gesamte Objekt deaktiviert ist (Einrichtung und Teardown überspringen). |
final
void
|
logAssociation(String dataName, LogFile logFile)
In einigen Fällen muss das Protokoll eng mit den Testfällen verknüpft sein, was über den direkten Aktualisiert die Verknüpfung zwischen Protokoll und Test. |
|
processAllTestMetricsAndLogs(ListMultimap<String, MetricMeasurement.Metric> allTestMetrics,
Implementieren Sie diese Methode, um Messwerte und Protokolle für alle Tests zusammenzufassen. |
abstract
|
processRunMetricsAndLogs(
Implementieren Sie diese Methode, um eine Reihe neuer Messwerte aus den vorhandenen Messwerten und Protokollen zu generieren. |
|
processTestMetricsAndLogs(TestDescription testDescription,
Implementieren Sie diese Methode, um Prozessmesswerte und Logs von jedem Test zu posten. |
final
void
|
setLogSaver(ILogSaver logSaver)
Legen Sie die |
void
|
setUp()
Überschreiben Sie diese Methode in den untergeordneten Postprozessoren, um sie vor dem Test zu initialisieren. |
final
void
|
testAssumptionFailure(TestDescription test, String trace)
Wird aufgerufen, wenn ein atomarer Test meldet, dass eine Bedingung angenommen wird, die falsch ist. |
final
void
|
testAssumptionFailure(TestDescription test, FailureDescription failure)
Wird aufgerufen, wenn ein atomarer Test meldet, dass eine Bedingung angenommen wird, die falsch ist. |
final
void
|
testEnded(TestDescription test, long endTime,
Alternative zu |
final
void
|
testEnded(TestDescription test,
Gibt das Ende der Ausführung eines einzelnen Testfalls an. |
final
void
|
testFailed(TestDescription test, FailureDescription failure)
Hier wird der Fehler eines einzelnen Testfalls gemeldet. |
final
void
|
testFailed(TestDescription test, String trace)
Hier wird der Fehler eines einzelnen Testfalls gemeldet. |
final
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 annotiert 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()
Gibt das Ende eines Modullaufs an. |
final
void
|
testModuleStarted(IInvocationContext moduleContext)
Gibt den Beginn der Ausführung eines Moduls an. |
final
void
|
testRunEnded(long elapsedTime,
Gibt das Ende des Testlaufs an. |
final
void
|
testRunFailed(FailureDescription failure)
Der Testlauf für Berichte konnte aufgrund eines Fehlers, der von |
final
void
|
testRunFailed(String errorMessage)
Der Testlauf für Berichte konnte aufgrund eines schwerwiegenden Fehlers nicht abgeschlossen werden. |
final
void
|
testRunStarted(String runName, int testCount, int attemptNumber)
Gibt den Beginn eines Testlaufs an. |
final
void
|
testRunStarted(String runName, int testCount)
Testlauf-Callbacks |
final
void
|
testRunStarted(String runName, int testCount, int attemptNumber, long startTime)
Gibt den Beginn eines Testlaufs an. |
final
void
|
testRunStopped(long elapsedTime)
Der Testlauf für Berichte wurde aufgrund einer Nutzeranfrage vor dem Abschluss gestoppt. |
final
void
|
testSkipped(TestDescription test, SkipReason reason)
Wird aufgerufen, wenn ein Test übersprungen und aus einem Grund nicht ausgeführt wurde, der normalerweise nicht erwartet wird. |
final
void
|
testStarted(TestDescription test, long startTime)
Alternative zu |
final
void
|
testStarted(TestDescription test)
Callbacks für Testfälle |
Geschützte Methoden | |
---|---|
void
|
cleanUp()
|
MetricMeasurement.DataType
|
getMetricType()
Überschreiben Sie diese Methode, um den Messwerttyp bei Bedarf zu ändern. |
String
|
getRunName()
|
Öffentliche Konstruktoren
BasePostProcessor
public BasePostProcessor ()
Öffentliche Methoden
init
public final ITestInvocationListener init (ITestInvocationListener listener)
Initialisierungsschritt des Postprozessors. Wird vor jedem Test-Callback aufgerufen.
Parameter | |
---|---|
listener |
ITestInvocationListener |
Returns | |
---|---|
ITestInvocationListener |
invocationEnded
public final void invocationEnded (long elapsedTime)
Gibt an, ob die Aufrufe erfolgreich oder aufgrund eines Fehlers beendet wurden.
Wird automatisch vom TradeFederation-Framework aufgerufen.
Parameter | |
---|---|
elapsedTime |
long : die verstrichene Zeit seit der Aufrufung in ms |
invocationFailed
public final void invocationFailed (FailureDescription failure)
Eine unvollständige Aufrufung wird aufgrund einer Fehlerbedingung gemeldet.
Wird automatisch vom TradeFederation-Framework aufgerufen.
Parameter | |
---|---|
failure |
FailureDescription : die FailureDescription , die die Ursache des Fehlers beschreibt |
CallFailed (Aufruf fehlgeschlagen)
public final void invocationFailed (Throwable cause)
Eine unvollständige Aufrufung wird aufgrund einer Fehlerbedingung gemeldet.
Wird automatisch vom TradeFederation-Framework aufgerufen.
Parameter | |
---|---|
cause |
Throwable : die Throwable Ursache des Fehlers |
invocationSkipped
public void invocationSkipped (SkipReason reason)
Eine Aufrufe wird als übersprungen gemeldet
Parameter | |
---|---|
reason |
SkipReason |
invocationStarted
public final void invocationStarted (IInvocationContext context)
Aufruf-Listener für die Weiterleitung
Parameter | |
---|---|
context |
IInvocationContext : Informationen zur Aufrufung |
isDisabled
public final boolean isDisabled ()
Gibt „True“ zurück, wenn das gesamte Objekt deaktiviert ist (Einrichtung und Deaktivierung werden übersprungen). Andernfalls „false“.
Returns | |
---|---|
boolean |
logAssociation
public final void logAssociation (String dataName, LogFile logFile)
In einigen Fällen muss das Protokoll eng mit den Testfällen verknüpft sein, was über den direkten testLogSaved(String, com.android.tradefed.result.LogDataType, com.android.tradefed.result.InputStreamSource, com.android.tradefed.result.LogFile)
-Callback jedoch nicht möglich ist. Dieser Callback ermöglicht es also, explizit eine starke Verknüpfung herzustellen.
Aktualisiert die Verknüpfung zwischen Protokoll und Test. Wenn diese Methode während eines Tests aufgerufen wird, gehört das Log zum Test. Andernfalls handelt es sich um ein Ausführungslog.
Parameter | |
---|---|
dataName |
String : der Name der Daten |
logFile |
LogFile : LogFile , die zuvor protokolliert wurde und mit dem Testlauf verknüpft werden sollte. |
processAllTestMetricsAndLogs
publicprocessAllTestMetricsAndLogs (ListMultimap<String, MetricMeasurement.Metric> allTestMetrics, allTestLogs)
Implementieren Sie diese Methode, um Messwerte und Protokolle für alle Tests zusammenzufassen. Messwerte, die aus dieser Methode stammen, werden als Ausführungsmesswerte gemeldet. Es sollten nur die neu generierten Messwerte zurückgegeben werden, und zwar mit einem eindeutigen Schlüsselnamen (keine Kollisionen mit vorhandenen Schlüsseln zulässig).
Parameter | |
---|---|
allTestMetrics |
ListMultimap : Eine HashMultimap, in der die Messwerte der einzelnen Tests nach Messwertnamen gruppiert gespeichert werden. |
allTestLogs |
: Eine Zuordnung, die die Logdateien der einzelnen Tests nach ihren Datennamen speichert und dabei die TestDescription der einzelnen Tests als Schlüssel verwendet. |
Returns | |
---|---|
|
Die neu generierten Messwerte aus allen Testmesswerten. |
processRunMetricsAndLogs
public abstractprocessRunMetricsAndLogs ( rawMetrics, runLogs)
Implementieren Sie diese Methode, um eine Reihe neuer Messwerte aus den vorhandenen Messwerten und Protokollen zu generieren. Es sollten nur die neu generierten Messwerte zurückgegeben werden, und zwar mit einem eindeutigen Schlüsselnamen (keine Kollisionen mit vorhandenen Schlüsseln zulässig).
Parameter | |
---|---|
rawMetrics |
: Die für den Durchlauf verfügbaren Rohmesswerte. |
runLogs |
: Die Logdateien für den Testlauf. |
Returns | |
---|---|
|
Die neu generierten Messwerte aus den Ausführungsmesswerten. |
processTestMetricsAndLogs
publicprocessTestMetricsAndLogs (TestDescription testDescription, testMetrics, testLogs)
Implementieren Sie diese Methode, um Messwerte und Protokolle aus jedem Test nachträglich zu verarbeiten. Es sollten nur die neu generierten Messwerte zurückgegeben werden, und zwar mit einem eindeutigen Schlüsselnamen (keine Kollisionen mit vorhandenen Schlüsseln zulässig).
Parameter | |
---|---|
testDescription |
TestDescription : Das TestDescription-Objekt, das den Test beschreibt. |
testMetrics |
: Die Messwerte aus dem Test. |
testLogs |
: Die während des Tests protokollierten Dateien. |
Returns | |
---|---|
|
Die neu generierten Messwerte aus den Testmesswerten. |
setLogSaver
public final void setLogSaver (ILogSaver logSaver)
Legen Sie die ILogSaver
fest, damit der Implementierer Dateien speichern kann.
Parameter | |
---|---|
logSaver |
ILogSaver : die ILogSaver |
setUp
public void setUp ()
Überschreiben Sie diese Methode in den untergeordneten Nachbearbeitern, um sie vor dem Testlauf zu initialisieren.
testAssumptionFailure
public final void testAssumptionFailure (TestDescription test, String trace)
Wird aufgerufen, wenn ein atomarer Test meldet, dass eine Bedingung angenommen wird, die falsch ist.
Parameter | |
---|---|
test |
TestDescription : identifiziert den Test |
trace |
String : Stacktrace des Fehlers |
testAssumptionFailure
public final void testAssumptionFailure (TestDescription test, FailureDescription failure)
Wird aufgerufen, wenn ein atomarer Test meldet, dass eine Bedingung angenommen wird, die falsch ist.
Parameter | |
---|---|
test |
TestDescription : identifiziert den Test |
failure |
FailureDescription : FailureDescription , die den Fehler und seinen Kontext beschreibt. |
testEnded
public final void testEnded (TestDescription test, long endTime,testMetrics)
Alternative zu ERROR(/#testEnded(com.android.tradefed.result.TestDescription,Map))
, mit der wir die Endzeit direkt angeben können. Kombinieren Sie diesen Messwert mit testStarted(com.android.tradefed.result.TestDescription, long)
, um genaue Ergebnisse zu erhalten.
Parameter | |
---|---|
test |
TestDescription : identifiziert den Test |
endTime |
long : Der Zeitpunkt, an dem der Test beendet wurde, gemessen über System.currentTimeMillis() |
testMetrics |
: ERROR(/Map) der gesendeten Messwerte |
testEnded
public final void testEnded (TestDescription test,testMetrics)
Gibt das Ende der Ausführung eines einzelnen Testfalls an.
Wenn testFailed(TestDescription, FailureDescription)
nicht aufgerufen wurde, wurde dieser Test bestanden. Außerdem werden alle Schlüssel/Wert-Messwerte zurückgegeben, die während der Ausführung des Testfalls gesendet wurden.
Parameter | |
---|---|
test |
TestDescription : identifiziert den Test |
testMetrics |
: ERROR(/Map) der gesendeten Messwerte |
testFailed
public final void testFailed (TestDescription test, FailureDescription failure)
Hier wird der Fehler eines einzelnen Testfalls gemeldet.
Wird zwischen „testStarted“ und „testEnded“ aufgerufen.
Parameter | |
---|---|
test |
TestDescription : identifiziert den Test |
failure |
FailureDescription : FailureDescription , die den Fehler und seinen Kontext beschreibt. |
testFailed
public final void testFailed (TestDescription test, String trace)
Hier wird der Fehler eines einzelnen Testfalls gemeldet.
Wird zwischen „testStarted“ und „testEnded“ aufgerufen.
Parameter | |
---|---|
test |
TestDescription : identifiziert den Test |
trace |
String : Stack-Trace des Fehlers |
testIgnored
public final void testIgnored (TestDescription test)
Wird aufgerufen, wenn ein Test nicht ausgeführt wird, in der Regel weil eine Testmethode mit org.junit.Ignore annotiert ist.
Parameter | |
---|---|
test |
TestDescription : Identifiziert den Test |
Test-Log
public final void testLog (String dataName, LogDataType dataType, InputStreamSource dataStream)
Mit dieser Methode kannst du eine Datei aus der Postprozessor-Implementierung protokollieren.
Parameter | |
---|---|
dataName |
String : Ein String aussagekräftiger Name für die Daten, z. B. „device_logcat“. Hinweis:
Der Datenname muss nicht für jeden Aufruf eindeutig sein. Entwickler müssen also in der Lage sein, mehrere Aufrufe mit demselben Datennamen zu verarbeiten. |
dataType |
LogDataType : die LogDataType der Daten |
dataStream |
InputStreamSource : die InputStreamSource der Daten. Implementer müssen createInputStream aufrufen, um mit dem Lesen der Daten zu beginnen, und den resultierenden InputStream nach Abschluss schließen. Die Aufrufer müssen dafür sorgen, dass die Datenquelle bis zum Abschluss der testLog-Methode vorhanden und zugänglich ist. |
testLogSaved
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 String aussagekräftiger Name für die Daten, z. B. „device_logcat“. Hinweis: dataName darf pro Aufruf nicht eindeutig sein. Implementierer müssen also mehrere Aufrufe mit demselben dataName verarbeiten können. |
dataType |
LogDataType : die LogDataType der Daten |
dataStream |
InputStreamSource : die InputStreamSource der Daten. Implementierer sollten createInputStream aufrufen, um mit dem Lesen der Daten zu beginnen, und den resultierenden InputStream nach Abschluss des Vorgangs schließen. |
logFile |
LogFile : die LogFile mit den Metadaten der gespeicherten Datei. |
testModuleEnded
public final void testModuleEnded ()
Gibt das Ende eines Modullaufs an.
testModuleStarted
public final void testModuleStarted (IInvocationContext moduleContext)
Gibt den Beginn der Ausführung eines Moduls an. Dieser Rückruf ist mit testModuleEnded()
verknüpft und in der Abfolge optional. Es wird nur bei einem Lauf verwendet, bei dem Module verwendet werden: Suite-basierte Auslöser.
Parameter | |
---|---|
moduleContext |
IInvocationContext : die IInvocationContext des Moduls. |
testRunEnded
public final void testRunEnded (long elapsedTime,runMetrics)
Ende des Testlaufs für Berichte.
Parameter | |
---|---|
elapsedTime |
long : Vom Gerät gemeldete verstrichene Zeit in Millisekunden |
runMetrics |
: Schlüssel/Wert-Paare, die am Ende eines Testlaufs erfasst werden |
testRunFailed
public final void testRunFailed (FailureDescription failure)
Der Testlauf für Berichte konnte aufgrund eines Fehlers, der von FailureDescription
beschrieben wurde, nicht abgeschlossen werden.
Parameter | |
---|---|
failure |
FailureDescription : FailureDescription , der den Fehler und seinen Kontext beschreibt. |
testRunFailed
public final 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 final void testRunStarted (String runName, int testCount, int attemptNumber)
Gibt den Beginn eines Testlaufs an.
Parameter | |
---|---|
runName |
String : der Name des Testlaufs |
testCount |
int : Gesamtzahl der Tests im Testlauf |
attemptNumber |
int : Die Bestellnummer, die die verschiedenen Versuche desselben runName identifiziert, der mehrmals ausgeführt wird. Die „attemptNumber“ beginnt bei 0 und sollte bei jedem neuen Durchlauf erhöht werden. Wenn ein Test beispielsweise dreimal wiederholt wird, sollte er insgesamt vier Durchläufe mit demselben „runName“ haben und die „attemptNumber“ sollte von 0 auf 3 steigen. |
testRunStarted
public final void testRunStarted (String runName, int testCount)
Callbacks für Testläufe
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)
Gibt den Beginn eines Testlaufs an.
Parameter | |
---|---|
runName |
String : der Name des Testlaufs |
testCount |
int : Gesamtzahl der Tests im Testlauf |
attemptNumber |
int : Die Bestellnummer, die die verschiedenen Versuche desselben runName identifiziert, der mehrmals ausgeführt wird. Die „attemptNumber“ beginnt bei 0 und sollte bei jedem neuen Durchlauf erhöht werden. Wenn ein Test beispielsweise dreimal wiederholt wird, sollte er insgesamt vier Durchläufe unter demselben „runName“ haben und die „attemptNumber“ sollte von 0 auf 3 steigen. |
startTime |
long : der Zeitpunkt, zu dem die Ausführung gestartet wurde, gemessen über System.currentTimeMillis() |
testRunStopped
public final void testRunStopped (long elapsedTime)
Der Testlauf für Berichte wurde aufgrund einer Nutzeranfrage vorzeitig beendet.
AUFGABE: Derzeit nicht verwendet, entfernen Sie eventuell
Parameter | |
---|---|
elapsedTime |
long : Vom Gerät gemeldete verstrichene Zeit in Millisekunden |
testSkipped
public final void testSkipped (TestDescription test, SkipReason reason)
Wird aufgerufen, wenn ein Test übersprungen und aus einem normalerweise nicht erwarteten Grund nicht ausgeführt wurde. Diese Tests werden wiederholt, um eine korrekte Ausführung zu erreichen.
Parameter | |
---|---|
test |
TestDescription : identifiziert den Test |
reason |
SkipReason : SkipReason |
testStarted
public final void testStarted (TestDescription test, long startTime)
Alternative zu testStarted(com.android.tradefed.result.TestDescription)
, bei der auch angegeben wird, wann der Test gestartet wurde. Wird mit ERROR(/#testEnded(com.android.tradefed.result.TestDescription,long,Map))
kombiniert, um genaue Messungen zu ermöglichen.
Parameter | |
---|---|
test |
TestDescription : identifiziert den Test |
startTime |
long : Der Zeitpunkt, zu dem der Test gestartet wurde, gemessen über System.currentTimeMillis() |
testStarted
public final void testStarted (TestDescription test)
Callbacks für Testfälle
Parameter | |
---|---|
test |
TestDescription : identifiziert den Test |
Geschützte Methoden
CleanUp
protected void cleanUp ()
getMetricType
protected MetricMeasurement.DataType getMetricType ()
Überschreiben Sie diese Methode, um den Messwerttyp bei Bedarf zu ändern. Der Messwert ist standardmäßig auf den Typ „Verarbeitet“ festgelegt.
Returns | |
---|---|
MetricMeasurement.DataType |
getRunName
protected String getRunName ()
Returns | |
---|---|
String |