ResultDBReporter

public class ResultDBReporter
extends Object implements IConfigurationReceiver, ILogSaverListener, ISupportGranularResults, ITestSummaryListener

java.lang.Object
   ↳ com.android.tradefed.result.resultdb.ResultDBReporter


Reporter dei risultati che carica i risultati dei test in ResultDB.

Riepilogo

Campi

protected IInvocationContext mContext

protected boolean mEnableAlTestProperties

Costruttori pubblici

ResultDBReporter()

Metodi pubblici

TestSummary getSummary()

Consente a InvocationListener di restituire un riepilogo.

void invocationEnded(long elapsedTime)

Indica che l'invocazione è terminata, correttamente o a causa di una condizione di errore.

void invocationFailed(FailureDescription failure)

Segnala una chiamata incompleta a causa di una condizione di errore.

void invocationFailed(Throwable cause)

Segnala una chiamata incompleta a causa di una condizione di errore.

void invocationSkipped(SkipReason reason)

Segnala un'invocazione come ignorata

void invocationStarted(IInvocationContext context)

Segnala l'inizio della chiamata di test.

boolean isDisabled()
void logAssociation(String dataName, LogFile logFile)

In alcuni casi, il log deve essere fortemente associato a uno scenario di test, ma l'opportunità di farlo nel callback diretto testLogSaved(String,LogDataType,InputStreamSource,LogFile) non è possibile.

void setConfiguration(IConfiguration configuration)

Inserisce il IConfiguration in uso.

void setLogSaver(ILogSaver logSaver)

Imposta ILogSaver per consentire all'implementatore di salvare i file.

boolean supportGranularResults()

Restituisce True se il reporter supporta risultati granulari, false in caso contrario.

void testAssumptionFailure(TestDescription test, String trace)

Chiamato quando un test atomico segnala che presuppone una condizione falsa

void testAssumptionFailure(TestDescription test, FailureDescription failure)

Chiamato quando un test atomico segnala che presuppone una condizione falsa

void testEnded(TestDescription test, long endTime, HashMap<String, MetricMeasurement.Metric> testMetrics)

Alternativa a testEnded(TestDescription,Map) in cui possiamo specificare direttamente l'ora di fine.

void testEnded(TestDescription test, HashMap<String, MetricMeasurement.Metric> testMetrics)

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

void testFailed(TestDescription test, FailureDescription failure)

Segnala l'esito negativo di un singolo test case.

void testFailed(TestDescription test, String trace)

Segnala l'esito negativo di un singolo test case.

void testIgnored(TestDescription test)

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 testModuleEnded()

Segnala la fine dell'esecuzione di un modulo.

void testModuleStarted(IInvocationContext moduleContext)

Indica l'inizio dell'esecuzione di un modulo.

void testRunEnded(long elapsedTimeMillis, HashMap<String, MetricMeasurement.Metric> runMetrics)

Segnala la fine dell'esecuzione del test.

void testRunFailed(FailureDescription failure)

L'esecuzione di test dei report non è stata completata a causa di un errore descritto da FailureDescription.

void testRunFailed(String errorMessage)

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

void testRunStarted(String runName, int testCount, int attemptNumber)

Segnala l'inizio di un'esecuzione di test.

void testRunStarted(String runName, int testCount)

Segnala l'inizio di un'esecuzione di test.

void testRunStarted(String runName, int testCount, int attemptNumber, long startTime)

Segnala l'inizio di un'esecuzione di test.

void testRunStopped(long elapsedTime)

L'esecuzione di prova dei report è stata interrotta prima del completamento a causa di una richiesta dell'utente.

void testSkipped(TestDescription test, SkipReason reason)

Chiamato quando un test viene ignorato e non eseguito per un motivo insolito.

void testStarted(TestDescription test, long startTime)

Alternativa a testStarted(TestDescription), in cui specifichiamo anche quando è iniziato il test, combinata con testEnded(TestDescription,long,Map) per una misurazione accurata.

void testStarted(TestDescription test)

Segnala l'inizio di un singolo scenario di test.

void uploadStoragePath(String resourceId, String storagePath, LogFile logFile)

Carica il percorso di archiviazione di un artefatto di test AnTS in ResultDB.

Campi

mContext

protected IInvocationContext mContext

mEnableAlTestProperties

protected boolean mEnableAlTestProperties

Costruttori pubblici

ResultDBReporter

public ResultDBReporter ()

Metodi pubblici

getSummary

public TestSummary getSummary ()

Consente a InvocationListener di restituire un riepilogo.

Resi
TestSummary Un TestSummary che riassume la corsa o null

invocationEnded

public void invocationEnded (long elapsedTime)

Indica 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 dell'invocazione in ms

invocationFailed

public void invocationFailed (FailureDescription failure)

Segnala una chiamata incompleta a causa di una condizione di errore.

Verrà chiamato automaticamente dal framework TradeFederation.

Parametri
failure FailureDescription: il FailureDescription che descrive la causa dell'errore

invocationFailed

public void invocationFailed (Throwable cause)

Segnala una chiamata incompleta a causa di una condizione di errore.

Verrà chiamato automaticamente dal framework TradeFederation.

Parametri
cause Throwable: la causa Throwable dell'errore

invocationSkipped

public void invocationSkipped (SkipReason reason)

Segnala un'invocazione come ignorata

Parametri
reason SkipReason

invocationStarted

public void invocationStarted (IInvocationContext context)

Segnala l'inizio della chiamata di test.

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

Parametri
context IInvocationContext: informazioni sulla chiamata

isDisabled

public boolean isDisabled ()

Resi
boolean

logAssociation

public void logAssociation (String dataName, 
                LogFile logFile)

In alcuni casi, il log deve essere fortemente associato a uno scenario di test, ma l'opportunità di farlo nel callback diretto testLogSaved(String,LogDataType,InputStreamSource,LogFile) non è possibile. Pertanto, questo callback consente di fornire un'associazione forte in modo esplicito.

Parametri
dataName String: il nome dei dati

logFile LogFile: il LogFile registrato in precedenza e che deve essere associato allo scenario di test.

setConfiguration

public void setConfiguration (IConfiguration configuration)

Inserisce il IConfiguration in uso.

Parametri
configuration IConfiguration

setLogSaver

public void setLogSaver (ILogSaver logSaver)

Imposta ILogSaver per consentire all'implementatore di salvare i file.

Parametri
logSaver ILogSaver: il ILogSaver

supportGranularResults

public boolean supportGranularResults ()

Restituisce True se il reporter supporta risultati granulari, false in caso contrario.

Resi
boolean

testAssumptionFailure

public void testAssumptionFailure (TestDescription test, 
                String trace)

Chiamato quando un test atomico segnala che presuppone una condizione falsa

Parametri
test TestDescription: identifica il test

trace String: analisi dello stack dell'errore

testAssumptionFailure

public void testAssumptionFailure (TestDescription test, 
                FailureDescription failure)

Chiamato quando un test atomico segnala che presuppone una condizione falsa

Parametri
test TestDescription: identifica il test

failure FailureDescription: FailureDescription che descrive l'errore e il relativo contesto.

testEnded

public void testEnded (TestDescription test, 
                long endTime, 
                HashMap<String, MetricMeasurement.Metric> testMetrics)

Alternativa a testEnded(TestDescription,Map) in cui possiamo specificare direttamente l'ora di fine. Combina con testStarted(TestDescription,long) per una misurazione accurata.

Parametri
test TestDescription: identifica il test

endTime long: l'ora in cui è terminato il test, misurata tramite System.currentTimeMillis()

testMetrics HashMap: un Map delle metriche emesse

testEnded

public void testEnded (TestDescription test, 
                HashMap<String, MetricMeasurement.Metric> 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 eventuali metriche chiave/valore che potrebbero essere state emesse durante l'esecuzione dello scenario di test.

Parametri
test TestDescription: identifica il test

testMetrics HashMap: un Map delle metriche emesse

testFailed

public void testFailed (TestDescription test, 
                FailureDescription failure)

Segnala l'esito negativo di un singolo test case.

Verrà chiamato tra testStarted e testEnded.

Parametri
test TestDescription: identifica il test

failure FailureDescription: FailureDescription che descrive l'errore e il relativo contesto.

testFailed

public void testFailed (TestDescription test, 
                String trace)

Segnala l'esito negativo di un singolo test case.

Verrà chiamato tra testStarted e testEnded.

Parametri
test TestDescription: identifica il test

trace String: analisi dello stack dell'errore

testIgnored

public void testIgnored (TestDescription test)

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

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)/ITestInvocationListener#invocationFailed(java.lang.Throwable) ITestInvocationListener.invocationFailed(Throwable)) o del giorno 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 dei dati, ad esempio "device_logcat".String Nota dataName potrebbe non essere univoco per invocazione. 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 l'InputStream risultante al termine dell'operazione. I chiamanti devono assicurarsi che l'origine dei dati rimanga presente e accessibile fino al completamento del metodo testLog.

testModuleEnded

public void testModuleEnded ()

Segnala la fine dell'esecuzione di un modulo.

testModuleStarted

public void testModuleStarted (IInvocationContext moduleContext)

Indica l'inizio dell'esecuzione di un modulo. Questo callback è associato a testModuleEnded() ed è facoltativo nella sequenza. Viene utilizzato solo durante una corsa che utilizza moduli: runner basati su suite.

Parametri
moduleContext IInvocationContext: il IInvocationContext del modulo.

testRunEnded

public void testRunEnded (long elapsedTimeMillis, 
                HashMap<String, MetricMeasurement.Metric> runMetrics)

Segnala la fine dell'esecuzione del test. FIXME: We cannot have two Map<> interfaces with different type, so we have to use HashMap here.

Parametri
elapsedTimeMillis long: tempo trascorso segnalato dal dispositivo, in millisecondi

runMetrics HashMap: coppie chiave-valore riportate alla fine di un'esecuzione del test con Metric.

testRunFailed

public void testRunFailed (FailureDescription failure)

L'esecuzione di test dei report non è stata completata a causa di un errore descritto da FailureDescription.

Parametri
failure FailureDescription: FailureDescription che descrive l'errore e il relativo contesto.

testRunFailed

public void testRunFailed (String errorMessage)

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

Parametri
errorMessage String: String che descrive il motivo dell'errore di esecuzione.

testRunStarted

public void testRunStarted (String runName, 
                int testCount, 
                int attemptNumber)

Segnala l'inizio di un'esecuzione di test.

Parametri
runName String: il nome dell'esecuzione di test

testCount int: numero totale di test nell'esecuzione del test

attemptNumber int: numero d'ordine, che identifica i diversi tentativi dello stesso runName eseguiti più volte. attemptNumber è indicizzato a 0 e deve aumentare ogni volta che viene eseguita una nuova esecuzione. Ad esempio, un test viene ritentato in modo granulare 3 volte, deve avere 4 esecuzioni totali con lo stesso runName e attemptNumber va da 0 a 3.

testRunStarted

public void testRunStarted (String runName, 
                int testCount)

Segnala l'inizio di un'esecuzione di test.

Parametri
runName String: il nome dell'esecuzione di test

testCount int: numero totale di test nell'esecuzione del test

testRunStarted

public void testRunStarted (String runName, 
                int testCount, 
                int attemptNumber, 
                long startTime)

Segnala l'inizio di un'esecuzione di test.

Parametri
runName String: il nome dell'esecuzione di test

testCount int: numero totale di test nell'esecuzione del test

attemptNumber int: numero d'ordine, che identifica i diversi tentativi dello stesso runName eseguiti più volte. attemptNumber è indicizzato a 0 e deve aumentare ogni volta che viene eseguita una nuova esecuzione. Ad esempio, un test viene ritentato in modo granulare 3 volte, deve avere 4 esecuzioni totali con lo stesso runName e attemptNumber va da 0 a 3.

startTime long: l'ora di inizio della corsa, misurata tramite System.currentTimeMillis()

testRunStopped

public void testRunStopped (long elapsedTime)

L'esecuzione di prova dei report è stata interrotta prima del completamento a causa di una richiesta dell'utente.

TODO: currently unused, consider removing

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

testSkipped

public void testSkipped (TestDescription test, 
                SkipReason reason)

Chiamato quando un test viene ignorato e non eseguito per un motivo insolito. Verrà effettuato un nuovo tentativo di esecuzione di questi test.

Parametri
test TestDescription: identifica il test

reason SkipReason: SkipReason

testStarted

public void testStarted (TestDescription test, 
                long startTime)

Alternativa a testStarted(TestDescription), in cui specifichiamo anche quando è iniziato il test, combinata con testEnded(TestDescription,long,Map) per una misurazione accurata.

Parametri
test TestDescription: identifica il test

startTime long: l'ora di inizio del test, misurata tramite System.currentTimeMillis()

testStarted

public void testStarted (TestDescription test)

Segnala l'inizio di un singolo scenario di test. Interfaccia precedente, deve utilizzare testStarted(TestDescription) quando possibile.

Parametri
test TestDescription: identifica il test

uploadStoragePath

public void uploadStoragePath (String resourceId, 
                String storagePath, 
                LogFile logFile)

Carica il percorso di archiviazione di un artefatto di test AnTS in ResultDB.

Si tratta di una soluzione temporanea per la migrazione da AnTS a ResultDB (vedi go/convergence-tr). Questo metodo deve essere chiamato dal reporter AnTS quando il percorso di archiviazione di un artefatto diventa disponibile.

Il reporter AnTS garantisce che chiamerà questo metodo per ogni artefatto caricato. Questo reporter, a sua volta, caricherà tutti questi artefatti in ResultDB con la corretta associazione di test. Per l'associazione corretta dei log,è necessario che logAssociation(String,LogFile) sia stato chiamato in precedenza per lo stesso ID risorsa. In questo modo l'artefatto viene già monitorato. In caso contrario, l'artefatto verrà associato all'unità di lavoro di primo livello dell'invocazione di Tradefed.

Questo metodo non deve essere chiamato prima di invocationStarted(IInvocationContext). Può essere chiamato dopo invocationEnded(long) per le chiamate gestite da un sistema upstream, in quanto non vengono finalizzate da questo reporter. Questo non si applica alle chiamate create localmente, che vengono finalizzate in invocationEnded(long).

TODO(b/464941055): Remove this method once we can properly migrate AnTS artifacts to ResultDB.

Parametri
resourceId String: l'ID risorsa dell'artefatto.

storagePath String: il percorso di archiviazione dell'artefatto (ad es. un percorso /bigstore/).

logFile LogFile: l'oggetto LogFile associato all'artefatto.