InstrumentationResultParser

public class InstrumentationResultParser
extends MultiLineReceiver implements IInstrumentationResultParser

java.lang.Object
   ↳ com.android.ddmlib.MultiLineReceiver
     ↳ com.android.tradefed.result.ddmlib.InstrumentationResultParser


Parses the 'raw output mode' results of an instrumentation test run from shell and informs a ITestRunListener of the results.

Expects the following output:

If fatal error occurred when attempted to run the tests:

 INSTRUMENTATION_STATUS: Error=error Message
 INSTRUMENTATION_FAILED:
 

or

 INSTRUMENTATION_RESULT: shortMsg=error Message
 

Otherwise, expect a series of test results, each one containing a set of status key/value pairs, delimited by a start(1)/pass(0)/fail(-2)/error(-1) status code result. At end of test run, expects that the elapsed test time in seconds will be displayed

For example:

 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
 

Note that the "value" portion of the key-value pair may wrap over several text lines

Use InstrumentationProtoResultParser instead. The proto based parser has additional information such as logcat message.

Summary

Public constructors

InstrumentationResultParser(String runName, listeners)

Creates the InstrumentationResultParser.

Public methods

void cancel()

Requests cancellation of test run.

void done()

Called by parent when adb session is complete.

void handleTestRunFailed(String errorMsg)
boolean isCancelled()

Returns true if test run canceled.

void processNewLines(String[] lines)

Processes the instrumentation test output from shell.

Public constructors

InstrumentationResultParser

public InstrumentationResultParser (String runName, 
                 listeners)

Creates the InstrumentationResultParser.

Parameters
runName String: the test run name to provide to ITestRunListener.testRunStarted(String, int)

listeners : informed of test results as the tests are executing

Public methods

cancel

public void cancel ()

Requests cancellation of test run.

done

public void done ()

Called by parent when adb session is complete.

handleTestRunFailed

public void handleTestRunFailed (String errorMsg)

Parameters
errorMsg String

isCancelled

public boolean isCancelled ()

Returns true if test run canceled.

Returns
boolean

processNewLines

public void processNewLines (String[] lines)

Processes the instrumentation test output from shell.

Parameters
lines String