SubprocessResultsReporter

public class SubprocessResultsReporter
extends Object implements AutoCloseable, ILogSaverListener, ISupportGranularResults, ITestInvocationListener

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


Implementa ITestInvocationListener para ser especificado como um result_reporter e encaminha do subprocess os resultados de testes, execuções de teste e invocações de teste.

Resumo

Construtores públicos

SubprocessResultsReporter()

Métodos públicos

void close()

TestSummary getSummary()

Permite que o InvocationListener retorne um resumo.

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 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 printEvent(String key, Object event)

Auxiliar para imprimir a chave do evento e o objeto JSON.

void setOutputTestLog(boolean outputTestLog)

Define se o teste registrado precisa ser exibido ou não.

boolean supportGranularResults()

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

void testAssumptionFailure(TestDescription testId, String trace)

Chamado quando um teste atômico sinaliza que ele pressupõe uma condição falsa.

void testAssumptionFailure(TestDescription testId, FailureDescription failure)

Chamado quando um teste atômico sinaliza que ele pressupõe uma condição falsa.

void testEnded(TestDescription testId, long endTime, HashMap<String, MetricMeasurement.Metric> metrics)

Alternativa a testEnded(TestDescription,Map) em que podemos especificar o horário de término diretamente.

void testEnded(TestDescription testId, HashMap<String, MetricMeasurement.Metric> metrics)

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

void testFailed(TestDescription testId, FailureDescription failure)

Informa a falha de um caso de teste individual.

void testFailed(TestDescription testId, String reason)

Informa a falha de um caso de teste individual.

void testIgnored(TestDescription testId)

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

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

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

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 time, 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 reason)

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

void testRunStarted(String runName, int testCount, int attemptNumber)

Informa o início de um teste.

void testRunStarted(String runName, int testCount)

Informa o início de um teste.

void testRunStarted(String runName, int testCount, int attemptNumber, long startTime)

Informa o início de um teste.

void testRunStopped(long arg0)

A execução de teste de relatórios foi interrompida antes da conclusão devido a uma solicitação do usuário.

void testSkipped(TestDescription testId, SkipReason reason)

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

void testStarted(TestDescription testId, long startTime)

Alternativa a testStarted(TestDescription) em que também especificamos quando o teste foi iniciado, combinado com testEnded(TestDescription,long,Map) para uma medição precisa.

void testStarted(TestDescription testId)

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

Construtores públicos

SubprocessResultsReporter

public SubprocessResultsReporter ()

Métodos públicos

fechar

public void close ()

getSummary

public TestSummary getSummary ()

Permite que o InvocationListener retorne um resumo.

Retorna
TestSummary Um TestSummary que resume a execução ou nulo

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.

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.

printEvent

public void printEvent (String key, 
                Object event)

Auxiliar para imprimir a chave do evento e o objeto JSON.

Parâmetros
key String

event Object

setOutputTestLog

public void setOutputTestLog (boolean outputTestLog)

Define se o teste registrado precisa ser exibido ou não.

Parâmetros
outputTestLog boolean

supportGranularResults

public boolean supportGranularResults ()

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

Retorna
boolean

testAssumptionFailure

public void testAssumptionFailure (TestDescription testId, 
                String trace)

Chamado quando um teste atômico sinaliza que ele pressupõe uma condição falsa.

Parâmetros
testId TestDescription: identifica o teste.

trace String: stack trace da falha

testAssumptionFailure

public void testAssumptionFailure (TestDescription testId, 
                FailureDescription failure)

Chamado quando um teste atômico sinaliza que ele pressupõe uma condição falsa.

Parâmetros
testId TestDescription: identifica o teste.

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

testEnded

public void testEnded (TestDescription testId, 
                long endTime, 
                HashMap<String, MetricMeasurement.Metric> metrics)

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

Parâmetros
testId TestDescription: identifica o teste.

endTime long: o horário em que o teste terminou, medido por System.currentTimeMillis()

metrics HashMap: uma Map das métricas emitidas

testEnded

public void testEnded (TestDescription testId, 
                HashMap<String, MetricMeasurement.Metric> metrics)

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

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

Parâmetros
testId TestDescription: identifica o teste.

metrics HashMap: uma Map das métricas emitidas

testFailed

public void testFailed (TestDescription testId, 
                FailureDescription failure)

Informa a falha de um caso de teste individual.

Será chamado entre testStarted e testEnded.

Parâmetros
testId TestDescription: identifica o teste.

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

testFailed

public void testFailed (TestDescription testId, 
                String reason)

Informa a falha de um caso de teste individual.

Será chamado entre testStarted e testEnded.

Parâmetros
testId TestDescription: identifica o teste.

reason String: stack trace da falha

testIgnored

public void testIgnored (TestDescription testId)

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

Parâmetros
testId TestDescription: identifica o teste.

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.

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 time, 
                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
time 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 reason)

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

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

testRunStarted

public void testRunStarted (String runName, 
                int testCount, 
                int attemptNumber)

Informa o início de um teste.

Parâmetros
runName String: o nome da execução do teste.

testCount 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, ele precisa ter quatro execuções no mesmo runName, e o attemptNumber é de 0 a 3.

testRunStarted

public void testRunStarted (String runName, 
                int testCount)

Informa o início de um teste.

Parâmetros
runName String: o nome da execução do teste.

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

testRunStarted

public void testRunStarted (String runName, 
                int testCount, 
                int attemptNumber, 
                long startTime)

Informa o início de um teste.

Parâmetros
runName String: o nome da execução do teste.

testCount 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()

testRunStopped

public void testRunStopped (long arg0)

A execução de teste de relatórios foi interrompida antes da conclusão devido a uma solicitação do usuário.

TODO: atualmente não usado, considere remover

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

testSkipped

public void testSkipped (TestDescription testId, 
                SkipReason reason)

Chamado quando um teste é ignorado e não é executado por um motivo que geralmente não é esperado. Esses testes serão repetidos para tentar uma execução adequada.

Parâmetros
testId TestDescription: identifica o teste.

reason SkipReason: SkipReason

testStarted

public void testStarted (TestDescription testId, 
                long startTime)

Alternativa a testStarted(TestDescription) em que também especificamos quando o teste foi iniciado, combinado com testEnded(TestDescription,long,Map) para uma medição precisa.

Parâmetros
testId TestDescription: identifica o teste.

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

testStarted

public void testStarted (TestDescription testId)

Informa o início de um caso de teste individual. Interface mais antiga. Use testStarted(TestDescription) sempre que possível.

Parâmetros
testId TestDescription: identifica o teste.