ResultDBReporter
public
class
ResultDBReporter
extends Object
implements
IConfigurationReceiver,
ILogSaverListener,
ISupportGranularResults,
ITestSummaryListener
| java.lang.Object | |
| ↳ | com.android.tradefed.result.resultdb.ResultDBReporter |
Ein Tool, das Testergebnisse in ResultDB hochlädt.
Zusammenfassung
Felder | |
|---|---|
protected
IInvocationContext |
mContext
|
protected
boolean |
mEnableAlTestProperties
|
Öffentliche Konstruktoren | |
|---|---|
ResultDBReporter()
|
|
Öffentliche Methoden | |
|---|---|
TestSummary
|
getSummary()
Ermöglicht dem InvocationListener, eine Zusammenfassung zurückzugeben. |
void
|
invocationEnded(long elapsedTime)
Gibt an, dass der Aufruf beendet wurde, entweder erfolgreich oder aufgrund eines Fehlerzustands. |
void
|
invocationFailed(FailureDescription failure)
Meldet einen unvollständigen Aufruf aufgrund eines Fehlerzustands. |
void
|
invocationFailed(Throwable cause)
Meldet einen unvollständigen Aufruf aufgrund eines Fehlerzustands. |
void
|
invocationSkipped(SkipReason reason)
Meldet einen Aufruf als übersprungen |
void
|
invocationStarted(IInvocationContext context)
Meldet den Beginn des Testaufrufs. |
boolean
|
isDisabled()
|
void
|
logAssociation(String dataName, LogFile logFile)
In einigen Fällen muss das Log eng mit einem Testlauf verknüpft sein, aber die Möglichkeit dazu besteht beim direkten |
void
|
setConfiguration(IConfiguration configuration)
Fügt die verwendete |
void
|
setLogSaver(ILogSaver logSaver)
Legen Sie |
boolean
|
supportGranularResults()
Gibt „True“ zurück, wenn der Bericht detaillierte Ergebnisse unterstützt, andernfalls „False“. |
void
|
testAssumptionFailure(TestDescription test, String trace)
Wird aufgerufen, wenn ein atomarer Test meldet, dass er eine Bedingung voraussetzt, die nicht erfüllt ist. |
void
|
testAssumptionFailure(TestDescription test, FailureDescription failure)
Wird aufgerufen, wenn ein atomarer Test meldet, dass er eine Bedingung voraussetzt, die nicht erfüllt ist. |
void
|
testEnded(TestDescription test, long endTime, HashMap<String, MetricMeasurement.Metric> testMetrics)
Alternative zu |
void
|
testEnded(TestDescription test, HashMap<String, MetricMeasurement.Metric> testMetrics)
Meldet das Ende der Ausführung eines einzelnen Testlaufs. |
void
|
testFailed(TestDescription test, FailureDescription failure)
Meldet das Fehlschlagen eines einzelnen Testlaufs. |
void
|
testFailed(TestDescription test, String trace)
Meldet das Fehlschlagen eines einzelnen Testlaufs. |
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. |
void
|
testLog(String dataName, LogDataType dataType, InputStreamSource dataStream)
Stellt die zugehörigen Protokoll- oder Debugging-Daten aus dem Testaufruf bereit. |
void
|
testModuleEnded()
Meldet das Ende einer Modulausführung. |
void
|
testModuleStarted(IInvocationContext moduleContext)
Meldet den Beginn der Ausführung eines Moduls. |
void
|
testRunEnded(long elapsedTimeMillis, HashMap<String, MetricMeasurement.Metric> runMetrics)
Meldet das Ende des Testlaufs. |
void
|
testRunFailed(FailureDescription failure)
Der Testlauf für Berichte konnte aufgrund eines Fehlers, der durch |
void
|
testRunFailed(String errorMessage)
Der Testlauf für Berichte konnte aufgrund eines schwerwiegenden Fehlers nicht abgeschlossen werden. |
void
|
testRunStarted(String runName, int testCount, int attemptNumber)
Meldet den Beginn eines Testlaufs. |
void
|
testRunStarted(String runName, int testCount)
Meldet den Beginn eines Testlaufs. |
void
|
testRunStarted(String runName, int testCount, int attemptNumber, long startTime)
Meldet den Beginn eines Testlaufs. |
void
|
testRunStopped(long elapsedTime)
Der Testlauf für Berichte wurde aufgrund einer Nutzeranfrage vor dem Abschluss beendet. |
void
|
testSkipped(TestDescription test, SkipReason reason)
Wird aufgerufen, wenn ein Test übersprungen wurde und aus einem Grund nicht ausgeführt wurde, der normalerweise nicht erwartet wird. |
void
|
testStarted(TestDescription test, long startTime)
Alternative zu |
void
|
testStarted(TestDescription test)
Meldet den Beginn eines einzelnen Testlaufs. |
void
|
uploadStoragePath(String resourceId, String storagePath, LogFile logFile)
Lädt den Speicherpfad eines AnTS-Testartefakts in ResultDB hoch. |
Felder
mEnableAlTestProperties
protected boolean mEnableAlTestProperties
Öffentliche Konstruktoren
ResultDBReporter
public ResultDBReporter ()
Öffentliche Methoden
getSummary
public TestSummary getSummary ()
Ermöglicht dem InvocationListener, eine Zusammenfassung zurückzugeben.
| Gibt Folgendes zurück: | |
|---|---|
TestSummary |
Eine TestSummary, die den Lauf zusammenfasst, oder „null“ |
invocationEnded
public void invocationEnded (long elapsedTime)
Gibt an, dass der Aufruf beendet wurde, entweder erfolgreich oder aufgrund eines Fehlerzustands.
Wird automatisch vom TradeFederation-Framework aufgerufen.
| Parameter | |
|---|---|
elapsedTime |
long: die verstrichene Zeit des Aufrufs in Millisekunden |
invocationFailed
public void invocationFailed (FailureDescription failure)
Meldet einen unvollständigen Aufruf aufgrund eines Fehlerzustands.
Wird automatisch vom TradeFederation-Framework aufgerufen.
| Parameter | |
|---|---|
failure |
FailureDescription: die FailureDescription, in der die Ursache des Fehlers beschrieben wird |
invocationFailed
public void invocationFailed (Throwable cause)
Meldet einen unvollständigen Aufruf aufgrund eines Fehlerzustands.
Wird automatisch vom TradeFederation-Framework aufgerufen.
| Parameter | |
|---|---|
cause |
Throwable: die Throwable-Ursache des Fehlers |
invocationSkipped
public void invocationSkipped (SkipReason reason)
Meldet einen Aufruf als übersprungen
| Parameter | |
|---|---|
reason |
SkipReason |
invocationStarted
public void invocationStarted (IInvocationContext context)
Meldet den Beginn des Testaufrufs.
Wird automatisch vom TradeFederation-Framework aufgerufen. Reporter müssen diese Methode überschreiben, um die Berichterstellung für mehrere Geräte zu unterstützen.
| Parameter | |
|---|---|
context |
IInvocationContext: Informationen zum Aufruf |
isDisabled
public boolean isDisabled ()
| Gibt Folgendes zurück: | |
|---|---|
boolean |
|
logAssociation
public void logAssociation (String dataName,
LogFile logFile)In einigen Fällen muss das Log eng mit einem Testlauf verknüpft sein, aber die Möglichkeit dazu besteht beim direkten testLogSaved(String,LogDataType,InputStreamSource,LogFile)-Callback nicht. Mit diesem Callback kann also explizit eine starke Zuordnung angegeben werden.
| Parameter | |
|---|---|
dataName |
String: Der Name der Daten |
logFile |
LogFile: Die LogFile, die zuvor protokolliert wurde und dem Testlauf zugeordnet werden soll. |
setConfiguration
public void setConfiguration (IConfiguration configuration)
Fügt die verwendete IConfiguration ein.
| Parameter | |
|---|---|
configuration |
IConfiguration |
setLogSaver
public void setLogSaver (ILogSaver logSaver)
Legen Sie ILogSaver fest, damit der Implementierer Dateien speichern kann.
| Parameter | |
|---|---|
logSaver |
ILogSaver: Der ILogSaver |
supportGranularResults
public boolean supportGranularResults ()
Gibt „True“ zurück, wenn der Bericht detaillierte Ergebnisse unterstützt, andernfalls „False“.
| Gibt Folgendes zurück: | |
|---|---|
boolean |
|
testAssumptionFailure
public void testAssumptionFailure (TestDescription test, String trace)
Wird aufgerufen, wenn ein atomarer Test meldet, dass er eine Bedingung voraussetzt, die nicht erfüllt ist.
| Parameter | |
|---|---|
test |
TestDescription: Gibt den Test an. |
trace |
String: Stacktrace des Fehlers |
testAssumptionFailure
public void testAssumptionFailure (TestDescription test, FailureDescription failure)
Wird aufgerufen, wenn ein atomarer Test meldet, dass er eine Bedingung voraussetzt, die nicht erfüllt ist.
| Parameter | |
|---|---|
test |
TestDescription: Gibt den Test an. |
failure |
FailureDescription: FailureDescription, in dem der Fehler und sein Kontext beschrieben werden. |
testEnded
public void testEnded (TestDescription test, long endTime, HashMap<String, MetricMeasurement.Metric> testMetrics)
Alternative zu testEnded(TestDescription,Map), mit der wir die Endzeit direkt angeben können. Kombinieren Sie sie mit testStarted(TestDescription,long), um genaue Ergebnisse zu erhalten.
| Parameter | |
|---|---|
test |
TestDescription: Gibt den Test an. |
endTime |
long: Die Uhrzeit, zu der der Test beendet wurde, gemessen über System.currentTimeMillis() |
testMetrics |
HashMap: Map der ausgegebenen Messwerte |
testEnded
public void testEnded (TestDescription test, HashMap<String, MetricMeasurement.Metric> testMetrics)
Meldet das Ende der Ausführung eines einzelnen Testlaufs.
Wenn testFailed(TestDescription, FailureDescription) nicht aufgerufen wurde, wurde dieser Test bestanden. Gibt auch alle Schlüssel/Wert-Messwerte zurück, die während der Ausführung des Testlaufs ausgegeben wurden.
| Parameter | |
|---|---|
test |
TestDescription: Gibt den Test an. |
testMetrics |
HashMap: Map der ausgegebenen Messwerte |
testFailed
public void testFailed (TestDescription test, FailureDescription failure)
Meldet das Fehlschlagen eines einzelnen Testlaufs.
Wird zwischen „testStarted“ und „testEnded“ aufgerufen.
| Parameter | |
|---|---|
test |
TestDescription: Gibt den Test an. |
failure |
FailureDescription: FailureDescription, in dem der Fehler und sein Kontext beschrieben werden. |
testFailed
public void testFailed (TestDescription test, String trace)
Meldet das Fehlschlagen eines einzelnen Testlaufs.
Wird zwischen „testStarted“ und „testEnded“ aufgerufen.
| Parameter | |
|---|---|
test |
TestDescription: Gibt den Test an. |
trace |
String: Stacktrace des Fehlers |
testIgnored
public 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: Gibt den Test an. |
testLog
public void testLog (String dataName,
LogDataType dataType,
InputStreamSource dataStream)Stellt die zugehörigen Protokoll- oder Debugging-Daten aus dem Testaufruf bereit.
Muss vor ERROR(ITestInvocationListener.invocationFailed(Throwable)/ITestInvocationListener#invocationFailed(java.lang.Throwable) ITestInvocationListener.invocationFailed(Throwable)) oder ERROR(/ITestInvocationListener#invocationEnded(long)) aufgerufen werden
Das TradeFederation-Framework ruft diese Methode automatisch auf und stellt das Host-Log und gegebenenfalls das Geräte-Logcat bereit.
| Parameter | |
|---|---|
dataName |
String: Ein String aussagekräftiger Name der Daten, z. B. „device_logcat“. Hinweis: dataName ist möglicherweise nicht pro Aufruf eindeutig. 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 schließen, wenn sie fertig sind. Anrufer sollten dafür sorgen, dass die Datenquelle bis zum Abschluss der Methode „testLog“ vorhanden und zugänglich bleibt. |
testModuleEnded
public void testModuleEnded ()
Meldet das Ende einer Modulausführung.
testModuleStarted
public void testModuleStarted (IInvocationContext moduleContext)
Meldet den Beginn der Ausführung eines Moduls. Dieser Callback ist mit testModuleEnded() verknüpft und in der Sequenz optional. Es wird nur bei einem Lauf verwendet, bei dem Module verwendet werden: Suite-basierte Runner.
| Parameter | |
|---|---|
moduleContext |
IInvocationContext: Die IInvocationContext des Moduls. |
testRunEnded
public void testRunEnded (long elapsedTimeMillis,
HashMap<String, MetricMeasurement.Metric> runMetrics)Meldet das Ende des Testlaufs. FIXME: Wir können nicht zwei Map<>-Schnittstellen mit unterschiedlichen Typen haben, daher müssen wir hier HashMap verwenden.
| Parameter | |
|---|---|
elapsedTimeMillis |
long: Die vom Gerät gemeldete verstrichene Zeit in Millisekunden. |
runMetrics |
HashMap: Schlüssel/Wert-Paare, die am Ende eines Testlaufs mit Metric gemeldet werden. |
testRunFailed
public void testRunFailed (FailureDescription failure)
Der Testlauf für Berichte konnte aufgrund eines Fehlers, der durch FailureDescription beschrieben wird, nicht abgeschlossen werden.
| Parameter | |
|---|---|
failure |
FailureDescription: FailureDescription, in dem der Fehler und sein Kontext beschrieben werden. |
testRunFailed
public void testRunFailed (String errorMessage)
Der Testlauf für Berichte konnte aufgrund eines schwerwiegenden Fehlers nicht abgeschlossen werden.
| Parameter | |
|---|---|
errorMessage |
String: String, in dem der Grund für den Fehler bei der Ausführung beschrieben wird. |
testRunStarted
public void testRunStarted (String runName,
int testCount,
int attemptNumber)Meldet den Beginn eines Testlaufs.
| Parameter | |
|---|---|
runName |
String: der Name des Testlaufs |
testCount |
int: Gesamtzahl der Tests im Testlauf |
attemptNumber |
int: Auftragsnummer zur Identifizierung der verschiedenen Versuche desselben runName, die mehrmals ausgeführt werden. Die attemptNumber ist 0-basiert und sollte bei jedem neuen Lauf inkrementiert werden. Wenn ein Test beispielsweise dreimal wiederholt wird, sollte er insgesamt vier Läufe mit demselben runName haben und die attemptNumber sollte von 0 bis 3 reichen. |
testRunStarted
public void testRunStarted (String runName,
int testCount)Meldet den Beginn 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 Beginn eines Testlaufs.
| Parameter | |
|---|---|
runName |
String: der Name des Testlaufs |
testCount |
int: Gesamtzahl der Tests im Testlauf |
attemptNumber |
int: Auftragsnummer zur Identifizierung der verschiedenen Versuche desselben runName, die mehrmals ausgeführt werden. Die attemptNumber ist 0-basiert und sollte bei jedem neuen Lauf inkrementiert werden. Beispiel: Ein Test wird dreimal wiederholt. Er sollte insgesamt vier Läufe mit demselben runName haben und die attemptNumber sollte von 0 bis 3 reichen. |
startTime |
long: Der Zeitpunkt, zu dem der Lauf begonnen hat, gemessen mit System.currentTimeMillis() |
testRunStopped
public void testRunStopped (long elapsedTime)
Der Testlauf für Berichte wurde aufgrund einer Nutzeranfrage vor dem Abschluss beendet.
TODO: currently unused, consider removing
| Parameter | |
|---|---|
elapsedTime |
long: Die vom Gerät gemeldete verstrichene Zeit in Millisekunden. |
testSkipped
public void testSkipped (TestDescription test, SkipReason reason)
Wird aufgerufen, wenn ein Test übersprungen wurde und aus einem Grund nicht ausgeführt wurde, der normalerweise nicht erwartet wird. Diese Tests werden wiederholt, um eine ordnungsgemäße Ausführung zu erreichen.
| Parameter | |
|---|---|
test |
TestDescription: Gibt den Test an. |
reason |
SkipReason: SkipReason |
testStarted
public void testStarted (TestDescription test, long startTime)
Alternative zu testStarted(TestDescription), bei der wir auch angeben, wann der Test gestartet wurde, in Kombination mit testEnded(TestDescription,long,Map) für eine genaue Messung.
| Parameter | |
|---|---|
test |
TestDescription: Gibt den Test an. |
startTime |
long: Die Uhrzeit, zu der der Test begonnen hat, gemessen über System.currentTimeMillis() |
testStarted
public void testStarted (TestDescription test)
Meldet den Beginn eines einzelnen Testlaufs. Ältere Schnittstelle. Verwenden Sie nach Möglichkeit testStarted(TestDescription).
| Parameter | |
|---|---|
test |
TestDescription: Gibt den Test an. |
uploadStoragePath
public void uploadStoragePath (String resourceId,
String storagePath,
LogFile logFile)Lädt den Speicherpfad eines AnTS-Testartefakts in ResultDB hoch.
Dies ist eine vorübergehende Lösung für die Migration von AnTS zu ResultDB (siehe go/convergence-tr). Diese Methode sollte vom AnTS-Reporter aufgerufen werden, wenn der Speicherpfad eines Artefakts verfügbar wird.
Der AnTS-Reporter ruft diese Methode garantiert für jedes hochgeladene Artefakt auf. Dieser Reporter lädt dann alle Artefakte mit der richtigen Testzuordnung in ResultDB hoch. Damit die Protokolle richtig zugeordnet werden können,muss logAssociation(String,LogFile) zuvor für dieselbe Ressourcen-ID aufgerufen worden sein. So wird sichergestellt, dass das Artefakt bereits erfasst wird. Andernfalls wird das Artefakt der Arbeitsgruppe der obersten Ebene des Tradefed-Aufrufs zugeordnet.
Diese Methode darf nicht vor invocationStarted(IInvocationContext) aufgerufen werden. Sie kann nach invocationEnded(long) für Aufrufe aufgerufen werden, die von einem Upstream-System verwaltet werden, da sie nicht von diesem Reporter abgeschlossen werden. Dies gilt nicht für lokal erstellte Aufrufe, die in invocationEnded(long) abgeschlossen werden.
TODO(b/464941055): Entfernen Sie diese Methode, sobald wir AnTS-Artefakte richtig zu ResultDB migrieren können.
| Parameter | |
|---|---|
resourceId |
String: Die Ressourcen-ID des Artefakts. |
storagePath |
String: Der Speicherpfad des Artefakts (z.B. ein /bigstore/-Pfad). |
logFile |
LogFile: Das LogFile-Objekt, das dem Artefakt zugeordnet ist. |