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 (ou seja, uma divisão de invocação para ser executada 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

List<ITestInvocationListener> 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 alguma condição de erro.

void invocationSkipped(SkipReason reason)

Informa que uma invocação foi 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 um caso de teste, mas não é possível fazer isso no callback direto do testLogSaved(String,LogDataType,InputStreamSource,LogFile).

void setSupportGranularResults(boolean enableGranularResults)
boolean supportGranularResults()

Retorna "True" se o jornalista puder usar resultados detalhados. Caso contrário, retorna "False".

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

Fornece os dados de depuração ou de registro associados da invocação de 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, HashMap<String, MetricMeasurement.Metric> runMetrics)

Informa o fim da execução do teste.

void testRunFailed(FailureDescription failure)

Não foi possível concluir o teste de execução de relatórios 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 um teste.

Construtores públicos

ShardListener

public ShardListener (ITestInvocationListener main)

Crie um ShardListener.

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

Métodos públicos

getUnderlyingResultReporter

public List<ITestInvocationListener> getUnderlyingResultReporter ()

Retorna
List<ITestInvocationListener>

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 pela estrutura TradeFederation.

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

invocationFailed

public void invocationFailed (FailureDescription failure)

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

Será chamado automaticamente pela estrutura TradeFederation.

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

invocationFailed

public void invocationFailed (Throwable cause)

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

Será chamado automaticamente pela estrutura TradeFederation.

Parâmetros
cause Throwable: a causa Throwable da falha.

invocationSkipped

public void invocationSkipped (SkipReason reason)

Informa que uma invocação foi ignorada.

Parâmetros
reason SkipReason

invocationStarted

public void invocationStarted (IInvocationContext context)

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

Será chamado automaticamente pela estrutura TradeFederation. Os repórteres precisam substituir esse método para oferecer suporte a relatórios de 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 um caso de teste, mas não é possível fazer isso no callback direto do testLogSaved(String,LogDataType,InputStreamSource,LogFile). Assim, esse callback permite fornecer uma associação forte de forma explícita.

Parâmetros
dataName String: o nome dos dados

logFile LogFile: o LogFile registrado anteriormente e que 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 jornalista puder usar resultados detalhados. Caso contrário, retorna "False".

Retorna
boolean

testLog

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

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

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

A estrutura TradeFederation chama esse método automaticamente, fornecendo o registro do host e, se aplicável, o logcat do dispositivo.

Parâmetros
dataName String: um nome descritivo 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 concluído. 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 só é usado durante uma execução que usa módulos: executores baseados em suítes.

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

testRunEnded

public void testRunEnded (long elapsedTime, 
                HashMap<String, MetricMeasurement.Metric> runMetrics)

Informa o fim da execução do teste. FIXME: Não podemos ter duas interfaces Map<> com tipos diferentes, então precisamos usar HashMap aqui.

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

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

testRunFailed

public void testRunFailed (FailureDescription failure)

Não foi possível concluir o teste de execução de relatórios 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 failureMessage)

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

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

testRunStarted

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

Informa o início de um 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 do pedido, identificando 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 é repetido granularmente três vezes e precisa ter quatro execuções no mesmo runName, e o attemptNumber é de 0 a 3.

startTime long: o horário em que a execução começou, medido por System.currentTimeMillis()