CollecteTestListener

public class CollectingTestListener
extends Object implements ITestInvocationListener , ILogSaverListener , IDisableable

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


Un ITestInvocationListener qui collectera tous les résultats des tests.

Bien que les structures de données utilisées dans cet objet soient thread-safe, les rappels ITestInvocationListener doivent être appelés dans le bon ordre.

Résumé

Constructeurs publics

CollectingTestListener ()

Méthodes publiques

IBuildInfo getBuildInfo ()

Cette méthode est obsolète. comptez sur IBuildInfo de getInvocationContext() .

TestRunResult getCurrentRunResults ()

Obtient les résultats de l’exécution de test en cours.

int getExpectedTests ()

Renvoie le nombre de tests attendus.

IInvocationContext getInvocationContext ()

Renvoie le contexte d'invocation signalé via invocationStarted(com.android.tradefed.invoker.IInvocationContext)

getMergedTestRunResults ()

Renvoie la collection fusionnée de résultats pour toutes les exécutions sur différentes tentatives.

IInvocationContext getModuleContextForRunResult (String testRunName)

Renvoie le IInvocationContext du module associé aux résultats.

MultiMap <String, LogFile > getModuleLogFiles ()

Renvoie une copie de la carte contenant tous les fichiers journalisés associés au module

MultiMap <String, LogFile > getNonAssociatedLogFiles ()

Renvoie une copie de la carte contenant tous les fichiers enregistrés non associés à un test ou à un module.

int getNumAllFailedTestRuns ()

Renvoie le nombre total d'exécutions de tests en état d'échec

int getNumAllFailedTests ()

Renvoie le nombre total de tests en état d'échec (uniquement en échec, les échecs d'hypothèse ne sont pas pris en compte).

int getNumTestsInState ( TestStatus status)

Renvoie le nombre de tests dans un état donné pour cette exécution.

int getNumTestsInState (TestResult.TestStatus ddmlibStatus)

Pour la compatibilité avec les anciens types de statut

int getNumTotalTests ()

Renvoie le nombre total de tests terminés pour toutes les exécutions.

IBuildInfo getPrimaryBuildInfo ()

Renvoie les informations de build principales signalées via invocationStarted(com.android.tradefed.invoker.IInvocationContext) .

getRunResults ()

Cette méthode est obsolète. Utilisez getMergedTestRunResults()

TestRunResult getTestRunAtAttempt (String testRunName, int attempt)

Renvoie le TestRunResult pour une seule tentative.

int getTestRunAttemptCount (String testRunName)

Renvoie le nombre de tentatives pour un nom d'exécution de test donné.

getTestRunAttempts (String testRunName)

Obtient toutes les tentatives pour un TestRunResult d’une exécution de test donnée.

getTestRunForAttempts (int attempt)

Obtient tous les résultats pour une tentative donnée.

getTestRunNames ()

Renvoie tous les noms de toutes les exécutions de tests.

boolean hasFailedTests ()

Renvoie si l'invocation a eu des tests ayant échoué ou des tests ayant échoué.

boolean hasTestRunResultsForName (String testRunName)

Indique si un nom d'exécution de test donné a des résultats.

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 (Throwable cause)

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

void invocationSkipped ( SkipReason reason)

Signale une invocation comme ignorée

void invocationStarted ( IInvocationContext context)

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

boolean isDisabled ()

Renvoie True si l'objet entier est désactivé (ignorer la configuration et le démontage).

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 setBuildInfo ( IBuildInfo buildInfo)

Cette méthode est obsolète. Plus nécessaire pour les tests.

void setDisable (boolean isDisabled)

Définit si l'objet doit être désactivé.

void setMergeStrategy ( MergeStrategy strategy)

Définit le MergeStrategy à utiliser lors de la fusion des résultats.

void testAssumptionFailure ( TestDescription test, String trace)

Appelé lorsqu'un test atomique signale qu'il suppose une condition fausse

void testAssumptionFailure ( TestDescription test, FailureDescription failure)

Appelé lorsqu'un test atomique signale qu'il suppose une condition fausse

void testEnded ( TestDescription test, long endTime, testMetrics) testEnded ( TestDescription test, long endTime, testMetrics)

Alternative à ERROR(/#testEnded(com.android.tradefed.result.TestDescription,Map)) où nous pouvons spécifier directement l'heure de fin.

void testEnded ( TestDescription test, testMetrics) testEnded ( TestDescription test, testMetrics)

Signale la fin de l’exécution d’un scénario de test individuel.

void testFailed ( TestDescription test, FailureDescription failure)

Signale l’échec d’un scénario de test individuel.

void testFailed ( TestDescription test, String trace)

Signale l’échec d’un scénario de test individuel.

void testIgnored ( TestDescription test)

Appelé lorsqu'un test ne sera pas exécuté, généralement parce qu'une méthode de test est annotée avec org.junit.Ignore.

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 errorMessage)

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)

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

void testRunStarted (String name, int numTests)

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

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

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

void testRunStopped (long elapsedTime)

L’exécution du test des rapports s’est arrêtée avant la fin en raison d’une demande de l’utilisateur.

void testSkipped ( TestDescription test, SkipReason reason)

Appelé lorsqu'un test est ignoré et n'a pas été exécuté pour une raison habituellement inattendue.

void testStarted ( TestDescription test, long startTime)

Alternative à testStarted(com.android.tradefed.result.TestDescription) où nous spécifions également quand le test a été démarré, combiné avec ERROR(/#testEnded(com.android.tradefed.result.TestDescription,long,Map)) pour une mesure précise .

void testStarted ( TestDescription test)

Signale le début d’un scénario de test individuel.

Méthodes protégées

final void clearModuleLogFiles ()

Permet de nettoyer le fichier du module afin d'éviter de les transporter trop longtemps.

final void clearResultsForName (String testRunName)

Permet d'effacer les résultats pour un nom d'exécution donné.

void setIsAggregrateMetrics (boolean aggregate)

Activez l'option « Mesures agrégées »

Constructeurs publics

CollecteTestListener

public CollectingTestListener ()

Méthodes publiques

obtenirBuildInfo

public IBuildInfo getBuildInfo ()

Cette méthode est obsolète.
comptez sur IBuildInfo de getInvocationContext() .

Renvoie les informations de construction.

Retour
IBuildInfo

getCurrentRunResults

public TestRunResult getCurrentRunResults ()

Obtient les résultats de l’exécution de test en cours.

Notez que les résultats peuvent ne pas être complets. Il est recommandé de tester la valeur de TestRunResult.isRunComplete() et/ou (@link TestRunResult#isRunFailure()} selon le cas avant de traiter les résultats.

Retour
TestRunResult le TestRunResult représentant les données collectées lors du dernier test

getExpectedTests

public int getExpectedTests ()

Renvoie le nombre de tests attendus. Peut différer de getNumTotalTests() si certains tests ne sont pas exécutés.

Retour
int

getInvocationContext

public IInvocationContext getInvocationContext ()

Renvoie le contexte d'invocation signalé via invocationStarted(com.android.tradefed.invoker.IInvocationContext)

Retour
IInvocationContext

getMergedTestRunResults

public  getMergedTestRunResults ()

Renvoie la collection fusionnée de résultats pour toutes les exécutions sur différentes tentatives.

S’il existe plusieurs résultats, chaque exécution de test est fusionnée, le dernier résultat de test écrasant les résultats des exécutions précédentes. Les tests sont classés par numéro de tentative.

Les métriques pour la même tentative seront fusionnées en fonction de la préférence définie par aggregate-metrics . Les métriques finales seront les métriques de la dernière tentative.

Retour

getModuleContextForRunResult

public IInvocationContext getModuleContextForRunResult (String testRunName)

Renvoie le IInvocationContext du module associé aux résultats.

Paramètres
testRunName String : Le nom donné par { testRunStarted(String, int) .

Retour
IInvocationContext Le IInvocationContext du module pour un nom d'exécution de test donné null s'il n'y a aucun résultat pour ce nom.

getModuleLogFiles

public MultiMap<String, LogFile> getModuleLogFiles ()

Renvoie une copie de la carte contenant tous les fichiers journalisés associés au module

Retour
MultiMap <String, LogFile >

getNonAssociatedLogFiles

public MultiMap<String, LogFile> getNonAssociatedLogFiles ()

Renvoie une copie de la carte contenant tous les fichiers enregistrés non associés à un test ou à un module.

Retour
MultiMap <String, LogFile >

getNumAllFailedTestRuns

public int getNumAllFailedTestRuns ()

Renvoie le nombre total d'exécutions de tests en état d'échec

Retour
int

getNumAllFailedTests

public int getNumAllFailedTests ()

Renvoie le nombre total de tests en état d'échec (uniquement en échec, les échecs d'hypothèse ne sont pas pris en compte).

Retour
int

getNumTestsInState

public int getNumTestsInState (TestStatus status)

Renvoie le nombre de tests dans un état donné pour cette exécution.

Paramètres
status TestStatus

Retour
int

getNumTestsInState

public int getNumTestsInState (TestResult.TestStatus ddmlibStatus)

Pour la compatibilité avec les anciens types de statut

Paramètres
ddmlibStatus TestResult.TestStatus

Retour
int

getNumTotalTests

public int getNumTotalTests ()

Renvoie le nombre total de tests terminés pour toutes les exécutions.

Retour
int

getPrimaryBuildInfo

public IBuildInfo getPrimaryBuildInfo ()

Renvoie les informations de build principales signalées via invocationStarted(com.android.tradefed.invoker.IInvocationContext) . La build principale est la build renvoyée par le premier fournisseur de build de la configuration en cours d’exécution. Renvoie null s'il n'y a pas de contexte (pas de build pour tester le scénario).

Retour
IBuildInfo

getRunResults

public  getRunResults ()

Cette méthode est obsolète.
Utilisez getMergedTestRunResults()

Renvoie les résultats de toutes les exécutions de tests.

Retour

getTestRunAtAttempt

public TestRunResult getTestRunAtAttempt (String testRunName, 
                int attempt)

Renvoie le TestRunResult pour une seule tentative.

Paramètres
testRunName String : Le nom donné par { testRunStarted(String, int) .

attempt int : l'identifiant de la tentative.

Retour
TestRunResult Le TestRunResult pour le nom donné et l'identifiant de tentative ou null s'il n'existe pas.

getTestRunAttemptCount

public int getTestRunAttemptCount (String testRunName)

Renvoie le nombre de tentatives pour un nom d'exécution de test donné.

Paramètres
testRunName String : Le nom donné par { testRunStarted(String, int) .

Retour
int

getTestRunAttempts

public  getTestRunAttempts (String testRunName)

Obtient toutes les tentatives pour un TestRunResult d’une exécution de test donnée.

Paramètres
testRunName String : Le nom donné par { testRunStarted(String, int) .

Retour
Tous TestRunResult pour une exécution de test donnée, classés par tentatives.

getTestRunForAttempts

public  getTestRunForAttempts (int attempt)

Obtient tous les résultats pour une tentative donnée.

Paramètres
attempt int : la tentative pour laquelle nous voulons des résultats.

Retour
Tous TestRunResult pour une tentative donnée.

getTestRunNames

public  getTestRunNames ()

Renvoie tous les noms de toutes les exécutions de tests.

Ces tests peuvent avoir été exécutés plusieurs fois avec des tentatives différentes.

Retour

hasFailedTests

public boolean hasFailedTests ()

Renvoie si l'invocation a eu des tests ayant échoué ou des tests ayant échoué.

Retour
boolean

hasTestRunResultsForName

public boolean hasTestRunResultsForName (String testRunName)

Indique si un nom d'exécution de test donné a des résultats.

Paramètres
testRunName String : Le nom donné par { testRunStarted(String, int) .

Retour
boolean

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

invocationSautée

public void invocationSkipped (SkipReason reason)

Signale une invocation comme ignorée

Paramètres
reason SkipReason

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

est désactivé

public boolean isDisabled ()

Renvoie True si l'objet entier est désactivé (ignorer la configuration et le démontage). Faux sinon.

Retour
boolean

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.

setBuildInfo

public void setBuildInfo (IBuildInfo buildInfo)

Cette méthode est obsolète.
Plus nécessaire pour les tests.

Définissez les informations de construction. Ne doit être utilisé qu’à des fins de test.

Paramètres
buildInfo IBuildInfo

définirDésactiver

public void setDisable (boolean isDisabled)

Définit si l'objet doit être désactivé. Désactivé signifie que les étapes de configuration et de démontage doivent être ignorées. Peut être utilisé pour rendre un objet désactivé par défaut dans le constructeur par défaut.

Paramètres
isDisabled boolean : l'état dans lequel l'objet doit être mis.

setMergeStrategy

public void setMergeStrategy (MergeStrategy strategy)

Définit le MergeStrategy à utiliser lors de la fusion des résultats.

Paramètres
strategy MergeStrategy

testhypothèseéchec

public void testAssumptionFailure (TestDescription test, 
                String trace)

Appelé lorsqu'un test atomique signale qu'il suppose une condition fausse

Paramètres
test TestDescription : identifie le test

trace String : trace d'échec de la pile

testhypothèseéchec

public void testAssumptionFailure (TestDescription test, 
                FailureDescription failure)

Appelé lorsqu'un test atomique signale qu'il suppose une condition fausse

Paramètres
test TestDescription : identifie le test

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

testFin

public void testEnded (TestDescription test, 
                long endTime, 
                 testMetrics)

Alternative à ERROR(/#testEnded(com.android.tradefed.result.TestDescription,Map)) où nous pouvons spécifier directement l'heure de fin. Combinez avec testStarted(com.android.tradefed.result.TestDescription, long) pour une mesure précise.

Paramètres
test TestDescription : identifie le test

endTime long : l'heure de fin du test, mesurée via System.currentTimeMillis()

testMetrics : une ERROR(/Map) des métriques émises

testFin

public void testEnded (TestDescription test, 
                 testMetrics)

Signale la fin de l’exécution d’un scénario de test individuel.

Si testFailed(TestDescription, FailureDescription) n’a pas été invoqué, ce test a réussi. Renvoie également toutes les métriques clé/valeur qui peuvent avoir été émises lors de l'exécution du scénario de test.

Paramètres
test TestDescription : identifie le test

testMetrics : une ERROR(/Map) des métriques émises

test échoué

public void testFailed (TestDescription test, 
                FailureDescription failure)

Signale l’échec d’un scénario de test individuel.

Sera appelé entre testStarted et testEnded.

Paramètres
test TestDescription : identifie le test

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

test échoué

public void testFailed (TestDescription test, 
                String trace)

Signale l’échec d’un scénario de test individuel.

Sera appelé entre testStarted et testEnded.

Paramètres
test TestDescription : identifie le test

trace String : trace d'échec de la pile

testIgnoré

public void testIgnored (TestDescription test)

Appelé lorsqu'un test ne sera pas exécuté, généralement parce qu'une méthode de test est annotée avec org.junit.Ignore.

Paramètres
test TestDescription : identifie le test

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 errorMessage)

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

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

testRunStarted

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

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.

testRunStarted

public void testRunStarted (String name, 
                int numTests)

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

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

testRunStopped

public void testRunStopped (long elapsedTime)

L’exécution du test des rapports s’est arrêtée avant la fin en raison d’une demande de l’utilisateur.

TODO : actuellement inutilisé, pensez à le supprimer

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

testSauté

public void testSkipped (TestDescription test, 
                SkipReason reason)

Appelé lorsqu'un test est ignoré et n'a pas été exécuté pour une raison habituellement inattendue. Ces tests seront tentés à nouveau pour tenter d'obtenir une exécution correcte.

Paramètres
test TestDescription : identifie le test

reason SkipReason : SkipReason

testDémarré

public void testStarted (TestDescription test, 
                long startTime)

Alternative à testStarted(com.android.tradefed.result.TestDescription) où nous spécifions également quand le test a été démarré, combiné avec ERROR(/#testEnded(com.android.tradefed.result.TestDescription,long,Map)) pour une mesure précise .

Paramètres
test TestDescription : identifie le test

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

testDémarré

public void testStarted (TestDescription test)

Signale le début d’un scénario de test individuel. L'interface plus ancienne doit utiliser testStarted(com.android.tradefed.result.TestDescription) autant que possible.

Paramètres
test TestDescription : identifie le test

Méthodes protégées

clearModuleLogFiles

protected final void clearModuleLogFiles ()

Permet de nettoyer le fichier du module afin d'éviter de les transporter trop longtemps.

clearResultsForName

protected final void clearResultsForName (String testRunName)

Permet d'effacer les résultats pour un nom d'exécution donné. Ne doit être utilisé que dans certains cas comme l'agrégateur de résultats.

Paramètres
testRunName String

setIsAggregrateMetrics

protected void setIsAggregrateMetrics (boolean aggregate)

Activez l'option « Mesures agrégées »

Paramètres
aggregate boolean