InstrumentationResultParser
public
class
InstrumentationResultParser
extends MultiLineReceiver
implements
IInstrumentationResultParser
| java.lang.Object | ||
| ↳ | com.android.ddmlib.MultiLineReceiver | |
| ↳ | com.android.tradefed.result.ddmlib.InstrumentationResultParser | |
Parst die Ergebnisse des „Rohausgabemodus“ eines Instrumentierungstests, der über die Shell ausgeführt wird, und informiert einen ITestRunListener über die Ergebnisse.
Die erwartete Ausgabe sieht so aus:
Wenn beim Ausführen der Tests ein schwerwiegender Fehler aufgetreten ist:
INSTRUMENTATION_STATUS: Error=error Message INSTRUMENTATION_FAILED:
oder
INSTRUMENTATION_RESULT: shortMsg=error Message
Andernfalls wird eine Reihe von Testergebnissen erwartet, die jeweils eine Reihe von Status-Schlüssel/Wert-Paaren enthalten, die durch einen Statuscode für „start“ (1)/„pass“ (0)/„fail“ (-2)/„error“ (-1) begrenzt werden. Am Ende des Testlaufs wird die verstrichene Testzeit in Sekunden angezeigt.
Beispiel:
INSTRUMENTATION_STATUS_CODE: 1
INSTRUMENTATION_STATUS: class=com.foo.FooTest
INSTRUMENTATION_STATUS: test=testFoo
INSTRUMENTATION_STATUS: numtests=2
INSTRUMENTATION_STATUS: stack=com.foo.FooTest#testFoo:312
com.foo.X
INSTRUMENTATION_STATUS_CODE: -2
...
Time: X
Beachten Sie, dass der „value“-Teil des Schlüssel/Wert-Paars über mehrere Textzeilen umgebrochen werden kann.
Verwenden Sie stattdessen InstrumentationProtoResultParser. Der auf Proto basierende Parser enthält zusätzliche Informationen wie Logcat-Nachrichten.
Zusammenfassung
Öffentliche Konstruktoren | |
|---|---|
InstrumentationResultParser(String runName,
Erstellt den InstrumentationResultParser. |
|
Öffentliche Methoden | |
|---|---|
void
|
cancel()
Fordert den Abbruch des Testlaufs an. |
void
|
done()
Wird vom übergeordneten Element aufgerufen, wenn die ADB-Sitzung abgeschlossen ist. |
void
|
handleTestRunFailed(String errorMsg)
Diese Methode wird aufgerufen, wenn der Befehl „am instrument“ mit einer Ausnahme abstürzt. |
boolean
|
isCancelled()
Gibt „true“ zurück, wenn der Testlauf abgebrochen wurde. |
void
|
processNewLines(String[] lines)
Verarbeitet die Ausgabe des Instrumentierungstests aus der Shell. |
Öffentliche Konstruktoren
InstrumentationResultParser
public InstrumentationResultParser (String runName,
listeners) Erstellt den InstrumentationResultParser.
| Parameter | |
|---|---|
runName |
String: Der Name des Testlaufs, der für ITestRunListener.testRunStarted(String,
int) angegeben werden soll. |
listeners |
: über Testergebnisse informiert werden, während die Tests ausgeführt werden |
Öffentliche Methoden
Abbrechen
public void cancel ()
Fordert den Abbruch des Testlaufs an.
done
public void done ()
Wird vom übergeordneten Element aufgerufen, wenn die ADB-Sitzung abgeschlossen ist.
handleTestRunFailed
public void handleTestRunFailed (String errorMsg)
Diese Methode wird aufgerufen, wenn der Befehl „am instrument“ mit einer Ausnahme abstürzt. Alle registrierten Listener sollten ITestRunListener.testRunFailed gefolgt von ITestRunListener.testRunEnded(long, benachrichtigt werden, wenn der Absturz während der Testausführung auftritt.
| Parameter | |
|---|---|
errorMsg |
String |
isCancelled
public boolean isCancelled ()
Gibt „true“ zurück, wenn der Testlauf abgebrochen wurde.
| Returns | |
|---|---|
boolean |
„true“, um die Ausführung des Befehls abzubrechen. |
Weitere Informationen
processNewLines
public void processNewLines (String[] lines)
Verarbeitet die Ausgabe des Instrumentierungstests aus der Shell.
| Parameter | |
|---|---|
lines |
String: Das Array mit den neuen Zeilen. |
Weitere Informationen