Raccolta bug

public class BugreportCollector
extends Object implements ITestInvocationListener

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


Un ITestInvocationListener passthrough che raccoglie segnalazioni di bug quando eventi configurabili si verificano e quindi chiama ITestInvocationListener#testLog sui relativi elementi secondari dopo ogni la segnalazione di bug.

Comportamenti: (FIXME: termina questa procedura)

  • Acquisisci dopo ogni scenario se uno scenario di test non ha avuto esito positivo
  • Acquisisci dopo ogni scenario di test
  • Acquisisci dopo ogni scenario di test non riuscito
  • Acquisisci

Riepilogo

Classi nidificate

class BugreportCollector.Predicate

Un predicato completo che descrive quando acquisire una segnalazione 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 si attiva 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 segnalazioni di bug.

TestSummary getSummary()

Consente a InvocationListener di restituire un riepilogo.

void invocationEnded(long elapsedTime)

Report che la chiamata è stata terminata, correttamente o a causa di un errore .

void invocationFailed(Throwable cause)

Segnala una chiamata incompleta a causa di alcune condizioni di errore.

void invocationStarted(IInvocationContext context)

Segnala l'inizio della chiamata di test.

void setAsynchronous(boolean asynchronous)

Imposta se la raccolta di segnalazioni di bug deve raccogliere la segnalazione di bug in un thread diverso (asynchronous = true) o blocca il chiamante finché non viene acquisita la segnalazione di bug (asynchronous = false).

void setDescriptiveName(String name)

Imposta il nome descrittivo da utilizzare durante la registrazione delle segnalazioni di bug.

void setDeviceWaitTime(int waitTime)

Imposta il tempo (in secondi) di attesa che il dispositivo sia online prima di tentare di acquisire un segnalazione di bug.

void testAssumptionFailure(TestDescription test, String trace)

Richiamato quando un test atomico segnala che assume una condizione falsa

void testEnded(TestDescription test, testMetrics)

Segnala la fine dell'esecuzione di un singolo scenario di test.

void testFailed(TestDescription test, String trace)

Segnala l'errore di un singolo scenario di test.

void testIgnored(TestDescription test)

Richiamato quando non verrà eseguito un test, in genere perché un metodo di test è annotato con org.junit.Ignora.

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

Fornisce i dati di log o di debug associati dalla chiamata di test.

void testRunEnded(long elapsedTime, runMetrics)

Fine dell'esecuzione del test nei report.

void testRunFailed(String errorMessage)

L'esecuzione del test dei report non è riuscita a causa di un errore irreversibile.

void testRunStarted(String runName, int testCount)

Segnala l'inizio di un'esecuzione di test.

void testRunStopped(long elapsedTime)

Esecuzione di test dei report 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

DOPO_NON_USO_TESTCASE

public static final BugreportCollector.Predicate AFTER_FAILED_TESTCASES

Un predicato predefinito che si attiva dopo ogni scenario di test non riuscito

AT_START

public static final BugreportCollector.Predicate AT_START

Un predicato predefinito che si attiva all'inizio della prima chiamata

Costruttori pubblici

Raccolta bug

public BugreportCollector (ITestInvocationListener listener, 
                ITestDevice testDevice)

Parametri
listener ITestInvocationListener

testDevice ITestDevice

Metodi pubblici

addPredicate

public void addPredicate (BugreportCollector.Predicate p)

Parametri
p BugreportCollector.Predicate

Blocco fino

public void blockUntilIdle ()

Blocca fino a quando il raccoglitore non raccoglie segnalazioni di bug. Se il raccoglitore non sta attivamente raccogliere una segnalazione di bug, restituisci subito

getRiepilogo

public TestSummary getSummary ()

Consente a InvocationListener di restituire un riepilogo.

Ritorni
TestSummary Un elemento TestSummary che riepiloga l'esecuzione oppure un valore null

chiamata terminata

public void invocationEnded (long elapsedTime)

Report che la chiamata è stata terminata, correttamente o a causa di un errore .

Verrà chiamato automaticamente dal framework TradeFederation.

Parametri
elapsedTime long: il tempo trascorso della chiamata in ms

chiamata non riuscita

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

chiamataIniziata

public void invocationStarted (IInvocationContext context)

Segnala l'inizio della chiamata di test.

Verrà chiamato automaticamente dal framework TradeFederation. I reporter devono eseguire l'override questo metodo per supportare la generazione di report su più dispositivi.

Parametri
context IInvocationContext: informazioni sulla chiamata

impostaAsynchronous

public void setAsynchronous (boolean asynchronous)

Imposta se la raccolta di segnalazioni di bug deve raccogliere la segnalazione di bug in un thread diverso (asynchronous = true) o blocca il chiamante finché non viene acquisita la segnalazione di bug (asynchronous = false).

Parametri
asynchronous boolean

setDescriptiveName

public void setDescriptiveName (String name)

Imposta il nome descrittivo da utilizzare durante la registrazione delle segnalazioni di bug. Se null, BugreportCollector ricorrerà al comportamento predefinito di serializzazione del nome l'evento che ha generato la raccolta della segnalazione di bug.

Parametri
name String

impostaDevicewaitTime

public void setDeviceWaitTime (int waitTime)

Imposta il tempo (in secondi) di attesa che il dispositivo sia online prima di tentare di acquisire un segnalazione di bug. Se il valore è negativo, non verrà eseguito alcun controllo. Qualsiasi 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 degli errori

testTerminato

public void testEnded (TestDescription test, 
                 testMetrics)

Segnala la fine dell'esecuzione di un singolo scenario di test.

Se testFailed(TestDescription, FailureDescription) non è stato richiamato, questo test è stato superato. Restituisce anche qualsiasi coppia chiave-valore metriche emesse durante l'esecuzione dello scenario di test.

Parametri
test TestDescription: identifica il test

testMetrics : una percentuale pari a ERROR(/Map) delle metriche emesse

testNon riuscito

public void testFailed (TestDescription test, 
                String trace)

Segnala l'errore di un singolo scenario di test.

Verrà chiamato tra testStarted e testEnded.

Parametri
test TestDescription: identifica il test

trace String: analisi dello stack degli errori

testIgnorato

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

Diariotest

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

Fornisce i dati di log o di debug associati dalla chiamata di test.

La chiamata deve essere effettuata prima di ERROR(/ITestInvocationListener#invocationFailed(Throwable)) oppure ERROR(/ITestInvocationListener#invocationEnded(long))

Il framework TradeFederation chiamerà automaticamente questo metodo, fornendo il log host e, se applicabile, il logcat del dispositivo.

Parametri
dataName String: un nome descrittivo String dei dati. ad es. "device_logcat". Nota dataName non può essere univoco per ogni chiamata. ovvero gli implementer devono essere in grado di più chiamate con lo stesso dataName

dataType LogDataType: il LogDataType dei dati

dataStream InputStreamSource: il InputStreamSource dei dati. Gli addetti all'implementazione devono chiamare createInputStream per iniziare a leggere i dati e assicurarsi di chiudere InputStream al termine. I chiamanti devono garantire che l'origine dei dati rimanga e accessibile fino al completamento del metodo testLog.

testRunEnded

public void testRunEnded (long elapsedTime, 
                 runMetrics)

Fine dell'esecuzione del test nei report. FIXME: Non possiamo avere due mappe<> si interfaccia con tipi diversi, dobbiamo usare HashMap qui.

Parametri
elapsedTime long: tempo trascorso sul dispositivo segnalato, in millisecondi

runMetrics : coppie chiave-valore segnalate al termine di un'esecuzione di test con Metric.

testRunNon riuscito

public void testRunFailed (String errorMessage)

L'esecuzione del test dei report non è riuscita a causa di un errore irreversibile.

Parametri
errorMessage String: String che descrive il motivo dell'errore dell'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 del test

testRunArrestato

public void testRunStopped (long elapsedTime)

Esecuzione di test dei report interrotta prima del completamento a causa di una richiesta dell'utente.

DA FARE: attualmente inutilizzato, valuta la possibilità di rimuoverlo

Parametri
elapsedTime long: tempo trascorso sul dispositivo segnalato, in millisecondi

testIniziato

public void testStarted (TestDescription test)

Segnala l'inizio di un singolo scenario di test. Interfaccia precedente; dovrebbe utilizzare testStarted(com.android.tradefed.result.TestDescription) quando possibile.

Parametri
test TestDescription: identifica il test