ShardListener

public class ShardListener
extends CollectingTestListener implements ISupportGranularResults

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


Un ITestInvocationListener qui collecte les résultats d'une partition d'appel (c'est-à-dire une division d'appel à exécuter sur plusieurs ressources en parallèle) et les transmet à un autre écouteur.

Résumé

Constructeurs publics

ShardListener ( ITestInvocationListener main)

Créez un ShardListener .

Méthodes publiques

getUnderlyingResultReporter ()
void invocationEnded (long elapsedTime)

Signale que l'appel s'est terminé, que ce soit avec succès ou en raison d'une condition d'erreur.

void invocationFailed ( FailureDescription failure)

Signale un appel incomplet en raison d’une condition d’erreur.

void invocationFailed (Throwable cause)

Signale un appel incomplet en raison d’une condition d’erreur.

void invocationStarted ( IInvocationContext context)

Signale le début de l’invocation du test.

void logAssociation (String dataName, LogFile logFile)

Dans certains cas, le journal doit être fortement associé à un cas de test, mais il est possible de le faire directement testLogSaved(String, com.android.tradefed.result.LogDataType, com.android.tradefed.result.InputStreamSource, com.android.tradefed.result.LogFile) le rappel n’est pas possible.

void setSupportGranularResults (boolean enableGranularResults)
boolean supportGranularResults ()

Renvoie True si le rapporteur prend en charge les résultats granulaires, false sinon.

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

Fournit le journal associé ou les données de débogage de l’appel de test.

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

void testModuleEnded ()

Signale la fin de l'exécution d'un module.

void testModuleStarted ( IInvocationContext moduleContext)

Signale le début de l'exécution d'un module.

void testRunEnded (long elapsedTime, runMetrics) testRunEnded (long elapsedTime, runMetrics)

Signale la fin du test.

void testRunFailed ( FailureDescription failure)

L’exécution du test des rapports n’a pas abouti en raison d’un échec décrit par FailureDescription .

void testRunFailed (String failureMessage)

L’exécution du test des rapports n’a pas abouti en raison d’une erreur fatale.

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

Signale le début d’une exécution de test.

Constructeurs publics

ShardListener

public ShardListener (ITestInvocationListener main)

Créez un ShardListener .

Paramètres
main ITestInvocationListener : le ITestInvocationListener dont les résultats doivent être transmis. Pour éviter les collisions avec d'autres ShardListener , cet objet se synchronisera sur main lors du transfert des résultats. Et les résultats ne seront envoyés qu’une fois le fragment d’invocation terminé.

Méthodes publiques

getUnderlyingResultReporter

public  getUnderlyingResultReporter ()

Retour

invocationFin

public void invocationEnded (long elapsedTime)

Signale que l'appel s'est terminé, que ce soit avec succès ou en raison d'une condition d'erreur.

Sera automatiquement appelé par le framework TradeFederation.

Paramètres
elapsedTime long : le temps écoulé de l'invocation en ms

échec de l'appel

public void invocationFailed (FailureDescription failure)

Signale un appel incomplet en raison d’une condition d’erreur.

Sera automatiquement appelé par le framework TradeFederation.

Paramètres
failure FailureDescription : le FailureDescription décrivant la cause de la panne

échec de l'appel

public void invocationFailed (Throwable cause)

Signale un appel incomplet en raison d’une condition d’erreur.

Sera automatiquement appelé par le framework TradeFederation.

Paramètres
cause Throwable : la cause Throwable de l'échec

invocationDémarrée

public void invocationStarted (IInvocationContext context)

Signale le début de l’invocation du test.

Sera automatiquement appelé par le framework TradeFederation. Les journalistes doivent remplacer cette méthode pour prendre en charge la création de rapports sur plusieurs appareils.

Paramètres
context IInvocationContext : informations sur l'invocation

journalAssociation

public void logAssociation (String dataName, 
                LogFile logFile)

Dans certains cas, le journal doit être fortement associé à un cas de test, mais il est possible de le faire directement testLogSaved(String, com.android.tradefed.result.LogDataType, com.android.tradefed.result.InputStreamSource, com.android.tradefed.result.LogFile) le rappel n’est pas possible. Ainsi, ce rappel permet de fournir explicitement une association forte.

Paramètres
dataName String : Le nom de la donnée

logFile LogFile : le LogFile qui a été enregistré auparavant et qui doit être associé au scénario de test.

setSupportGranularResults

public void setSupportGranularResults (boolean enableGranularResults)

Paramètres
enableGranularResults boolean

supportGranularResults

public boolean supportGranularResults ()

Renvoie True si le rapporteur prend en charge les résultats granulaires, false sinon.

Retour
boolean

journal de test

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

Fournit le journal associé ou les données de débogage de l’appel de test.

Doit être appelé avant ERROR(/ITestInvocationListener#invocationFailed(Throwable)) ou ERROR(/ITestInvocationListener#invocationEnded(long))

Le framework TradeFederation appellera automatiquement cette méthode, en fournissant le journal de l'hôte et, le cas échéant, le logcat de l'appareil.

Paramètres
dataName String : un nom descriptif de String des données. par exemple "device_logcat". Remarque dataName peut ne pas être unique par appel. c'est-à-dire que les implémenteurs doivent être capables de gérer plusieurs appels avec le même nom de données

dataType LogDataType : le LogDataType des données

dataStream InputStreamSource : le InputStreamSource des données. Les implémenteurs doivent appeler createInputStream pour commencer à lire les données et veiller à fermer le InputStream résultant une fois terminé. Les appelants doivent s’assurer que la source des données reste présente et accessible jusqu’à la fin de la méthode testLog.

testLogSaved

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

Paramètres
dataName String

dataType LogDataType

dataStream InputStreamSource

logFile LogFile

testModuleFin

public void testModuleEnded ()

Signale la fin de l'exécution d'un module.

testModuleDémarré

public void testModuleStarted (IInvocationContext moduleContext)

Signale le début de l'exécution d'un module. Ce rappel est associé à testModuleEnded() et est facultatif dans la séquence. Il n'est utilisé que lors d'une exécution qui utilise des modules : des coureurs basés sur une suite.

Paramètres
moduleContext IInvocationContext : le IInvocationContext du module.

testRunEnded

public void testRunEnded (long elapsedTime, 
                 runMetrics)

Signale la fin du test. FIXME : Nous ne pouvons pas avoir deux interfaces Map<> de type différent, nous devons donc utiliser HashMap ici.

Paramètres
elapsedTime long : l'appareil a signalé le temps écoulé, en millisecondes

runMetrics : paires clé-valeur signalées à la fin d'un test avec Metric .

testRunFailed

public void testRunFailed (FailureDescription failure)

L’exécution du test des rapports n’a pas abouti en raison d’un échec décrit par FailureDescription .

Paramètres
failure FailureDescription : FailureDescription décrivant la panne et son contexte.

testRunFailed

public void testRunFailed (String failureMessage)

L’exécution du test des rapports n’a pas abouti en raison d’une erreur fatale.

Paramètres
failureMessage String : String décrivant la raison de l'échec de l'exécution.

testRunStarted

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

Signale le début d’une exécution de test.

Paramètres
name String : le nom du test

numTests int : nombre total de tests en cours de test

attemptNumber int : numéro d'ordre, identifiant les différentes tentatives d'un même runName qui s'exécutent plusieurs fois. Le tentNumber est indexé sur 0 et doit s’incrémenter à chaque fois qu’une nouvelle exécution se produit. Par exemple, un test granulaire est réessayé 3 fois, il doit avoir 4 exécutions au total sous le même nom d'exécution et le numéro de tentative est compris entre 0 et 3.

startTime long : l'heure de démarrage de l'exécution, mesurée via System.currentTimeMillis()