BugreportCollector
public
class
BugreportCollector
extends Object
implements
ITestInvocationListener
java.lang.Object | |
↳ | com.android.tradefed.result.BugreportCollector |
Un ITestInvocationListener
passthrough che raccoglie segnalazioni di bug quando si verificano eventi configurabili e quindi chiama ITestInvocationListener#testLog
sui relativi elementi secondari dopo aver raccolto ogni segnalazione di bug.
Comportamenti: (FIXME: termina questa procedura)
- Acquisisci dopo ogni test se uno o più casi di test non sono riusciti
- Acquisisci dopo ogni test case
- Acquisisci dopo ogni test case non riuscito
- Acquisisci
Riepilogo
Classi nidificate | |
---|---|
class |
BugreportCollector.Predicate
Un predicato completo che descrive quando acquisire un report di bug. |
interface |
BugreportCollector.SubPredicate
|
Campi | |
---|---|
public
static
final
BugreportCollector.Predicate |
AFTER_FAILED_TESTCASES
Un predicato predefinito che si attiva dopo ogni scenario di test non riuscito |
public
static
final
BugreportCollector.Predicate |
AT_START
Un predicato predefinito che viene attivato all'inizio della prima chiamata |
Costruttori pubblici | |
---|---|
BugreportCollector(ITestInvocationListener listener, ITestDevice testDevice)
|
Metodi pubblici | |
---|---|
void
|
addPredicate(BugreportCollector.Predicate p)
|
void
|
blockUntilIdle()
Blocca fino a quando il raccoglitore non raccoglie più segnalazioni di bug. |
TestSummary
|
getSummary()
Consente a InvocationListener di restituire un riepilogo. |
void
|
invocationEnded(long elapsedTime)
Segnala che l'invocazione è terminata, correttamente o a causa di una condizione di errore. |
void
|
invocationFailed(Throwable cause)
Segnala un'invocazione incompleta a causa di una condizione di errore. |
void
|
invocationStarted(IInvocationContext context)
Segnala l'inizio della chiamata di test. |
void
|
setAsynchronous(boolean asynchronous)
Imposta se la raccolta di report di bug deve raccogliere la segnalazione di bug in un thread diverso ( |
void
|
setDescriptiveName(String name)
Imposta il nome descrittivo da utilizzare per registrare i report di bug. |
void
|
setDeviceWaitTime(int waitTime)
Imposta il tempo (in secondi) di attesa che il dispositivo sia online prima che proviamo ad acquisire una segnalazione di bug. |
void
|
testAssumptionFailure(TestDescription test, String trace)
Viene chiamato quando un test atomico segnala che presuppone una condizione falsa |
void
|
testEnded(TestDescription test,
Segnala il termine dell'esecuzione di un singolo test case. |
void
|
testFailed(TestDescription test, String trace)
Segnala l'errore di un singolo test case. |
void
|
testIgnored(TestDescription test)
Viene chiamato quando un test non verrà eseguito, in genere perché un metodo di test è annotato con org.junit.Ignore. |
void
|
testLog(String dataName, LogDataType dataType, InputStreamSource dataStream)
Fornisce i dati di log o di debug associati dall'invocazione del test. |
void
|
testRunEnded(long elapsedTime,
Segnala la fine dell'esecuzione del test. |
void
|
testRunFailed(String errorMessage)
L'esecuzione del test dei report non è riuscita a causa di un errore fatale. |
void
|
testRunStarted(String runName, int testCount)
Segnala l'inizio di un'esecuzione del test. |
void
|
testRunStopped(long elapsedTime)
L'esecuzione del test dei report è stata interrotta prima del completamento a causa di una richiesta dell'utente. |
void
|
testStarted(TestDescription test)
Segnala l'inizio di un singolo scenario di test. |
Campi
AFTER_FAILED_TESTCASES
public static final BugreportCollector.Predicate AFTER_FAILED_TESTCASES
Un predicato predefinito che viene attivato dopo ogni test case non riuscito
AT_START
public static final BugreportCollector.Predicate AT_START
Un predicato predefinito che viene attivato all'inizio della prima chiamata
Costruttori pubblici
BugreportCollector
public BugreportCollector (ITestInvocationListener listener, ITestDevice testDevice)
Parametri | |
---|---|
listener |
ITestInvocationListener |
testDevice |
ITestDevice |
Metodi pubblici
addPredicate
public void addPredicate (BugreportCollector.Predicate p)
Parametri | |
---|---|
p |
BugreportCollector.Predicate |
BloccaUntilIdle
public void blockUntilIdle ()
Blocca fino a quando il raccoglitore non raccoglie più segnalazioni di bug. Se il raccoglitore non sta raccogliendo attivamente una segnalazione di bug, torna immediatamente
getSummary
public TestSummary getSummary ()
Consente a InvocationListener di restituire un riepilogo.
Ritorni | |
---|---|
TestSummary |
Un TestSummary che riassume l'esecuzione o null |
chiamata terminata
public void invocationEnded (long elapsedTime)
Segnala che l'invocazione è terminata, correttamente o a causa di una condizione di errore.
Verrà chiamato automaticamente dal framework TradeFederation.
Parametri | |
---|---|
elapsedTime |
long : il tempo trascorso dall'invocazione in ms |
invocationFailed
public void invocationFailed (Throwable cause)
Segnala una chiamata incompleta a causa di alcune condizioni di errore.
Verrà chiamato automaticamente dal framework TradeFederation.
Parametri | |
---|---|
cause |
Throwable : la causa Throwable dell'errore |
invocationStarted
public void invocationStarted (IInvocationContext context)
Segnala l'inizio dell'invocazione del test.
Verrà chiamato automaticamente dal framework TradeFederation. I reporter devono eseguire l'override di questo metodo per supportare i report su più dispositivi.
Parametri | |
---|---|
context |
IInvocationContext : informazioni sull'invocazione |
impostaAsynchronous
public void setAsynchronous (boolean asynchronous)
Imposta se la raccolta della segnalazione bug deve essere eseguita in un thread diverso
(asynchronous = true
) o se il chiamante deve essere bloccato finché la segnalazione bug non viene acquisita
(asynchronous = false
).
Parametri | |
---|---|
asynchronous |
boolean |
setDescriptiveName
public void setDescriptiveName (String name)
Imposta il nome descrittivo da utilizzare per registrare i report di bug. Se null
,
BugreportCollector
tornerà al comportamento predefinito di serializzazione del nome
dell'evento che ha causato la raccolta del report di bug.
Parametri | |
---|---|
name |
String |
setDeviceWaitTime
public void setDeviceWaitTime (int waitTime)
Imposta il tempo (in secondi) di attesa prima che il dispositivo sia online prima di provare a acquisire un report di bug. Se è negativo, non verrà eseguito alcun controllo. Tutti gli elementi DeviceNotAvailableException
riscontrati durante questo controllo verranno registrati e ignorati.
Parametri | |
---|---|
waitTime |
int |
testAssumptionFailure
public void testAssumptionFailure (TestDescription test, String trace)
Richiamato quando un test atomico segnala che assume una condizione falsa
Parametri | |
---|---|
test |
TestDescription : identifica il test |
trace |
String : analisi dello stack dell'errore |
testEnded
public void testEnded (TestDescription test,testMetrics)
Segnala il termine dell'esecuzione di un singolo test case.
Se testFailed(TestDescription, FailureDescription)
non è stato invocato, questo test è stato superato. Restituisce anche eventuali metriche chiave/valore che potrebbero essere state emesse durante l'esecuzione del test case.
Parametri | |
---|---|
test |
TestDescription : identifica il test |
testMetrics |
: una percentuale pari a ERROR(/Map) delle metriche emesse |
testFailed
public void testFailed (TestDescription test, String trace)
Segnala l'errore di un singolo test case.
Verrà chiamato tra testStarted e testEnded.
Parametri | |
---|---|
test |
TestDescription : identifica il test |
trace |
String : analisi dello stack degli errori |
testIgnored
public void testIgnored (TestDescription test)
Richiamato quando non verrà eseguito un test, in genere perché un metodo di test è annotato con org.junit.Ignora.
Parametri | |
---|---|
test |
TestDescription : identifica il test |
testLog
public void testLog (String dataName, LogDataType dataType, InputStreamSource dataStream)
Fornisce i dati di log o di debug associati dall'invocazione del test.
Deve essere chiamato prima del giorno ERROR(/ITestInvocationListener#invocationFailed(Throwable))
o
ERROR(/ITestInvocationListener#invocationEnded(long))
Il framework TradeFederation chiamerà automaticamente questo metodo, fornendo il log dell'host e, se applicabile, il logcat del dispositivo.
Parametri | |
---|---|
dataName |
String : un nome descrittivo String dei dati, ad esempio "device_logcat". Nota:
dataName potrebbe non essere univoco per ogni chiamata. Ad esempio, gli implementatori devono essere in grado di gestire
più chiamate con lo stesso dataName |
dataType |
LogDataType : il LogDataType dei dati |
dataStream |
InputStreamSource : il InputStreamSource dei dati. Gli implementatori devono chiamare
createInputStream per iniziare a leggere i dati e assicurarsi di chiudere
InputStream risultante al termine. Gli utenti che chiamano devono assicurarsi che l'origine dei dati rimanga presente e accessibile fino al completamento del metodo testLog. |
testRunEnded
public void testRunEnded (long elapsedTime,runMetrics)
Segnala la fine dell'esecuzione del test.
Parametri | |
---|---|
elapsedTime |
long : tempo trascorso segnalato dal dispositivo, in millisecondi |
runMetrics |
: coppie chiave/valore segnalate al termine dell'esecuzione di un test |
testRunFailed
public void testRunFailed (String errorMessage)
L'esecuzione del test dei report non è riuscita a causa di un errore fatale.
Parametri | |
---|---|
errorMessage |
String : String che descrive il motivo dell'errore di esecuzione. |
testRunStarted
public void testRunStarted (String runName, int testCount)
Segnala l'inizio di un'esecuzione di test.
Parametri | |
---|---|
runName |
String : nome dell'esecuzione del test |
testCount |
int : numero totale di test nell'esecuzione di test |
testRunArrestato
public void testRunStopped (long elapsedTime)
Esecuzione di test dei report interrotta prima del completamento a causa di una richiesta dell'utente.
TODO: currently unused, consider removing
Parametri | |
---|---|
elapsedTime |
long : tempo trascorso sul dispositivo segnalato, in millisecondi |
testIniziato
public void testStarted (TestDescription test)
Segnala l'inizio di un singolo test case. Interfaccia precedente, da utilizzare con testStarted(com.android.tradefed.result.TestDescription)
, se possibile.
Parametri | |
---|---|
test |
TestDescription : identifica il test |