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 eventos configuráveis
ocorre e chama ITestInvocationListener#testLog
nos filhos após cada
o relatório do bug seja coletado.
Comportamentos: (FIXME: concluir)
- Capturar após cada um se algum caso de teste falhar
- Capturar após cada caso de teste
- Capturar após cada caso de teste com falha
- Gravar
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 relatórios de bugs. |
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 algum erro condição. |
void
|
invocationFailed(Throwable cause)
Informa uma invocação incompleta devido a uma condição de erro. |
void
|
invocationStarted(IInvocationContext context)
Informa o início da invocação do teste. |
void
|
setAsynchronous(boolean asynchronous)
Definir se a coleta de relatórios de bugs deve coletar o relatório em uma linha de execução diferente
( |
void
|
setDescriptiveName(String name)
Defina o nome descritivo que será usado ao gravar relatórios de bugs. |
void
|
setDeviceWaitTime(int waitTime)
Defina o tempo (em segundos) de espera até que o dispositivo fique on-line antes de tentarmos capturar relatório de bugs. |
void
|
testAssumptionFailure(TestDescription test, String trace)
Chamado quando um teste atômico sinaliza que assume uma condição falsa |
void
|
testEnded(TestDescription test,
Informa 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 é executado, geralmente porque um método de teste é anotado com "org.junit.Ignore". |
void
|
testLog(String dataName, LogDataType dataType, InputStreamSource dataStream)
Fornece o registro associado ou os dados de depuração da invocação de teste. |
void
|
testRunEnded(long elapsedTime,
Informa o fim 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)
Informa 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_INÍCIO
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
addPredicate
public void addPredicate (BugreportCollector.Predicate p)
Parâmetros | |
---|---|
p |
BugreportCollector.Predicate |
blockUntilIdle
public void blockUntilIdle ()
Bloqueie até que o coletor não esteja coletando relatórios de bugs. Se o coletor não estiver ativamente coletar um relatório de bug, retornar imediatamente
getResumo
public TestSummary getSummary ()
Permite que o InvocationListener retorne um resumo.
Retorna | |
---|---|
TestSummary |
Um TestSummary que resume a execução ou é nulo. |
invocaçãoFinalizada
public void invocationEnded (long elapsedTime)
Informa que a invocação foi encerrada, seja com sucesso ou devido a algum erro condição.
Será chamado automaticamente pela estrutura 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 uma 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 informantes 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. |
setAssíncrono
public void setAsynchronous (boolean asynchronous)
Definir se a coleta de relatórios de bugs deve coletar o relatório em uma linha de execução diferente
(asynchronous = true
) ou bloquear o autor da chamada até que o relatório do bug seja capturado
asynchronous = false
).
Parâmetros | |
---|---|
asynchronous |
boolean |
setDescriptiveName
public void setDescriptiveName (String name)
Defina o nome descritivo que será usado ao gravar relatórios de bugs. Se for null
,
BugreportCollector
voltará ao comportamento padrão de serialização do nome do
o evento que fez com que o relatório do bug fosse coletado.
Parâmetros | |
---|---|
name |
String |
setDeviceTempo de espera
public void setDeviceWaitTime (int waitTime)
Defina o tempo (em segundos) de espera até que o dispositivo fique on-line antes de tentarmos capturar
relatório do bug. Se for negativo, nenhuma verificação será realizada. Qualquer DeviceNotAvailableException
encontrados durante essa verificação serão registrados e ignorados.
Parâmetros | |
---|---|
waitTime |
int |
testAssumptionFailure
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 : stack trace de falha |
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 qualquer chave/valor
métricas 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, 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 : 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. |
testLog
public void testLog (String dataName, LogDataType dataType, InputStreamSource dataStream)
Fornece o registro associado ou os dados de depuração da invocação de teste.
Precisa ser chamado antes de ERROR(/ITestInvocationListener#invocationFailed(Throwable))
ou
ERROR(/ITestInvocationListener#invocationEnded(long))
A estrutura da TradeFederation chamará automaticamente esse método, 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. os implementadores devem ser capazes de lidar
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 começar a ler os dados e fechar o
InputStream quando concluído. Os autores da chamada precisam garantir que a fonte dos dados não seja alterada.
presente e acessível até que o método testLog seja concluído. |
testRunEnded
public void testRunEnded (long elapsedTime,runMetrics)
Informa o fim da execução do teste. FIXME: não podemos ter dois Map<> interfaces com tipos diferentes, então precisamos usar o HashMap aqui.
Parâmetros | |
---|---|
elapsedTime |
long : tempo decorrido informado pelo dispositivo, em milissegundos. |
runMetrics |
: pares de chave-valor informados no final de um 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 descrevendo 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 na execução do teste |
testRunSinterrupto
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: não usado no momento, considere remover
Parâmetros | |
---|---|
elapsedTime |
long : tempo decorrido informado pelo dispositivo, em milissegundos. |
testStarted
public void testStarted (TestDescription test)
Informa o início de um caso de teste individual. A interface mais antiga precisa usar testStarted(com.android.tradefed.result.TestDescription)
sempre que possível.
Parâmetros | |
---|---|
test |
TestDescription : identifica o teste. |