CollectingTestListener

public class CollectingTestListener
extends Object implements IDisableable, ILogSaverListener, ITestInvocationListener

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. s'appuyer sur IBuildInfo de getInvocationContext().

TestRunResult getCurrentRunResults()

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

int getExpectedTests()

Renvoie le nombre de tests attendus.

IInvocationContext getInvocationContext()

Renvoie le contexte d'invocation qui a été 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 journaux associés au module.

MultiMap<String, LogFile> getNonAssociatedLogFiles()

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

int getNumAllFailedTestRuns()

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

int getNumAllFailedTests()

Renvoie le nombre total de tests en état d'échec (seuls les échecs sont comptabilisés, pas les échecs d'hypothèse).

int getNumTestsInState(TestStatus status)

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

int getNumTestsInState(TestResult.TestStatus ddmlibStatus)

Pour assurer la compatibilité avec l'ancien type d'état

int getNumTotalTests()

Renvoie le nombre total de tests réussis pour toutes les exécutions.

IBuildInfo getPrimaryBuildInfo()

Renvoie les informations principales sur la version qui ont été signalées via invocationStarted(com.android.tradefed.invoker.IInvocationContext).

getRunResults()

Cette méthode est obsolète. Utiliser 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)

Récupère tous les résultats d'une tentative donnée.

getTestRunNames()

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

boolean hasFailedTests()

Renvoie si l'appel a échoué ou si des tests d'hypothèse ont échoué.

boolean hasTestRunResultsForName(String testRunName)

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

void invocationEnded(long elapsedTime)

Indique 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 une invocation incomplète en raison d'une condition d'erreur.

void invocationSkipped(SkipReason reason)

Signale une invocation comme ignorée

void invocationStarted(IInvocationContext context)

Indique le début de l'appel de test.

boolean isDisabled()

Renvoie la valeur "True" si l'objet entier est désactivé (ignore à la fois la configuration et la suppression).

void logAssociation(String dataName, LogFile logFile)

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

void setBuildInfo(IBuildInfo buildInfo)

Cette méthode est obsolète. N'est 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 qui est fausse

void testAssumptionFailure(TestDescription test, FailureDescription failure)

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

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.

void testEnded(TestDescription test, testMetrics)

Indique la fin de l'exécution d'un cas de test individuel.

void testFailed(TestDescription test, FailureDescription failure)

Signalement de l'échec d'un cas de test individuel.

void testFailed(TestDescription test, String trace)

Signalement de l'échec d'un cas 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()

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

void testModuleStarted(IInvocationContext moduleContext)

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

void testRunEnded(long elapsedTime, runMetrics)

Rapports de fin de série de tests.

void testRunFailed(FailureDescription failure)

L'exécution du test des rapports n'a pas pu être effectuée en raison d'un échec décrit par FailureDescription.

void testRunFailed(String errorMessage)

L'exécution du test des rapports n'a pas pu être effectuée en raison d'une erreur fatale.

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

Indique le début d'une série de tests.

void testRunStarted(String name, int numTests)

Indique le début d'une série de tests.

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

Indique le début d'une série de tests.

void testRunStopped(long elapsedTime)

L'exécution du test des rapports a été arrêtée avant la fin à la demande d'un utilisateur.

void testSkipped(TestDescription test, SkipReason reason)

Appelée lorsqu'un test est ignoré et ne s'est pas exécuté pour une raison généralement inattendue.

void testStarted(TestDescription test, long startTime)

Alternative à testStarted(com.android.tradefed.result.TestDescription) où nous spécifions également la date de début du test, combinée à ERROR(/#testEnded(com.android.tradefed.result.TestDescription,long,Map)) pour une mesure précise.

void testStarted(TestDescription test)

Indique 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 pour éviter de le conserver trop longtemps.

final void clearResultsForName(String testRunName)

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

final void clearTestRunResults()

Permet d'effacer tous les résultats des tests afin d'éviter de les conserver trop longtemps.

void setIsAggregrateMetrics(boolean aggregate)

Activez l'option "Agrégation des métriques".

Constructeurs publics

CollectingTestListener

public CollectingTestListener ()

Méthodes publiques

getBuildInfo

public IBuildInfo getBuildInfo ()

Cette méthode est obsolète.
s'appuient sur IBuildInfo de getInvocationContext().

Renvoie les informations sur la build.

Renvoie
IBuildInfo

getCurrentRunResults

public TestRunResult getCurrentRunResults ()

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

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

Renvoie
TestRunResult TestRunResult représentant les données collectées lors de la dernière exécution du test

getExpectedTests

public int getExpectedTests ()

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

Renvoie
int

getInvocationContext

public IInvocationContext getInvocationContext ()

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

Renvoie
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 séries de tests sont classées par numéro de tentative.

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

Renvoie

getModuleContextForRunResult

public IInvocationContext getModuleContextForRunResult (String testRunName)

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

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

Renvoie
IInvocationContext Le IInvocationContext du module pour un nom d'exécution de test donné null si aucun résultat n'est disponible pour ce nom.

getModuleLogFiles

public MultiMap<String, LogFile> getModuleLogFiles ()

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

Renvoie
MultiMap<String, LogFile>

getNonAssociatedLogFiles

public MultiMap<String, LogFile> getNonAssociatedLogFiles ()

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

Renvoie
MultiMap<String, LogFile>

getNumAllFailedTestRuns

public int getNumAllFailedTestRuns ()

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

Renvoie
int

getNumAllFailedTests

public int getNumAllFailedTests ()

Renvoie le nombre total de tests en état d'échec (seuls les échecs sont comptabilisés, pas les échecs d'hypothèse).

Renvoie
int

getNumTestsInState

public int getNumTestsInState (TestStatus status)

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

Paramètres
status TestStatus

Renvoie
int

getNumTestsInState

public int getNumTestsInState (TestResult.TestStatus ddmlibStatus)

Pour assurer la compatibilité avec l'ancien type d'état

Paramètres
ddmlibStatus TestResult.TestStatus

Renvoie
int

getNumTotalTests

public int getNumTotalTests ()

Renvoie le nombre total de tests réussis pour toutes les exécutions.

Renvoie
int

getPrimaryBuildInfo

public IBuildInfo getPrimaryBuildInfo ()

Renvoie les informations principales sur la version qui ont été signalées via invocationStarted(com.android.tradefed.invoker.IInvocationContext). La compilation principale est celle renvoyée par le premier fournisseur de compilation de la configuration en cours d'exécution. Renvoie la valeur "null" s'il n'y a pas de contexte (aucune compilation pour le scénario de test).

Renvoie
IBuildInfo

getRunResults

public  getRunResults ()

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

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

Renvoie

getTestRunAtAttempt

public TestRunResult getTestRunAtAttempt (String testRunName, 
                int attempt)

Renvoie le TestRunResult pour une seule tentative.

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

attempt int : ID de la tentative.

Renvoie
TestRunResult Le TestRunResult pour le nom et l'ID de tentative donnés, 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 : nom donné par {testRunStarted(String, int).

Renvoie
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 : nom donné par {testRunStarted(String, int).

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

getTestRunForAttempts

public  getTestRunForAttempts (int attempt)

Récupère tous les résultats d'une tentative donnée.

Paramètres
attempt int : tentative pour laquelle nous souhaitons obtenir des résultats.

Renvoie
Tous les TestRunResult pour une tentative donnée.

getTestRunNames

public  getTestRunNames ()

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

Ces exécutions de tests peuvent avoir été exécutées plusieurs fois avec différentes tentatives.

Renvoie

hasFailedTests

public boolean hasFailedTests ()

Renvoie si l'appel a échoué ou si des tests d'hypothèse ont échoué.

Renvoie
boolean

hasTestRunResultsForName

public boolean hasTestRunResultsForName (String testRunName)

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

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

Renvoie
boolean

invocationEnded

public void invocationEnded (long elapsedTime)

Indique 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 : temps écoulé de l'appel en ms

invocationFailed

public void invocationFailed (Throwable cause)

Signale une invocation incomplète en raison d'une condition d'erreur.

Sera automatiquement appelé par le framework TradeFederation.

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

invocationSkipped

public void invocationSkipped (SkipReason reason)

Signale une invocation comme ignorée

Paramètres
reason SkipReason

invocationStarted

public void invocationStarted (IInvocationContext context)

Indique le début de l'appel de test.

Sera automatiquement appelé par le framework TradeFederation. Les reporters doivent remplacer cette méthode pour prendre en charge le reporting sur plusieurs appareils.

Paramètres
context IInvocationContext : informations sur l'appel

isDisabled

public boolean isDisabled ()

Renvoie la valeur "True" si l'objet entier est désactivé (ignore à la fois la configuration et la suppression). Sinon renvoie "false".

Renvoie
boolean

logAssociation

public void logAssociation (String dataName, 
                LogFile logFile)

Dans certains cas, le journal doit être fortement associé à des cas de test, mais il n'est pas possible de le faire sur le rappel testLogSaved(String, com.android.tradefed.result.LogDataType, com.android.tradefed.result.InputStreamSource, com.android.tradefed.result.LogFile) direct. Ce rappel permet donc de fournir explicitement une association forte.

Paramètres
dataName String : nom des données

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

setBuildInfo

public void setBuildInfo (IBuildInfo buildInfo)

Cette méthode est obsolète.
N'est plus nécessaire pour les tests.

Définissez les informations de compilation. Ne doit être utilisé que pour les tests.

Paramètres
buildInfo IBuildInfo

setDisable

public void setDisable (boolean isDisabled)

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

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

setMergeStrategy

public void setMergeStrategy (MergeStrategy strategy)

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

Paramètres
strategy MergeStrategy

testAssumptionFailure

public void testAssumptionFailure (TestDescription test, 
                String trace)

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

Paramètres
test TestDescription : identifie le test

trace String : trace de la pile d'échec

testAssumptionFailure

public void testAssumptionFailure (TestDescription test, 
                FailureDescription failure)

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

Paramètres
test TestDescription : identifie le test

failure FailureDescription : FailureDescription décrivant l'échec et son contexte.

testEnded

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-le avec testStarted(com.android.tradefed.result.TestDescription, long) pour obtenir une mesure précise.

Paramètres
test TestDescription : identifie le test

endTime long : heure à laquelle le test s'est terminé, mesurée via System.currentTimeMillis()

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

testEnded

public void testEnded (TestDescription test, 
                 testMetrics)

Indique la fin de l'exécution d'un cas de test individuel.

Si testFailed(TestDescription, FailureDescription) n'a pas été appelé, ce test a réussi. Renvoie également toutes les métriques clé/valeur qui ont pu être émises lors de l'exécution du cas de test.

Paramètres
test TestDescription : identifie le test

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

testFailed

public void testFailed (TestDescription test, 
                FailureDescription failure)

Signalement de l'échec d'un cas de test individuel.

Sera appelé entre testStarted et testEnded.

Paramètres
test TestDescription : identifie le test

failure FailureDescription : FailureDescription décrivant l'échec et son contexte.

testFailed

public void testFailed (TestDescription test, 
                String trace)

Signalement de l'échec d'un cas de test individuel.

Sera appelé entre testStarted et testEnded.

Paramètres
test TestDescription : identifie le test

trace String : trace de la pile d'échec

testIgnored

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

testModuleEnded

public void testModuleEnded ()

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

testModuleStarted

public void testModuleStarted (IInvocationContext moduleContext)

Indique 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 : les runners basés sur une suite.

Paramètres
moduleContext IInvocationContext : IInvocationContext du module.

testRunEnded

public void testRunEnded (long elapsedTime, 
                 runMetrics)

Rapports de fin de série de tests.

Paramètres
elapsedTime long : temps écoulé indiqué par l'appareil, en millisecondes

runMetrics  : paires clé/valeur signalées à la fin d'une série de tests

testRunFailed

public void testRunFailed (FailureDescription failure)

L'exécution du test des rapports n'a pas pu être effectuée en raison d'un échec décrit par FailureDescription.

Paramètres
failure FailureDescription : FailureDescription décrivant l'échec et son contexte.

testRunFailed

public void testRunFailed (String errorMessage)

L'exécution du test des rapports n'a pas pu être effectuée 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)

Indique le début d'une série de tests.

Paramètres
name String : nom de l'exécution du test

numTests int : nombre total de tests dans l'exécution du test

attemptNumber int : numéro de commande, identifiant les différentes tentatives du même runName qui sont exécutées plusieurs fois. attemptNumber est indexé sur 0 et doit être incrémenté à chaque nouvelle exécution. Par exemple, si un test est retenté de manière précise trois fois, il doit comporter quatre exécutions au total sous le même runName, et attemptNumber doit être compris entre 0 et 3.

testRunStarted

public void testRunStarted (String name, 
                int numTests)

Indique le début d'une série de tests.

Paramètres
name String : nom de l'exécution du test

numTests int : nombre total de tests dans l'exécution du test

testRunStarted

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

Indique le début d'une série de tests.

Paramètres
name String : nom de l'exécution du test

numTests int : nombre total de tests dans l'exécution du test

attemptNumber int : numéro de commande, identifiant les différentes tentatives du même runName qui sont exécutées plusieurs fois. Le numéro de tentative est indexé sur 0 et doit être incrémenté à chaque nouvelle exécution. Par exemple, si un test est retenté de manière granulaire trois fois, il doit comporter quatre exécutions au total sous le même runName, et le numéro de tentative est compris entre 0 et 3.

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

testRunStopped

public void testRunStopped (long elapsedTime)

L'exécution du test des rapports a été arrêtée avant la fin à la demande d'un utilisateur.

TODO : actuellement inutilisé, pensez à le supprimer

Paramètres
elapsedTime long : temps écoulé indiqué par l'appareil, en millisecondes

testSkipped

public void testSkipped (TestDescription test, 
                SkipReason reason)

Appelée lorsqu'un test est ignoré et ne s'est pas exécuté pour une raison généralement inattendue. Nous allons essayer de relancer ces tests pour tenter de les exécuter correctement.

Paramètres
test TestDescription : identifie le test

reason SkipReason : SkipReason

testStarted

public void testStarted (TestDescription test, 
                long startTime)

Alternative à testStarted(com.android.tradefed.result.TestDescription) où nous spécifions également la date de début du test, combinée à ERROR(/#testEnded(com.android.tradefed.result.TestDescription,long,Map)) pour une mesure précise.

Paramètres
test TestDescription : identifie le test

startTime long : heure à laquelle le test a commencé, mesurée via System.currentTimeMillis()

testStarted

public void testStarted (TestDescription test)

Indique le début d'un scénario de test individuel. Ancienne interface. Utilisez 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 pour éviter de le conserver 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 pour l'agrégateur de résultats.

Paramètres
testRunName String

clearTestRunResults

protected final void clearTestRunResults ()

Permet d'effacer tous les résultats des tests afin d'éviter de les conserver trop longtemps.

setIsAggregrateMetrics

protected void setIsAggregrateMetrics (boolean aggregate)

Activez l'option "Agrégation des métriques".

Paramètres
aggregate boolean