ShardListener

public class ShardListener
extends CollectingTestListener implements ISupportGranularResults

java.lang.Object
   ↳ com.android.tradefed.result.CollectingTestListener
     ↳ com.android.tradefed.invoker.ShardListener


Un ITestInvocationListener che raccoglie i risultati da uno shard di chiamata (ovvero una suddivisione di chiamate da eseguire in parallelo su più risorse) e li inoltra a un altro ascoltatore.

Riepilogo

Costruttori pubblici

ShardListener(ITestInvocationListener main)

Crea un ShardListener.

Metodi pubblici

getUnderlyingResultReporter()
void invocationEnded(long elapsedTime)

Segnala che l'invocazione è terminata, con esito positivo o a causa di una condizione di errore.

void invocationFailed(FailureDescription failure)

Segnala un'invocazione incompleta a causa di una condizione di errore.

void invocationFailed(Throwable cause)

Segnala un'invocazione incompleta a causa di una condizione di errore.

void invocationSkipped(SkipReason reason)

Segnala un'invocazione come ignorata

void invocationStarted(IInvocationContext context)

Segnala l'inizio dell'invocazione del test.

void logAssociation(String dataName, LogFile logFile)

In alcuni casi, il log deve essere strettamente associato a un test case, ma non è possibile farlo nel callback diretto testLogSaved(String, com.android.tradefed.result.LogDataType, com.android.tradefed.result.InputStreamSource, com.android.tradefed.result.LogFile).

void setSupportGranularResults(boolean enableGranularResults)
boolean supportGranularResults()

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

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

Fornisce i dati di log o di debug associati dall'invocazione del test.

void testLogSaved(String dataName, LogDataType dataType, InputStreamSource dataStream, LogFile logFile)

void testModuleEnded()

Segnala la fine dell'esecuzione di un modulo.

void testModuleStarted(IInvocationContext moduleContext)

Segnala l'inizio dell'esecuzione di un modulo.

void testRunEnded(long elapsedTime, runMetrics)

Segnala la fine dell'esecuzione del test.

void testRunFailed(FailureDescription failure)

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

void testRunFailed(String failureMessage)

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

void testRunStarted(String name, int numTests, int attemptNumber, long startTime)

Segnala l'inizio di un'esecuzione del test.

Costruttori pubblici

ShardListener

public ShardListener (ITestInvocationListener main)

Crea un ShardListener.

Parametri
main ITestInvocationListener: l'ITestInvocationListener a cui devono essere inoltrati i risultati. Per evitare collisioni con altri ShardListener, questo oggetto si sincronizzerà su main durante l'inoltro dei risultati. I risultati verranno inviati solo al termine del frammento di chiamata.

Metodi pubblici

getUnderlyingResultReporter

public  getUnderlyingResultReporter ()

Ritorni

invocationEnded

public void invocationEnded (long elapsedTime)

Segnala che l'invocazione è terminata, con esito positivo 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 (FailureDescription failure)

Segnala un'invocazione 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 un'invocazione 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 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

logAssociation

public void logAssociation (String dataName, 
                LogFile logFile)

In alcuni casi, il log deve essere strettamente associato a un test case, ma non è possibile farlo nel callback diretto testLogSaved(String, com.android.tradefed.result.LogDataType, com.android.tradefed.result.InputStreamSource, com.android.tradefed.result.LogFile). 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 da associare allo scenario di test.

setSupportGranularResults

public void setSupportGranularResults (boolean enableGranularResults)

Parametri
enableGranularResults boolean

supportGranularResults

public boolean supportGranularResults ()

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

Ritorni
boolean

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.

testLogSaved

public void testLogSaved (String dataName, 
                LogDataType dataType, 
                InputStreamSource dataStream, 
                LogFile logFile)

Parametri
dataName String

dataType LogDataType

dataStream InputStreamSource

logFile LogFile

testModuleEnded

public void testModuleEnded ()

Segnala la fine dell'esecuzione di un modulo.

testModuleStarted

public void testModuleStarted (IInvocationContext moduleContext)

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

Parametri
moduleContext IInvocationContext: il IInvocationContext del modulo.

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 registrate al termine di un'esecuzione del test

testRunFailed

public void testRunFailed (FailureDescription failure)

L'esecuzione del test dei report non è riuscita 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 failureMessage)

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

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

testRunStarted

public void testRunStarted (String name, 
                int numTests, 
                int attemptNumber, 
                long startTime)

Segnala l'inizio di un'esecuzione del test.

Parametri
name String: il nome dell'esecuzione del test

numTests 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. Il numero di tentativi è indicizzato da 0 e deve aumentare ogni volta che viene eseguita una nuova esecuzione. Ad esempio, un test viene riavviato granularmente 3 volte, deve avere 4 esecuzioni totali con lo stesso nome esecuzione e il numero di tentativi va da 0 a 3.

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