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 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 |
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 |
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 |
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 |
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
publicprocessAllTestMetricsAndLogs (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 | TestDescription jedes Tests als Schlüssel verwendet wird. |
Kehrt zurück | |
---|---|
Der Satz neu generierter Metriken aus allen Testmetriken. |
processRunMetricsAndLogs
public abstractprocessRunMetricsAndLogs ( 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 | |
runLogs |
Kehrt zurück | |
---|---|
Der Satz neu generierter Metriken aus den Laufmetriken. |
processTestMetricsAndLogs
publicprocessTestMetricsAndLogs (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 | |
testLogs |
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 | 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 | 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 | 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 |