SubprocessResultsReporter
public class SubprocessResultsReporter
extends Object
implements ITestInvocationListener , ILogSaverListener , ISupportGranularResults
java.lang.Object | |
↳ | com.android.tradefed.result.SubprocessResultsReporter |
Implementiert ITestInvocationListener
, der als result_reporter angegeben werden soll und vom Unterprozess die Ergebnisse von Tests, Testläufen und Testaufrufen weiterleitet.
Zusammenfassung
Öffentliche Konstrukteure | |
---|---|
SubprocessResultsReporter () |
Öffentliche Methoden | |
---|---|
void | close () |
TestSummary | getSummary () Ermöglicht dem InvocationListener, eine Zusammenfassung zurückzugeben. |
void | invocationEnded (long elapsedTime) Meldet, dass der Aufruf erfolgreich oder aufgrund einer Fehlerbedingung beendet wurde. |
void | invocationFailed ( FailureDescription failure) Meldet einen unvollständigen Aufruf aufgrund einer Fehlerbedingung. |
void | invocationFailed (Throwable cause) Meldet einen unvollständigen Aufruf aufgrund einer Fehlerbedingung. |
void | invocationStarted ( IInvocationContext context) Meldet den Start des Testaufrufs. |
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 |
void | printEvent (String key, Object event) Helfer zum Drucken des Ereignisschlüssels und dann des JSON-Objekts. |
void | setOutputTestLog (boolean outputTestLog) Legt fest, ob wir den Test protokolliert ausgeben sollen oder nicht. |
boolean | supportGranularResults () Gibt „True“ zurück, wenn der Reporter granulare Ergebnisse unterstützt, andernfalls „False“. |
void | testAssumptionFailure ( TestDescription testId, String trace) Wird aufgerufen, wenn ein atomarer Test anzeigt, dass er eine falsche Bedingung annimmt |
void | testAssumptionFailure ( TestDescription testId, FailureDescription failure) Wird aufgerufen, wenn ein atomarer Test anzeigt, dass er eine falsche Bedingung annimmt |
void | testEnded ( TestDescription testId, long endTime, metrics) testEnded ( TestDescription testId, long endTime, metrics) Alternative zu |
void | testEnded ( TestDescription testId, metrics) testEnded ( TestDescription testId, metrics) Meldet das Ausführungsende eines einzelnen Testfalls. |
void | testFailed ( TestDescription testId, FailureDescription failure) Meldet das Fehlschlagen eines einzelnen Testfalls. |
void | testFailed ( TestDescription testId, String reason) Meldet das Fehlschlagen eines einzelnen Testfalls. |
void | testIgnored ( TestDescription testId) Wird aufgerufen, wenn ein Test nicht ausgeführt wird, im Allgemeinen, weil eine Testmethode mit org.junit.Ignore kommentiert ist. |
void | testLog (String dataName, LogDataType dataType, InputStreamSource dataStream) Stellt die zugehörigen Protokoll- oder Debugdaten aus dem Testaufruf bereit. |
void | testModuleEnded () Meldet das Ende einer Modulausführung. |
void | testModuleStarted ( IInvocationContext moduleContext) Meldet den Beginn eines laufenden Moduls. |
void | testRunEnded (long time, runMetrics) testRunEnded (long time, runMetrics) Meldet das Ende des Testlaufs. |
void | testRunFailed ( FailureDescription failure) Der Berichtstestlauf konnte aufgrund eines von |
void | testRunFailed (String reason) Berichtstestlauf konnte aufgrund eines schwerwiegenden Fehlers nicht abgeschlossen werden. |
void | testRunStarted (String runName, int testCount, int attemptNumber) Meldet den Start eines Testlaufs. |
void | testRunStarted (String runName, int testCount) Meldet den Start eines Testlaufs. |
void | testRunStarted (String runName, int testCount, int attemptNumber, long startTime) Meldet den Start eines Testlaufs. |
void | testRunStopped (long arg0) Berichtet, dass der Testlauf aufgrund einer Benutzeranforderung vor Abschluss beendet wurde. |
void | testStarted ( TestDescription testId, long startTime) Alternative zu |
void | testStarted ( TestDescription testId) Meldet den Start eines einzelnen Testfalls. |
Öffentliche Konstrukteure
SubprocessResultsReporter
public SubprocessResultsReporter ()
Öffentliche Methoden
schließen
public void close ()
getSummary
public TestSummary getSummary ()
Ermöglicht dem InvocationListener, eine Zusammenfassung zurückzugeben.
Kehrt zurück | |
---|---|
TestSummary | Eine TestSummary , die den Lauf zusammenfasst, oder null |
AufrufBeendet
public 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 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 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 void invocationStarted (IInvocationContext context)
Meldet den Start des Testaufrufs.
Wird automatisch vom TradeFederation-Framework aufgerufen. Melder müssen diese Methode überschreiben, um die Meldung mehrerer Geräte zu unterstützen.
Parameter | |
---|---|
context | IInvocationContext : Informationen über den Aufruf |
logAssoziation
public 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.
Parameter | |
---|---|
dataName | String : Der Name der Daten |
logFile | LogFile : die zuvor protokollierte LogFile , die dem Testfall zugeordnet werden soll. |
Druckereignis
public void printEvent (String key, Object event)
Helfer zum Drucken des Ereignisschlüssels und dann des JSON-Objekts.
Parameter | |
---|---|
key | String |
event | Object |
setOutputTestLog
public void setOutputTestLog (boolean outputTestLog)
Legt fest, ob wir den Test protokolliert ausgeben sollen oder nicht.
Parameter | |
---|---|
outputTestLog | boolean |
supportGranularResults
public boolean supportGranularResults ()
Gibt „True“ zurück, wenn der Reporter granulare Ergebnisse unterstützt, andernfalls „False“.
Kehrt zurück | |
---|---|
boolean |
TestAnnahmeFehler
public void testAssumptionFailure (TestDescription testId, String trace)
Wird aufgerufen, wenn ein atomarer Test anzeigt, dass er eine falsche Bedingung annimmt
Parameter | |
---|---|
testId | TestDescription : identifiziert den Test |
trace | String : Stack-Trace des Fehlers |
TestAnnahmeFehler
public void testAssumptionFailure (TestDescription testId, FailureDescription failure)
Wird aufgerufen, wenn ein atomarer Test anzeigt, dass er eine falsche Bedingung annimmt
Parameter | |
---|---|
testId | TestDescription : identifiziert den Test |
failure | FailureDescription : FailureDescription , die den Fehler und seinen Kontext beschreibt. |
testBeendet
public void testEnded (TestDescription testId, long endTime,metrics)
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 | |
---|---|
testId | TestDescription : identifiziert den Test |
endTime | long : die Zeit, zu der der Test endete, gemessen über ERROR(/System#currentTimeMillis()) |
metrics | ERROR(/Map) der ausgegebenen Metriken |
testBeendet
public void testEnded (TestDescription testId,metrics)
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 | |
---|---|
testId | TestDescription : identifiziert den Test |
metrics | ERROR(/Map) der ausgegebenen Metriken |
im Test durchgefallen
public void testFailed (TestDescription testId, FailureDescription failure)
Meldet das Fehlschlagen eines einzelnen Testfalls.
Wird zwischen testStarted und testEnded aufgerufen.
Parameter | |
---|---|
testId | TestDescription : identifiziert den Test |
failure | FailureDescription : FailureDescription , die den Fehler und seinen Kontext beschreibt. |
im Test durchgefallen
public void testFailed (TestDescription testId, String reason)
Meldet das Fehlschlagen eines einzelnen Testfalls.
Wird zwischen testStarted und testEnded aufgerufen.
Parameter | |
---|---|
testId | TestDescription : identifiziert den Test |
reason | String : Stack-Trace des Fehlers |
testIgnoriert
public void testIgnored (TestDescription testId)
Wird aufgerufen, wenn ein Test nicht ausgeführt wird, im Allgemeinen, weil eine Testmethode mit org.junit.Ignore kommentiert ist.
Parameter | |
---|---|
testId | TestDescription : identifiziert den Test |
testLog
public void testLog (String dataName, LogDataType dataType, InputStreamSource dataStream)
Stellt die zugehörigen Protokoll- oder Debugdaten aus dem Testaufruf bereit.
Muss vorERROR(/ITestInvocationListener#invocationFailed(Throwable))
oder ERROR(/ITestInvocationListener#invocationEnded(long))
aufgerufen werden Das TradeFederation-Framework ruft diese Methode automatisch auf und stellt das Host-Protokoll und gegebenenfalls das Geräte-Logcat bereit.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. |
testModuleEnded
public void testModuleEnded ()
Meldet das Ende einer Modulausführung.
testModuleStarted
public 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 void testRunEnded (long time,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 | |
---|---|
time | long : vom Gerät gemeldete verstrichene Zeit in Millisekunden |
runMetrics | Metric gemeldet werden. |
testRunFailed
public 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 void testRunFailed (String reason)
Berichtstestlauf konnte aufgrund eines schwerwiegenden Fehlers nicht abgeschlossen werden.
Parameter | |
---|---|
reason | String : ERROR(/String) beschreibt den Grund für den Ausführungsfehler. |
testRunStarted
public 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 void testRunStarted (String runName, int testCount)
Meldet den Start eines Testlaufs.
Parameter | |
---|---|
runName | String : der Name des Testlaufs |
testCount | int : Gesamtzahl der Tests im Testlauf |
testRunStarted
public 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 void testRunStopped (long arg0)
Berichtet, dass der Testlauf aufgrund einer Benutzeranforderung vor Abschluss beendet wurde.
TODO: Derzeit nicht verwendet, erwägen Sie das Entfernen
Parameter | |
---|---|
arg0 | long : vom Gerät gemeldete verstrichene Zeit in Millisekunden |
testGestartet
public void testStarted (TestDescription testId, 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 | |
---|---|
testId | TestDescription : identifiziert den Test |
startTime | long : die Zeit, zu der der Test gestartet wurde, gemessen über ERROR(/System#currentTimeMillis()) |
testGestartet
public void testStarted (TestDescription testId)
Meldet den Start eines einzelnen Testfalls. Ältere Schnittstellen sollten nach Möglichkeit testStarted(com.android.tradefed.result.TestDescription)
verwenden.
Parameter | |
---|---|
testId | TestDescription : identifiziert den Test |