CollectingTestListener

public class CollectingTestListener
extends Object implements IDisableable, ILogSaverListener, ITestInvocationListener

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


Un ITestInvocationListener qui collecte 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. utilisez l'IBuildInfo de getInvocationContext().

TestRunResult getCurrentRunResults()

Récupère 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'appel signalé via invocationStarted(com.android.tradefed.invoker.IInvocationContext).

getMergedTestRunResults()

Renvoyez la collection de résultats fusionnée 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 journalisés qui ne sont pas associés à une exécution de test ou à un module.

int getNumAllFailedTestRuns()

Renvoie le nombre total d'exécutions de test dans un état d'échec

int getNumAllFailedTests()

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

int getNumTestsInState(TestStatus status)

Renvoie le nombre de tests dans un é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 terminés pour toutes les exécutions.

IBuildInfo getPrimaryBuildInfo()

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

getRunResults()

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

TestRunResult getTestRunAtAttempt(String testRunName, int attempt)

Renvoyez TestRunResult pour une seule tentative.

int getTestRunAttemptCount(String testRunName)

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

getTestRunAttempts(String testRunName)

Récupère 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 test.

boolean hasFailedTests()

Indique si l'appel a généré des tests échoués ou des tests d'hypothèse échoués.

boolean hasTestRunResultsForName(String testRunName)

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

void invocationEnded(long elapsedTime)

Indique que l'appel a pris fin, 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 du test.

boolean isDisabled()

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

void logAssociation(String dataName, LogFile logFile)

Dans certains cas, le journal doit être fortement associé à un 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. Ce n'est plus nécessaire pour les tests.

void setDisable(boolean isDisabled)

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

void setMergeStrategy(MergeStrategy strategy)

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

void testAssumptionFailure(TestDescription test, String trace)

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

void testAssumptionFailure(TestDescription test, FailureDescription failure)

Appelé lorsqu'un test atomique indique qu'il suppose une condition 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)

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

void testFailed(TestDescription test, String trace)

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

void testIgnored(TestDescription test)

Appelé lorsqu'un test n'est 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)

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

void testRunEnded(long elapsedTime, runMetrics)

Signale la fin de l'exécution du test.

void testRunFailed(FailureDescription failure)

L'exécution du test des rapports a échoué en raison d'un échec décrit par FailureDescription.

void testRunFailed(String errorMessage)

L'exécution du test des rapports a échoué en raison d'une erreur fatale.

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

Indique le début d'une exécution de test.

void testRunStarted(String name, int numTests)

Indique le début d'une exécution de test.

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

Indique 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 d'être terminée en raison d'une requête 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 inhabituelle.

void testStarted(TestDescription test, long startTime)

Alternative à testStarted(com.android.tradefed.result.TestDescription), où nous spécifions également le moment où le test a commencé, combiné à 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 de module afin d'éviter de les conserver trop longtemps.

final void clearResultsForName(String testRunName)

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

void setIsAggregrateMetrics(boolean aggregate)

Activer/Désactiver l'option "Métriques agrégées"

Constructeurs publics

Écouteur du test de collecte

public CollectingTestListener ()

Méthodes publiques

getBuildInfo

public IBuildInfo getBuildInfo ()

Cette méthode est obsolète.
dépend de IBuildInfo de getInvocationContext().

Renvoie les informations de compilation.

Renvoie
IBuildInfo

getCurrentRunResults

public TestRunResult getCurrentRunResults ()

Récupère les résultats de l'exécution de 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()} selon le cas 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 s'exécutent pas.

Renvoie
int

getInvocationContext

public IInvocationContext getInvocationContext ()

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

Renvoie
IInvocationContext

getMergedTestRunResults

public  getMergedTestRunResults ()

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

S'il existe plusieurs résultats, chaque exécution de test est fusionnée, et le dernier résultat écrase les résultats des exécutions précédentes. Les exécutions de test sont trié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 l'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 s'il n'y a pas de résultats 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.

Renvoie
MultiMap<String, LogFile>

getNonAssociatedLogFiles

public MultiMap<String, LogFile> getNonAssociatedLogFiles ()

Renvoie une copie de la carte contenant tout le fichier journal qui n'est pas associé à une exécution de test ni à un module.

Renvoie
MultiMap<String, LogFile>

getNumAllFailedTestRuns

public int getNumAllFailedTestRuns ()

Renvoie le nombre total d'exécutions de test dans un état d'échec

Renvoie
int

getNumAllFailedTests

public int getNumAllFailedTests ()

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

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 terminés pour toutes les exécutions.

Renvoie
int

getPrimaryBuildInfo

public IBuildInfo getPrimaryBuildInfo ()

Renvoyez les informations sur le build principal signalées via invocationStarted(com.android.tradefed.invoker.IInvocationContext). La compilation principale est la compilation 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 (pas de compilation pour le scénario de test).

Renvoie
IBuildInfo

getRunResults

public  getRunResults ()

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

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

Renvoie

getTestRunAtTentative

public TestRunResult getTestRunAtAttempt (String testRunName, 
                int attempt)

Renvoyez TestRunResult pour une seule tentative.

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

attempt int: ID de l'essai.

Renvoie
TestRunResult TestRunResult pour le nom et l'ID de tentative donnés, ou null s'ils n'existent 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)

Récupère 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 d'une exécution de test donnée, triés par nombre de 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 test.

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

Renvoie

hasFailedTests

public boolean hasFailedTests ()

Indique si l'appel a généré des tests échoués ou des tests d'hypothèse échoués.

Renvoie
boolean

hasTestRunResultsForName

public boolean hasTestRunResultsForName (String testRunName)

Indique si un nom d'exécution de test donné renvoie 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 a pris fin, que ce soit avec succès ou en raison d'une condition d'erreur.

Appelé automatiquement par le framework TradeFederation.

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

invocationFailed

public void invocationFailed (Throwable cause)

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

Sera automatiquement appelée par le framework TradeFederation.

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

invocationSkipped

public void invocationSkipped (SkipReason reason)

Signale un appel comme ignoré

Paramètres
reason SkipReason

appel démarré

public void invocationStarted (IInvocationContext context)

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

Sera automatiquement appelée par le framework TradeFederation. Les rapporteurs doivent remplacer cette méthode pour prendre en charge les rapports 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é (ignorer la configuration et la suppression). Sinon, cette valeur est "false".

Renvoie
boolean

logAssociation

public void logAssociation (String dataName, 
                LogFile logFile)

Dans certains cas, le journal doit être fortement associé à un scénario 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. Ainsi, ce rappel permet de fournir explicitement une association forte.

Paramètres
dataName String: nom des données

logFile LogFile: LogFile qui a été consigné précédemment et 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éfinit les informations de compilation. Ne doit être utilisé que pour les tests.

Paramètres
buildInfo IBuildInfo

setDisable

public void setDisable (boolean isDisabled)

Détermine 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 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 l'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 indique qu'il suppose une condition fausse

Paramètres
test TestDescription: identifie le test

trace String: trace de la pile de l'échec

testAssumptionFailure

public void testAssumptionFailure (TestDescription test, 
                FailureDescription failure)

Appelé lorsqu'un test atomique indique qu'il suppose une condition 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 des mesures précises.

Paramètres
test TestDescription: identifie le test

endTime long: heure de fin du test, 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 est 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)

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

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)

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

Appelé entre testStarted et testEnded.

Paramètres
test TestDescription: identifie le test

trace String: trace de la pile de l'é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 ()

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

testModuleStarted

public void testModuleStarted (IInvocationContext moduleContext)

Indique le début d'un module en cours d'exécution. 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 exécuteurs basés sur une suite.

Paramètres
moduleContext IInvocationContext : IInvocationContext du module.

testRunEnded

public void testRunEnded (long elapsedTime, 
                 runMetrics)

Signale la fin de l'exécution du test.

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

runMetrics : paires clé-valeur signalées à la fin d'une exécution de test

testRunFailed

public void testRunFailed (FailureDescription failure)

L'exécution du test des rapports a échoué 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 a échoué 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 exécution de test.

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

numTests int: nombre total de tests en cours d'exécution

attemptNumber int: numéro de commande, identifiant les différentes tentatives du même runName exécutées plusieurs fois. Le nombre d'essais est indexé à 0 et doit augmenter à chaque exécution. Par exemple, si un test est réessayé trois fois, il doit comporter quatre exécutions au total sous le même nom d'exécution, et le nombre d'essais doit être compris entre 0 et 3.

testRunStarted

public void testRunStarted (String name, 
                int numTests)

Indique le début d'une exécution de test.

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

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

testRunStarted

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

Indique le début d'une exécution de test.

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

numTests int: nombre total de tests en cours d'exécution

attemptNumber int: numéro de commande, identifiant les différentes tentatives du même runName exécutées plusieurs fois. Le nombre d'essais est indexé à 0 et doit augmenter à chaque nouvelle exécution. Par exemple, si un test est réessayé trois fois, il doit comporter quatre exécutions au total sous le même nom d'exécution, et le nombre d'essais doit être compris entre 0 et 3.

startTime long: heure de début 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 d'être terminée en raison d'une requête de l'utilisateur.

TODO: currently unused, consider removing

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

Test ignoré

public void testSkipped (TestDescription test, 
                SkipReason reason)

Appelé lorsqu'un test est ignoré et n'a pas été exécuté pour une raison inhabituelle. Nous allons tenter de réexécuter ces tests pour obtenir une exécution correcte.

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 le moment où le test a commencé, combiné à ERROR(/#testEnded(com.android.tradefed.result.TestDescription,long,Map)) pour une mesure précise.

Paramètres
test TestDescription: identifie le test

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

testStarted

public void testStarted (TestDescription test)

Indique le début d'un scénario de test individuel. Interface plus ancienne. Utilisez testStarted(com.android.tradefed.result.TestDescription) dans la mesure du possible.

Paramètres
test TestDescription: identifie le test.

Méthodes protégées

clearModuleLogFiles

protected final void clearModuleLogFiles ()

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

clearResultsForName

protected final void clearResultsForName (String testRunName)

Permet d'effacer les résultats pour un nom d'exécution donné. À n'utiliser que dans certains cas, comme l'agrégateur de résultats.

Paramètres
testRunName String

setIsAggregrateMetrics

protected void setIsAggregrateMetrics (boolean aggregate)

Activer/Désactiver l'option "Métriques agrégées"

Paramètres
aggregate boolean