CollectingTestListener

public class CollectingTestListener
extends Object implements IDisableable, ILogSaverListener, ITestInvocationListener

java.lang.Object
   ↳ com.android.tradefed.result.CollectingTestListener


Um ITestInvocationListener que coleta todos os resultados do teste.

Embora as estruturas de dados usadas neste objeto sejam seguras para threads, os callbacks ITestInvocationListener precisam ser chamados na ordem correta.

Resumo

Construtores públicos

CollectingTestListener()

Métodos públicos

IBuildInfo getBuildInfo()

Esse método foi descontinuado. dependem do IBuildInfo de getInvocationContext().

TestRunResult getCurrentRunResults()

Recebe os resultados da execução de teste atual.

int getExpectedTests()

Retorna a contagem de testes esperada.

IInvocationContext getInvocationContext()

Retorna o contexto de invocação informado por invocationStarted(com.android.tradefed.invoker.IInvocationContext)

getMergedTestRunResults()

Retorna a coleção mesclada de resultados de todas as execuções em diferentes tentativas.

IInvocationContext getModuleContextForRunResult(String testRunName)

Retorna o IInvocationContext do módulo associado aos resultados.

MultiMap<String, LogFile> getModuleLogFiles()

Retorna uma cópia do mapa que contém todo o arquivo registrado associado ao módulo.

MultiMap<String, LogFile> getNonAssociatedLogFiles()

Retorna uma cópia do mapa que contém todo o arquivo registrado não associado a uma execução de teste ou a um módulo.

int getNumAllFailedTestRuns()

Retorna o número total de execuções de teste em um estado de falha

int getNumAllFailedTests()

Retorna o número total de testes em um estado de falha (somente com falha, falhas de suposição não contam para isso).

int getNumTestsInState(TestStatus status)

Retorna o número de testes em determinado estado para esta execução.

int getNumTestsInState(TestResult.TestStatus ddmlibStatus)

Para compatibilidade com o tipo de status mais antigo

int getNumTotalTests()

Retorna o número total de testes concluídos para todas as execuções.

IBuildInfo getPrimaryBuildInfo()

Retorna as informações principais do build que foram informadas por invocationStarted(com.android.tradefed.invoker.IInvocationContext).

getRunResults()

Este método foi descontinuado. Use getMergedTestRunResults()

TestRunResult getTestRunAtAttempt(String testRunName, int attempt)

Retorna o TestRunResult para uma única tentativa.

int getTestRunAttemptCount(String testRunName)

Retorna o número de tentativas de um determinado nome de execução de teste.

getTestRunAttempts(String testRunName)

Consegue todas as tentativas de uma TestRunResult de uma determinada execução de teste.

getTestRunForAttempts(int attempt)

Recebe todos os resultados de uma determinada tentativa.

getTestRunNames()

Retorna todos os nomes das execuções de teste.

boolean hasFailedTests()

Retorna se a invocação tiver algum teste com falha ou suposição que falhou.

boolean hasTestRunResultsForName(String testRunName)

Retorna se um determinado nome de execução de teste tem resultados.

void invocationEnded(long elapsedTime)

Informa que a invocação foi encerrada, seja com sucesso ou devido a alguma condição de erro.

void invocationFailed(Throwable cause)

Informa uma invocação incompleta devido a alguma condição de erro.

void invocationSkipped(SkipReason reason)

Informa uma invocação como "ignorada"

void invocationStarted(IInvocationContext context)

Informa o início da invocação do teste.

boolean isDisabled()

Retorna "True" se o objeto inteiro estiver desativado (pule a configuração e a desmontagem).

void logAssociation(String dataName, LogFile logFile)

Em alguns casos, o registro precisa estar fortemente associado a casos de teste, mas não é possível fazer isso no callback testLogSaved(String, com.android.tradefed.result.LogDataType, com.android.tradefed.result.InputStreamSource, com.android.tradefed.result.LogFile) direto.

void setBuildInfo(IBuildInfo buildInfo)

Este método foi descontinuado. Não é mais necessário para testes.

void setDisable(boolean isDisabled)

Define se o objeto precisa ser desativado.

void setMergeStrategy(MergeStrategy strategy)

Define o MergeStrategy a ser usado ao mesclar resultados.

void testAssumptionFailure(TestDescription test, String trace)

Chamada quando um teste atômico sinaliza que assume uma condição falsa

void testAssumptionFailure(TestDescription test, FailureDescription failure)

Chamado quando um teste atômico sinaliza que assume uma condição falsa

void testEnded(TestDescription test, long endTime, testMetrics)

Alternativa a ERROR(/#testEnded(com.android.tradefed.result.TestDescription,Map)), em que podemos especificar o horário de término diretamente.

void testEnded(TestDescription test, testMetrics)

Informa o término da execução de um caso de teste individual.

void testFailed(TestDescription test, FailureDescription failure)

Informa a falha de um caso de teste individual.

void testFailed(TestDescription test, String trace)

Informa a falha de um caso de teste individual.

void testIgnored(TestDescription test)

É chamado quando um teste não é executado, geralmente porque um método de teste é anotado com org.junit.Ignore.

void testModuleEnded()

Informa o fim da execução de um módulo.

void testModuleStarted(IInvocationContext moduleContext)

Informa o início da execução de um módulo.

void testRunEnded(long elapsedTime, runMetrics)

Informa o fim da execução do teste.

void testRunFailed(FailureDescription failure)

A execução do teste não foi concluída devido a uma falha descrita por FailureDescription.

void testRunFailed(String errorMessage)

A execução do teste de relatórios não foi concluída devido a um erro fatal.

void testRunStarted(String name, int numTests, int attemptNumber)

Informa o início de uma execução de teste.

void testRunStarted(String name, int numTests)

Informa o início de uma execução de teste.

void testRunStarted(String name, int numTests, int attemptNumber, long startTime)

Informa o início de uma execução de teste.

void testRunStopped(long elapsedTime)

Informa que a execução do teste foi interrompida antes da conclusão devido a uma solicitação do usuário.

void testSkipped(TestDescription test, SkipReason reason)

Chamado quando um teste é ignorado e não executado por um motivo que normalmente não é esperado.

void testStarted(TestDescription test, long startTime)

Alternativa a testStarted(com.android.tradefed.result.TestDescription), em que também especificamos quando o teste foi iniciado, combinado com ERROR(/#testEnded(com.android.tradefed.result.TestDescription,long,Map)) para uma medida precisa.

void testStarted(TestDescription test)

Informa o início de um caso de teste individual.

Métodos protegidos

final void clearModuleLogFiles()

Permite limpar o arquivo do módulo, evitando carregá-lo por muito tempo.

final void clearResultsForName(String testRunName)

Permite limpar os resultados de um determinado nome de execução.

void setIsAggregrateMetrics(boolean aggregate)

Alternar a opção "métricas agregadas"

Construtores públicos

CollectingTestListener

public CollectingTestListener ()

Métodos públicos

getBuildInfo

public IBuildInfo getBuildInfo ()

Este método foi descontinuado.
dependem do IBuildInfo de getInvocationContext().

Retorna as informações do build.

Retorna
IBuildInfo

getCurrentRunResults

public TestRunResult getCurrentRunResults ()

Recebe os resultados da execução de teste atual.

Os resultados podem não estar completos. É recomendável testar o valor de TestRunResult.isRunComplete() e/ou (@link TestRunResult#isRunFailure()} conforme apropriado antes de processar os resultados.

Retorna
TestRunResult o TestRunResult que representa os dados coletados durante o último teste executado.

getExpectedTests

public int getExpectedTests ()

Retorna a contagem de testes esperada. Pode ser diferente de getNumTotalTests() se alguns testes não forem executados.

Retorna
int

getInvocationContext

public IInvocationContext getInvocationContext ()

Retorna o contexto de invocação informado por invocationStarted(com.android.tradefed.invoker.IInvocationContext).

Retorna
IInvocationContext

getMergedTestRunResults

public  getMergedTestRunResults ()

Retorna a coleção mesclada de resultados de todas as execuções em diferentes tentativas.

Se houver vários resultados, cada execução de teste será mesclada, com o resultado mais recente substituindo os resultados de execuções anteriores. As execuções de teste são ordenadas pelo número de tentativas.

As métricas da mesma tentativa serão mescladas com base na preferência definida por aggregate-metrics. As métricas finais serão as da última tentativa.

Retorna

getModuleContextForRunResult

public IInvocationContext getModuleContextForRunResult (String testRunName)

Retorna o IInvocationContext do módulo associado aos resultados.

Parâmetros
testRunName String: o nome dado por {testRunStarted(String, int).

Retorna
IInvocationContext O IInvocationContext do módulo para um determinado nome de execução de teste null se não houver resultados para esse nome.

getModuleLogFiles

public MultiMap<String, LogFile> getModuleLogFiles ()

Retorna uma cópia do mapa que contém todo o arquivo registrado associado ao módulo.

Retorna
MultiMap<String, LogFile>

getNonAssociatedLogFiles

public MultiMap<String, LogFile> getNonAssociatedLogFiles ()

Retorna uma cópia do mapa que contém todo o arquivo registrado não associado a uma execução de teste ou a um módulo.

Retorna
MultiMap<String, LogFile>

getNumAllFailedTestRuns

public int getNumAllFailedTestRuns ()

Retorna o número total de execuções de teste em um estado de falha

Retorna
int

getNumAllFailedTests

public int getNumAllFailedTests ()

Retorna o número total de testes em um estado de falha (somente falhas, falhas de suposição não são contabilizadas).

Retorna
int

getNumTestsInState

public int getNumTestsInState (TestStatus status)

Retorna o número de testes em determinado estado para esta execução.

Parâmetros
status TestStatus

Retorna
int

getNumTestsInState

public int getNumTestsInState (TestResult.TestStatus ddmlibStatus)

Para compatibilidade com tipos de status mais antigos

Parâmetros
ddmlibStatus TestResult.TestStatus

Retorna
int

getNumTotalTests

public int getNumTotalTests ()

Retorna o número total de testes concluídos para todas as execuções.

Retorna
int

getPrimaryBuildInfo

public IBuildInfo getPrimaryBuildInfo ()

Retorna as informações principais do build que foram informadas por invocationStarted(com.android.tradefed.invoker.IInvocationContext). O build principal é o build retornado pelo primeiro provedor da configuração em execução. Retorna nulo se não houver contexto (nenhum build para o caso de teste).

Retorna
IBuildInfo

getRunResults

public  getRunResults ()

Este método foi descontinuado.
Use getMergedTestRunResults()

Retorna os resultados de todas as execuções de teste.

Retorna

getTestRunAtAttempt

public TestRunResult getTestRunAtAttempt (String testRunName, 
                int attempt)

Retorna o TestRunResult para uma única tentativa.

Parâmetros
testRunName String: o nome fornecido por {testRunStarted(String, int).

attempt int: o ID da tentativa.

Retorna
TestRunResult O TestRunResult para o nome e o ID da tentativa fornecidos ou null, se não existir.

getTestRunAttemptCount

public int getTestRunAttemptCount (String testRunName)

Retorna o número de tentativas de um determinado nome de execução de teste.

Parâmetros
testRunName String: o nome dado por {testRunStarted(String, int).

Retorna
int

getTestRunAttempts

public  getTestRunAttempts (String testRunName)

Consegue todas as tentativas de uma TestRunResult de uma determinada execução de teste.

Parâmetros
testRunName String: o nome dado por {testRunStarted(String, int).

Retorna
Todos os TestRunResult de uma determinada execução de teste, ordenados por tentativas.

getTestRunForAttempts

public  getTestRunForAttempts (int attempt)

Recebe todos os resultados de uma determinada tentativa.

Parâmetros
attempt int: a tentativa para a qual queremos resultados.

Retorna
Todos os TestRunResult de uma tentativa específica.

getTestRunNames

public  getTestRunNames ()

Retorna todos os nomes das execuções de teste.

Essas execuções de teste podem ter sido executadas várias vezes com tentativas diferentes.

Retorna

hasFailedTests

public boolean hasFailedTests ()

Retorna se a invocação teve testes de falha ou de falha de suposição.

Retorna
boolean

hasTestRunResultsForName

public boolean hasTestRunResultsForName (String testRunName)

Retorna se um determinado nome de execução de teste tem resultados.

Parâmetros
testRunName String: o nome fornecido por {testRunStarted(String, int).

Retorna
boolean

invocaçãoFinalizada

public void invocationEnded (long elapsedTime)

Informa que a invocação foi encerrada, seja com sucesso ou devido a alguma condição de erro.

Será chamado automaticamente pelo framework TradeFederation.

Parâmetros
elapsedTime long: o tempo decorrido da invocação em ms

invocationFailed

public void invocationFailed (Throwable cause)

Informa uma invocação incompleta devido a alguma condição de erro.

Será chamado automaticamente pelo framework TradeFederation.

Parâmetros
cause Throwable: a causa Throwable da falha

invocationSkipped

public void invocationSkipped (SkipReason reason)

Informa que uma invocação foi pulada

Parâmetros
reason SkipReason

invocationStarted

public void invocationStarted (IInvocationContext context)

Informa o início da invocação do teste.

Será chamado automaticamente pelo framework TradeFederation. Os repórteres precisam substituir esse método para oferecer suporte à geração de relatórios de vários dispositivos.

Parâmetros
context IInvocationContext: informações sobre a invocação

isDisabled

public boolean isDisabled ()

Retorna "True" se o objeto inteiro estiver desativado (pule a configuração e a desmontagem). Falso em outros casos.

Retorna
boolean

logAssociation

public void logAssociation (String dataName, 
                LogFile logFile)

Em alguns casos, o registro precisa estar fortemente associado a casos de teste, mas não é possível fazer isso no callback testLogSaved(String, com.android.tradefed.result.LogDataType, com.android.tradefed.result.InputStreamSource, com.android.tradefed.result.LogFile) direto. Assim, esse callback permite fornecer uma associação forte explicitamente.

Parâmetros
dataName String: o nome dos dados

logFile LogFile: o LogFile que foi registrado antes e precisa ser associado ao caso de teste.

setBuildInfo

public void setBuildInfo (IBuildInfo buildInfo)

Este método foi descontinuado.
Não é mais necessário para testes.

Define as informações do build. Deve ser usado apenas para testes.

Parâmetros
buildInfo IBuildInfo

setDisable

public void setDisable (boolean isDisabled)

Define se o objeto precisa ser desativado. "Desativado" significa que as etapas de configuração e desmontagem serão ignoradas. Pode ser usado para desativar um objeto por padrão no construtor padrão.

Parâmetros
isDisabled boolean: o estado em que o objeto precisa ser colocado.

setMergeStrategy

public void setMergeStrategy (MergeStrategy strategy)

Define o MergeStrategy a ser usado ao mesclar resultados.

Parâmetros
strategy MergeStrategy

testAssumptionFailure

public void testAssumptionFailure (TestDescription test, 
                String trace)

Chamada quando um teste atômico sinaliza que assume uma condição falsa

Parâmetros
test TestDescription: identifica o teste

trace String: stack trace de falha

testAssumptionFailure

public void testAssumptionFailure (TestDescription test, 
                FailureDescription failure)

Chamada quando um teste atômico sinaliza que assume uma condição falsa

Parâmetros
test TestDescription: identifica o teste.

failure FailureDescription: FailureDescription que descreve a falha e o contexto dela.

testEnded

public void testEnded (TestDescription test, 
                long endTime, 
                 testMetrics)

Alternativa a ERROR(/#testEnded(com.android.tradefed.result.TestDescription,Map)), em que podemos especificar o horário de término diretamente. Combine com testStarted(com.android.tradefed.result.TestDescription, long) para uma medição precisa.

Parâmetros
test TestDescription: identifica o teste.

endTime long: o tempo em que o teste foi concluído, medido por System.currentTimeMillis()

testMetrics : uma ERROR(/Map) das métricas emitidas

testEnded

public void testEnded (TestDescription test, 
                 testMetrics)

Informa o final da execução de um caso de teste individual.

Se testFailed(TestDescription, FailureDescription) não foi invocado, o teste foi aprovado. Também retorna as métricas de chave/valor que podem ter sido emitidas durante a execução do caso de teste.

Parâmetros
test TestDescription: identifica o teste

testMetrics : um ERROR(/Map) das métricas emitidas

testFailed

public void testFailed (TestDescription test, 
                FailureDescription failure)

Informa a falha de um caso de teste individual.

Será chamado entre testStarted e testEnded.

Parâmetros
test TestDescription: identifica o teste

failure FailureDescription: FailureDescription que descreve a falha e o contexto dela.

testFailed

public void testFailed (TestDescription test, 
                String trace)

Informa a falha de um caso de teste individual.

Será chamado entre testStarted e testEnded.

Parâmetros
test TestDescription: identifica o teste

trace String: stack trace de falha

testIgnorado

public void testIgnored (TestDescription test)

É chamado quando um teste não é executado, geralmente porque um método de teste é anotado com org.junit.Ignore.

Parâmetros
test TestDescription: identifica o teste

testModuleEnded

public void testModuleEnded ()

Informa o final de uma execução de módulo.

testModuleStarted

public void testModuleStarted (IInvocationContext moduleContext)

Informa o início da execução de um módulo. Esse callback está associado a testModuleEnded() e é opcional na sequência. Ele é usado apenas durante uma execução que usa módulos: executores baseados em pacotes.

Parâmetros
moduleContext IInvocationContext: o IInvocationContext do módulo.

testRunEnded

public void testRunEnded (long elapsedTime, 
                 runMetrics)

Informa o fim da execução do teste.

Parâmetros
elapsedTime long: tempo decorrido informado pelo dispositivo, em milissegundos

runMetrics : pares de chave-valor informados no final de uma execução de teste

testRunFailed

public void testRunFailed (FailureDescription failure)

A execução do teste não foi concluída devido a uma falha descrita por FailureDescription.

Parâmetros
failure FailureDescription: FailureDescription que descreve a falha e o contexto dela.

testRunFailed

public void testRunFailed (String errorMessage)

A execução do teste de relatórios não foi concluída devido a um erro fatal.

Parâmetros
errorMessage String: String descrevendo o motivo da falha na execução.

testRunStarted

public void testRunStarted (String name, 
                int numTests, 
                int attemptNumber)

Informa o início de uma execução de teste.

Parâmetros
name String: o nome da execução de teste.

numTests int: número total de testes na execução do teste

attemptNumber int: número de pedido, que identifica as diferentes tentativas do mesmo runName que são executadas várias vezes. O attemptNumber é indexado em 0 e precisa ser incrementado sempre que uma nova execução acontece. Por exemplo, um teste é tentado três vezes, então precisa ter quatro execuções no total com o mesmo runName e o attemptNumber varia de 0 a 3.

testRunStarted

public void testRunStarted (String name, 
                int numTests)

Informa o início de uma execução de teste.

Parâmetros
name String: o nome da execução de teste.

numTests int: número total de testes na execução do teste

testRunStarted

public void testRunStarted (String name, 
                int numTests, 
                int attemptNumber, 
                long startTime)

Informa o início de uma execução de teste.

Parâmetros
name String: o nome da execução de teste.

numTests int: número total de testes na execução do teste

attemptNumber int: número da ordem, identificando as diferentes tentativas do mesmo runName executadas várias vezes. O attemptNumber é indexado em 0 e precisa ser incrementado sempre que uma nova execução acontece. Por exemplo, um teste é tentado granularmente três vezes, ele precisa ter quatro execuções no total com o mesmo runName e o attemptNumber varia de 0 a 3.

startTime long: o horário de início da corrida, medida usando System.currentTimeMillis().

testRunSinterrupto

public void testRunStopped (long elapsedTime)

Informa que a execução do teste foi interrompida antes da conclusão devido a uma solicitação do usuário.

TODO: atualmente não usado, considere remover

Parâmetros
elapsedTime long: tempo decorrido informado pelo dispositivo, em milissegundos.

testSkipped

public void testSkipped (TestDescription test, 
                SkipReason reason)

É chamado quando um teste é pulado e não é executado por um motivo que não é esperado. Esses testes serão tentados novamente para tentar uma execução adequada.

Parâmetros
test TestDescription: identifica o teste.

reason SkipReason: SkipReason

testStarted

public void testStarted (TestDescription test, 
                long startTime)

Alternativa a testStarted(com.android.tradefed.result.TestDescription), em que também especificamos quando o teste foi iniciado, combinado com ERROR(/#testEnded(com.android.tradefed.result.TestDescription,long,Map)) para uma medida precisa.

Parâmetros
test TestDescription: identifica o teste

startTime long: o momento em que o teste começou, medido por System.currentTimeMillis()

testStarted

public void testStarted (TestDescription test)

Informa o início de um caso de teste individual. Interface mais antiga, use testStarted(com.android.tradefed.result.TestDescription) sempre que possível.

Parâmetros
test TestDescription: identifica o teste

Métodos protegidos

clearModuleLogFiles

protected final void clearModuleLogFiles ()

Permite limpar o arquivo do módulo para evitar que ele seja transportado por muito tempo.

clearResultsForName

protected final void clearResultsForName (String testRunName)

Permite limpar os resultados de um determinado nome de execução. Só pode ser usado em alguns casos, como no agregador de resultados.

Parâmetros
testRunName String

setIsAggregrateMetrics

protected void setIsAggregrateMetrics (boolean aggregate)

Alternar a opção "métricas agregadas"

Parâmetros
aggregate boolean