GTestResultParser

public class GTestResultParser
extends MultiLineReceiver

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


Analisa os resultados do "modo de saída bruta" de testes nativos usando o GTest executado no shell e informa um ITestInvocationListener dos resultados.

Exemplo de formato de saída esperado:

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

em que as seguintes tags são usadas para sinalizar determinados eventos:

 [==========]: 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)
 
Todas as outras linhas são ignoradas.

Resumo

Construtores públicos

GTestResultParser(String testRunName, listeners)

Cria o GTestResultParser.

GTestResultParser(String testRunName, listeners, boolean allowRustTestName)

Cria o GTestResultParser.

Métodos públicos

void cancel()

Solicita o cancelamento do teste.

void done()

Chamado pelo elemento pai quando a sessão do adb é concluída.

getFailedTests()

Retorna uma lista de testes que falharam durante a execução atual.

boolean getPrependFileName()
boolean isCancelled()

Retorna "true" se o teste for cancelado.

boolean isTestRunIncomplete()

Se o teste foi concluído ou não.

void processNewLines(String[] lines)

Chamado quando novas linhas estão sendo recebidas pelo processo remoto.

void setPrependFileName(boolean prepend)

Métodos protegidos

boolean isUnexpectedTestFound()

Exposto para testes de unidade.

Construtores públicos

GTestResultParser

public GTestResultParser (String testRunName, 
                 listeners)

Cria o GTestResultParser.

Parâmetros
testRunName String: o nome da execução de teste a ser fornecido para ITestLifeCycleReceiver.testRunStarted(String, int).

listeners : informado sobre os resultados dos testes à medida que eles são executados

GTestResultParser

public GTestResultParser (String testRunName, 
                 listeners, 
                boolean allowRustTestName)

Cria o GTestResultParser.

Parâmetros
testRunName String: o nome da execução de teste a ser fornecido para ITestLifeCycleReceiver.testRunStarted(String, int).

listeners : informado sobre os resultados dos testes à medida que eles são executados

allowRustTestName boolean: permite que os nomes de teste não sigam o padrão de separação "::"

Métodos públicos

cancelar

public void cancel ()

Solicita o cancelamento do teste.

concluído

public void done ()

Chamado pelo elemento pai quando a sessão do adb é concluída.

getFailedTests

public  getFailedTests ()

Retorna uma lista de testes que falharam durante a execução atual.

Retorna

getPrependFileName

public boolean getPrependFileName ()

Retorna
boolean

isCancelled

public boolean isCancelled ()

Retorna "true" se o teste for cancelado.

Retorna
boolean

isTestRunIncomplete

public boolean isTestRunIncomplete ()

Se o teste foi concluído ou não.

Retorna
boolean "true" se o teste estiver incompleto devido a problemas de análise ou falhas.

processNewLines

public void processNewLines (String[] lines)

Chamado quando novas linhas estão sendo recebidas pelo processo remoto.

É garantido que as linhas estão completas quando são fornecidas a esse método.

Parâmetros
lines String: a matriz que contém as novas linhas.

setPrependFileName

public void setPrependFileName (boolean prepend)

Parâmetros
prepend boolean

Métodos protegidos

isUnexpectedTestFound

protected boolean isUnexpectedTestFound ()

Exposto para testes de unidade.

Retorna
boolean