GTestResultParser

public class GTestResultParser
extends MultiLineReceiver

java.lang.Object
   ↳ com.android.ddmlib.MultiLineReceiver
     ↳ com.android.tradefed.testtype.GTestResultParser


Parset die Ergebnisse des „Raw Output Mode“ von nativen Tests mit GTest, die über die Shell ausgeführt werden, und informiert einen ITestInvocationListener über die Ergebnisse.

Beispiel für das erwartete Ausgabeformat:

 [==========] Running 15 tests from 1 test case.
 [----------] Global test environment set-up.
 [----------] 15 tests from MessageTest
 [ RUN      ] MessageTest.DefaultConstructor
 [       OK ] MessageTest.DefaultConstructor (1 ms)
 [ RUN      ] MessageTest.CopyConstructor
 external/gtest/test/gtest-message_test.cc:67: Failure
 Value of: 5
 Expected: 2
 external/gtest/test/gtest-message_test.cc:68: Failure
 Value of: 1 == 1
 Actual: true
 Expected: false
 [  FAILED  ] MessageTest.CopyConstructor (2 ms)
  ...
 [ RUN      ] MessageTest.DoesNotTakeUpMuchStackSpace
 [       OK ] MessageTest.DoesNotTakeUpMuchStackSpace (0 ms)
 [----------] 15 tests from MessageTest (26 ms total)

 [----------] Global test environment tear-down
 [==========] 15 tests from 1 test case ran. (26 ms total)
 [  PASSED  ] 6 tests.
 [  FAILED  ] 9 tests, listed below:
 [  FAILED  ] MessageTest.CopyConstructor
 [  FAILED  ] MessageTest.ConstructsFromCString
 [  FAILED  ] MessageTest.StreamsCString
 [  FAILED  ] MessageTest.StreamsNullCString
 [  FAILED  ] MessageTest.StreamsString
 [  FAILED  ] MessageTest.StreamsStringWithEmbeddedNUL
 [  FAILED  ] MessageTest.StreamsNULChar
 [  FAILED  ] MessageTest.StreamsInt
 [  FAILED  ] MessageTest.StreamsBasicIoManip
 9 FAILED TESTS
 

Dabei werden bestimmte Ereignisse mit den folgenden Tags signalisiert:

 [==========]: the first occurrence indicates a new run started, including the number of tests
                  to be expected in this run
 [ RUN      ]: indicates a new test has started to run; a series of zero or more lines may
                  follow a test start, and will be captured in case of a test failure or error
 [       OK ]: the preceding test has completed successfully, optionally including the time it
                  took to run (in ms)
 [  FAILED  ]: the preceding test has failed, optionally including the time it took to run (in ms)
 [==========]: the preceding test run has completed, optionally including the time it took to run
                  (in ms)
 
Alle anderen Zeilen werden ignoriert.

Zusammenfassung

Öffentliche Konstruktoren

GTestResultParser(String testRunName, listeners)

Erstellt den GTestResultParser.

GTestResultParser(String testRunName, listeners, boolean allowRustTestName)

Erstellt den GTestResultParser.

Öffentliche Methoden

void cancel()

Er fordert den Abbruch des Testlaufs an.

void done()

Wird vom übergeordneten Element aufgerufen, wenn die adb-Sitzung abgeschlossen ist.

getFailedTests()

Gibt eine Liste der Tests zurück, die während des aktuellen Testlaufs fehlgeschlagen sind.

boolean getPrependFileName()
boolean isCancelled()

Gibt „true“ zurück, wenn der Test abgebrochen wurde.

boolean isTestRunIncomplete()

Ob der Testlauf unvollständig war oder nicht.

void processNewLines(String[] lines)

void setPrependFileName(boolean prepend)

Geschützte Methoden

boolean isUnexpectedTestFound()

Für Unit-Tests freigegeben.

Öffentliche Konstruktoren

GTestResultParser

public GTestResultParser (String testRunName, 
                 listeners)

Erstellt den GTestResultParser.

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

listeners : während der Ausführung der Tests über die Testergebnisse informiert werden

GTestResultParser

public GTestResultParser (String testRunName, 
                 listeners, 
                boolean allowRustTestName)

Erstellt den GTestResultParser.

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

listeners : während der Ausführung der Tests über die Testergebnisse informiert werden

allowRustTestName boolean: Testnamen dürfen nicht dem Trennmuster „::“ folgen

Öffentliche Methoden

Abbrechen

public void cancel ()

Er fordert den Abbruch des Testlaufs an.

done

public void done ()

Wird vom übergeordneten Element aufgerufen, wenn die adb-Sitzung abgeschlossen ist.

getFailedTests

public  getFailedTests ()

Gibt eine Liste der Tests zurück, die während des aktuellen Testlaufs fehlgeschlagen sind.

Returns

getPrependFileName

public boolean getPrependFileName ()

Returns
boolean

isCancelled

public boolean isCancelled ()

Gibt „true“ zurück, wenn der Test abgebrochen wurde.

Returns
boolean

Weitere Informationen

isTestRunIncomplete

public boolean isTestRunIncomplete ()

Ob der Testlauf unvollständig war oder nicht.

Returns
boolean „true“, wenn der Test aufgrund von Problemen beim Parsen oder Abstürzen unvollständig war.

processNewLines

public void processNewLines (String[] lines)

Parameter
lines String

setPrependFileName

public void setPrependFileName (boolean prepend)

Parameter
prepend boolean

Geschützte Methoden

isUnexpectedTestFound

protected boolean isUnexpectedTestFound ()

Für Unit-Tests freigegeben.

Returns
boolean