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) oder „error“ (-1) getrennt sind. 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 sich der „value“-Teil des Schlüssel/Wert-Paars über mehrere Textzeilen erstrecken kann.

Verwenden Sie stattdessen „InstrumentationProtoResultParser“. Der protobasierte Parser enthält zusätzliche Informationen wie Logcat-Meldungen.

Zusammenfassung

Öffentliche Konstruktoren

InstrumentationResultParser(String runName, ITestRunListener listener)

Erstellt den InstrumentationResultParser für einen einzelnen Listener.

InstrumentationResultParser(String runName, Collection<ITestRunListener> listeners)

Erstellt den InstrumentationResultParser.

Öffentliche Methoden

void cancel()

Anfragen zum Abbrechen eines Testlaufs

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, 
                ITestRunListener listener)

Erstellt den InstrumentationResultParser für einen einzelnen Listener.

Parameter
runName String: Der Name des Testlaufs, der für ITestRunListener.testRunStarted(String,int) angegeben werden soll.

listener ITestRunListener: über Testergebnisse informiert werden, während die Tests ausgeführt werden

InstrumentationResultParser

public InstrumentationResultParser (String runName, 
                Collection<ITestRunListener> listeners)

Erstellt den InstrumentationResultParser.

Parameter
runName String: Der Name des Testlaufs, der für ITestRunListener.testRunStarted(String,int) angegeben werden soll.

listeners Collection: über Testergebnisse informiert werden, während die Tests ausgeführt werden

Öffentliche Methoden

Abbrechen

public void cancel ()

Anfragen zum Abbrechen eines Testlaufs

Fertig

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 mit ITestRunListener.testRunFailed und dann mit ITestRunListener.testRunEnded 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.

Gibt Folgendes zurück:
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