ShardListener

public class ShardListener
extends CollectingTestListener implements ISupportGranularResults

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


Um ITestInvocationListener que coleta resultados de um fragmento de invocação (também conhecido como divisão de invocação para execução em vários recursos em paralelo) e os encaminha para outro listener.

Resumo

Construtores públicos

ShardListener(ITestInvocationListener main)

Crie um ShardListener.

Métodos públicos

getUnderlyingResultReporter()
void invocationEnded(long elapsedTime)

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

void invocationFailed(FailureDescription failure)

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

void invocationFailed(Throwable cause)

Informa uma invocação incompleta devido a uma 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.

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 setSupportGranularResults(boolean enableGranularResults)
boolean supportGranularResults()

Retorna "True" se o informante oferece suporte a resultados granulares. Caso contrário, retorna "False".

void testLog(String dataName, LogDataType dataType, InputStreamSource dataStream)

Fornece os dados de registro ou depuração associados à invocação do teste.

void testLogSaved(String dataName, LogDataType dataType, InputStreamSource dataStream, LogFile logFile)

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 failureMessage)

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, long startTime)

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

Construtores públicos

ShardListener

public ShardListener (ITestInvocationListener main)

Crie um ShardListener.

Parâmetros
main ITestInvocationListener: o ITestInvocationListener em que os resultados precisam ser encaminhados. Para evitar colisões com outros ShardListeners, esse objeto será sincronizado no main ao encaminhar resultados. Os resultados só serão enviados quando o fragmento da invocação for concluído.

Métodos públicos

getUnderlyingResultReporter

public  getUnderlyingResultReporter ()

Retorna

invocationEnded

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

InvocationFalha

public void invocationFailed (FailureDescription failure)

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

Será chamado automaticamente pelo framework TradeFederation.

Parâmetros
failure FailureDescription: o FailureDescription que descreve a causa da falha

InvocationFalha

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 uma invocação como "ignorada"

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 a vários dispositivos.

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

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.

setSupportGranularResults

public void setSupportGranularResults (boolean enableGranularResults)

Parâmetros
enableGranularResults boolean

supportGranularResults

public boolean supportGranularResults ()

Retorna "True" se o informante for compatível com resultados granulares. Caso contrário, retorna "false".

Retorna
boolean

testLog

public void testLog (String dataName, 
                LogDataType dataType, 
                InputStreamSource dataStream)

Fornece os dados de registro ou depuração associados à invocação do teste.

Precisa ser chamado antes de ERROR(/ITestInvocationListener#invocationFailed(Throwable)) ou ERROR(/ITestInvocationListener#invocationEnded(long)).

O framework TradeFederation vai chamar esse método automaticamente, fornecendo o registro do host e, se aplicável, o logcat do dispositivo.

Parâmetros
dataName String: um nome descritivo de String dos dados. Por exemplo, "device_logcat". Observação dataName pode não ser exclusivo por invocação. Ou seja, os implementadores precisam ser capazes de processar várias chamadas com o mesmo dataName.

dataType LogDataType: o LogDataType dos dados

dataStream InputStreamSource: o InputStreamSource dos dados. Os implementadores precisam chamar createInputStream para começar a ler os dados e fechar o InputStream resultante quando terminar. Os autores da chamada precisam garantir que a origem dos dados permaneça presente e acessível até que o método testLog seja concluído.

testLogSaved

public void testLogSaved (String dataName, 
                LogDataType dataType, 
                InputStreamSource dataStream, 
                LogFile logFile)

Parâmetros
dataName String

dataType LogDataType

dataStream InputStreamSource

logFile LogFile

testModuleEnded

public void testModuleEnded ()

Informa o fim da execução de um 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 um teste.

testRunFailed

public void testRunFailed (FailureDescription failure)

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

Parâmetros
failure FailureDescription: FailureDescription descrevendo a falha e o contexto.

testRunFailed

public void testRunFailed (String failureMessage)

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

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

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 do 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 em que a execução começou, medido por System.currentTimeMillis()