Coletor de relatórios de bugs

public class BugreportCollector
extends Object implements ITestInvocationListener

java.lang.Object
com.android.tradefed.result.BugreportCollector


Um ITestInvocationListener de passagem que coleta relatórios de bugs quando ocorrem eventos configuráveis ​​e, em seguida, chama ITestInvocationListener#testLog em seus filhos após cada relatório de bug ser coletado.

Comportamentos: (FIXME: termine isso)

  • Capture após cada caso se algum caso de teste falhar
  • Captura após cada caso de teste
  • Captura após cada caso de teste com falha
  • Capturar

Resumo

Classes aninhadas

class BugreportCollector.Predicate

Um predicado completo que descreve quando capturar um relatório de bug.

interface BugreportCollector.SubPredicate

Campos

public static final BugreportCollector.Predicate AFTER_FAILED_TESTCASES

Um predicado predefinido que é acionado após cada caso de teste com falha

public static final BugreportCollector.Predicate AT_START

Um predicado predefinido que é acionado quando a primeira invocação começa

Construtores públicos

BugreportCollector ( ITestInvocationListener listener, ITestDevice testDevice)

Métodos públicos

void addPredicate ( BugreportCollector.Predicate p)
void blockUntilIdle ()

Bloqueie até que o coletor não esteja coletando nenhum relatório de bug.

TestSummary getSummary ()

Permite que o InvocationListener retorne um resumo.

void invocationEnded (long elapsedTime)

Relata que a invocação foi encerrada, seja com êxito ou devido a alguma condição de erro.

void invocationFailed (Throwable cause)

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

void invocationStarted ( IInvocationContext context)

Informa o início da chamada de teste.

void setAsynchronous (boolean asynchronous)

Defina se a coleção de relatórios de bug deve coletar o relatório de bug em um thread diferente ( asynchronous = true ) ou bloquear o chamador até que o relatório de bug seja capturado ( asynchronous = false ).

void setDescriptiveName (String name)

Defina o nome descritivo a ser usado ao gravar relatórios de bugs.

void setDeviceWaitTime (int waitTime)

Defina o tempo (em segundos) de espera para o dispositivo ficar online antes de tentarmos capturar um relatório de bug.

void testAssumptionFailure ( TestDescription test, String trace)

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

void testEnded ( TestDescription test, testMetrics) testEnded ( TestDescription test, testMetrics)

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

void testFailed ( TestDescription test, String trace)

Relata a falha de um caso de teste individual.

void testIgnored ( TestDescription test)

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

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

Fornece o log associado ou dados de depuração da invocação de teste.

void testRunEnded (long elapsedTime, runMetrics) testRunEnded (long elapsedTime, runMetrics)

Informa o final da execução do teste.

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 runName, int testCount)

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

void testRunStopped (long elapsedTime)

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

void testStarted ( TestDescription test)

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

Campos

AFTER_FAILED_TESTCASES

public static final BugreportCollector.Predicate AFTER_FAILED_TESTCASES

Um predicado predefinido que é acionado após cada caso de teste com falha

AT_START

public static final BugreportCollector.Predicate AT_START

Um predicado predefinido que é acionado quando a primeira invocação começa

Construtores públicos

Coletor de relatórios de bugs

public BugreportCollector (ITestInvocationListener listener, 
                ITestDevice testDevice)

Parâmetros
listener ITestInvocationListener

testDevice ITestDevice

Métodos públicos

adicionarPredicado

public void addPredicate (BugreportCollector.Predicate p)

Parâmetros
p BugreportCollector.Predicate

bloquearUntilIdle

public void blockUntilIdle ()

Bloqueie até que o coletor não esteja coletando nenhum relatório de bug. Se o coletor não estiver coletando ativamente um relatório de bug, retorne imediatamente

obter Resumo

public TestSummary getSummary ()

Permite que o InvocationListener retorne um resumo.

Devoluções
TestSummary Um TestSummary resumindo a execução ou nulo

invocaçãoEnded

public void invocationEnded (long elapsedTime)

Relata que a invocação foi encerrada, seja com êxito 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

invocaçãoFailed

public void invocationFailed (Throwable cause)

Relata 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

invocaçãoiniciada

public void invocationStarted (IInvocationContext context)

Informa o início da chamada de teste.

Será chamado automaticamente pelo framework 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

setAssíncrono

public void setAsynchronous (boolean asynchronous)

Defina se a coleção de relatórios de bug deve coletar o relatório de bug em um thread diferente ( asynchronous = true ) ou bloquear o chamador até que o relatório de bug seja capturado ( asynchronous = false ).

Parâmetros
asynchronous boolean

setDescriptiveName

public void setDescriptiveName (String name)

Defina o nome descritivo a ser usado ao gravar relatórios de bugs. Se null , BugreportCollector retornará ao comportamento padrão de serializar o nome do evento que causou a coleta do relatório de bug.

Parâmetros
name String

setDeviceWaitTime

public void setDeviceWaitTime (int waitTime)

Defina o tempo (em segundos) de espera para o dispositivo ficar online antes de tentarmos capturar um relatório de bug. Se negativo, nenhuma verificação será realizada. Qualquer DeviceNotAvailableException encontrada durante esta verificação será registrada e ignorada.

Parâmetros
waitTime int

testeAssunçãoFalha

public void testAssumptionFailure (TestDescription test, 
                String trace)

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

Parâmetros
test TestDescription : identifica o teste

trace String : rastreamento de pilha de falha

teste finalizado

public void testEnded (TestDescription test, 
                 testMetrics)

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

Se testFailed(TestDescription, FailureDescription) não foi invocado, este teste foi aprovado. Também retorna quaisquer métricas de chave/valor que possam 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

teste falhou

public void testFailed (TestDescription test, 
                String trace)

Relata a falha de um caso de teste individual.

Será chamado entre testStarted e testEnded.

Parâmetros
test TestDescription : identifica o teste

trace String : rastreamento de pilha de falha

testeIgnorado

public void testIgnored (TestDescription test)

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

Parâmetros
test TestDescription : identifica o teste

testeLog

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

Fornece o log associado ou dados de depuração da invocação de teste.

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

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

Parâmetros
dataName String : um nome descritivo da String dos dados. por exemplo, "dispositivo_logcat". Nota dataName pode não ser exclusivo por chamada. ou seja, os implementadores devem ser capazes de lidar com várias chamadas com o mesmo dataName

dataType LogDataType : o LogDataType dos dados

dataStream InputStreamSource : o InputStreamSource dos dados. Os implementadores devem chamar createInputStream para iniciar a leitura dos dados e garantir o fechamento do InputStream resultante quando concluído. Os chamadores devem garantir que a fonte dos dados permaneça presente e acessível até que o método testLog seja concluído.

testRunEnded

public void testRunEnded (long elapsedTime, 
                 runMetrics)

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

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

runMetrics : pares de valores-chave relatados no final de uma execução de teste com Metric .

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 que descreve o motivo da falha na execução.

testRunStarted

public void testRunStarted (String runName, 
                int testCount)

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

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

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

testRunStopped

public void testRunStopped (long elapsedTime)

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

TODO: atualmente não utilizado, considere remover

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

teste iniciado

public void testStarted (TestDescription test)

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

Parâmetros
test TestDescription : identifica o teste