GTestResultParser

public class GTestResultParser
extends MultiLineReceiver

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


シェルから実行される GTest を使用してネイティブ テストの「未加工の出力モード」の結果を解析し、その結果を ITestInvocationListener に通知します。

予想される出力のサンプル形式:

 [==========] 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
 

ここで、特定のイベントを通知するために次のタグが使用されます:

 [==========]: 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)
 
他のすべての行は無視されます。

まとめ

パブリック コンストラクター

GTestResultParser (String testRunName, listeners) GTestResultParser (String testRunName, listeners)

GTestResultParser を作成します。

公開メソッド

void cancel ()

試運転のキャンセルを要求します。

void done ()

adb セッションが完了すると、親によって呼び出されます。

boolean getPrependFileName ()
boolean isCancelled ()

テスト実行がキャンセルされた場合は true を返します。

void processNewLines (String[] lines)

void setPrependFileName (boolean prepend)

パブリック コンストラクター

GTestResultParser

public GTestResultParser (String testRunName, 
                 listeners)

GTestResultParser を作成します。

パラメーター
testRunName String : ITestLifeCycleReceiver.testRunStarted(String, int)に提供するテスト実行名

listeners : テストの実行中にテスト結果が通知されます

公開メソッド

キャンセル

public void cancel ()

試運転のキャンセルを要求します。

終わり

public void done ()

adb セッションが完了すると、親によって呼び出されます。

getPrependFileName

public boolean getPrependFileName ()

戻り値
boolean

キャンセルされました

public boolean isCancelled ()

テスト実行がキャンセルされた場合は true を返します。

戻り値
boolean

以下も参照してください。

processNewLines

public void processNewLines (String[] lines)

パラメーター
lines String

setPrependFileName

public void setPrependFileName (boolean prepend)

パラメーター
prepend boolean