BugreportCollector
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
ocorrem e chama ITestInvocationListener.testLog nos filhos depois que cada
relatório de bug é coletado.
Comportamentos: (FIXME: finish this)
- Capturar após cada caso de teste com falha
- Capturar após cada caso de teste
- Capturar após cada caso de teste com falha
- Capturar
Resumo
Classes aninhadas | |
|---|---|
class |
BugreportCollector.Predicate
Um predicado completo que descreve quando capturar um bugreport. |
interface |
BugreportCollector.SubPredicate
|
Campos | |
|---|---|
public
static
final
BugreportCollector.Predicate |
AFTER_FAILED_TESTCASES
Um predicado predefinido que é disparado após cada caso de teste com falha. |
public
static
final
BugreportCollector.Predicate |
AT_START
Um predicado predefinido que é disparado 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()
Bloqueia 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 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
|
setAsynchronous(boolean asynchronous)
Define se a coleta de relatório de bugs deve coletar o relatório em uma linha de execução diferente
( |
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) que o sistema deve esperar para que o dispositivo fique on-line antes de tentar capturar um relatório de bug. |
void
|
testAssumptionFailure(TestDescription test, String trace)
Chamado quando um teste atômico sinaliza que ele pressupõe uma condição falsa. |
void
|
testEnded(TestDescription test, HashMap<String, MetricMeasurement.Metric> testMetrics)
Informa o fim da execução de um caso de teste individual. |
void
|
testFailed(TestDescription test, String trace)
Informa 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 os dados de depuração ou de registro associados da invocação de teste. |
void
|
testRunEnded(long elapsedTime, HashMap<String, MetricMeasurement.Metric> runMetrics)
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 um teste. |
void
|
testRunStopped(long elapsedTime)
A execução de 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 é disparado após cada caso de teste com falha.
AT_START
public static final BugreportCollector.Predicate AT_START
Um predicado predefinido que é disparado quando a primeira invocação começa.
Construtores públicos
BugreportCollector
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 ()
Bloqueia até que o coletor não esteja coletando relatórios de bugs. Se o coletor não estiver coletando um bugreport ativamente, retorne imediatamente
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 (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 |
setAsynchronous
public void setAsynchronous (boolean asynchronous)
Define se a coleta de bugreport deve coletar o bugreport em uma linha de execução diferente
(asynchronous = true) ou bloquear o autor da chamada até que o bugreport 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 vai voltar 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) que o sistema deve esperar para que o dispositivo fique on-line antes de tentar capturar um
relatório de bug. Se for negativo, nenhuma verificação será realizada. Qualquer DeviceNotAvailableException
encontrado durante essa verificação será registrado e ignorado.
| Parâmetros | |
|---|---|
waitTime |
int |
testAssumptionFailure
public void testAssumptionFailure (TestDescription test, String trace)
Chamado quando um teste atômico sinaliza que ele pressupõe uma condição falsa.
| Parâmetros | |
|---|---|
test |
TestDescription: identifica o teste. |
trace |
String: stack trace da falha |
testEnded
public void testEnded (TestDescription test, HashMap<String, MetricMeasurement.Metric> testMetrics)
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 | |
|---|---|
test |
TestDescription: identifica o teste. |
testMetrics |
HashMap: uma Map das métricas emitidas |
testFailed
public void testFailed (TestDescription test, String trace)
Informa 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 da falha |
testIgnored
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 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. |
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 (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 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 |
testRunStopped
public void testRunStopped (long elapsedTime)
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 | |
|---|---|
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. Interface mais antiga. Use testStarted(TestDescription) sempre que possível.
| Parâmetros | |
|---|---|
test |
TestDescription: identifica o teste. |