ShardMainResultForwarder

public class ShardMainResultForwarder
extends ResultForwarder implements ILogSaverListener

java.lang.Object
com.android.tradefed.result.ResultForwarder
  com.android.tradefed.invoker.ShardMainResultForwarder


Un ResultForwarder che combina i risultati di chiamate di test suddivise. Segnala il completamento della chiamata ai listener solo quando tutte le chiamate suddivise sono state completate.

Questa classe non è thread-safe. È previsto che i client blocchino questa classe quando inviano i risultati dei test, per impedire che i callback di chiamata vengano chiamati in modo non sequenziale.

Riepilogo

Costruttori pubblici

ShardMainResultForwarder(List<ITestInvocationListener> listeners, int expectedShards)

Crea un ShardMainResultForwarder.

Metodi pubblici

List<ITestInvocationListener> getListeners()

Ottiene l'elenco dei listener.

void invocationEnded(long elapsedTime)

Segnala che la chiamata è terminata, correttamente o a causa di una condizione di errore.

void invocationEnded(long elapsedTime, IInvocationContext context)

Callback più dettagliato per distinguere quale shard è stato completato.

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 una chiamata come ignorata

void invocationStarted(IInvocationContext context)

Segnala l'inizio della chiamata di test.

void logAssociation(String dataName, LogFile logFile)

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

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

Inoltra solo il testLog anziché salvare prima il log.

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

Chiamato quando il log di test viene salvato.

Costruttori pubblici

ShardMainResultForwarder

public ShardMainResultForwarder (List<ITestInvocationListener> listeners, 
                int expectedShards)

Crea un ShardMainResultForwarder.

Parametri
listeners List: l'elenco di ITestInvocationListener a cui inoltrare i risultati al completamento di tutti gli shard

expectedShards int: il numero di shard

Metodi pubblici

getListeners

public List<ITestInvocationListener> getListeners ()

Ottiene l'elenco dei listener.

Resi
List<ITestInvocationListener> L'elenco di ITestInvocationListener.

invocationEnded

public void invocationEnded (long elapsedTime)

Segnala che la chiamata è terminata, correttamente o a causa di una condizione di errore.

Verrà chiamato automaticamente dal framework TradeFederation.

Parametri
elapsedTime long: il tempo trascorso della chiamata in ms

invocationEnded

public void invocationEnded (long elapsedTime, 
                IInvocationContext context)

Callback più dettagliato per distinguere quale shard è stato completato.

Parametri
elapsedTime long

context IInvocationContext

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 Throwable causa dell'errore

invocationSkipped

public void invocationSkipped (SkipReason reason)

Segnala una chiamata 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 sostituire questo metodo per supportare la segnalazione di più dispositivi.

Parametri
context IInvocationContext: informazioni sulla chiamata

logAssociation

public void logAssociation (String dataName, 
                LogFile logFile)

In alcuni casi, il log deve essere fortemente associato a un caso 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 al caso di test.

testLogForward

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

Inoltra solo il testLog anziché salvare prima il log.

Parametri
dataName String

dataType LogDataType

dataStream InputStreamSource

testLogSaved

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

Chiamato quando il log di test viene salvato.

Deve essere utilizzato al posto di ITestInvocationListener.testLog(String,LogDataType,InputStreamSource).

Parametri
dataName String: un nome descrittivo String dei dati, ad es. "device_logcat". Tieni presente che dataName potrebbe non essere univoco per 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 l'InputStream risultante al termine.

logFile LogFile: il LogFile contenente i metadati del file salvato.