CollectingTestListener

public class CollectingTestListener
extends Object implements ITestInvocationListener , ILogSaverListener

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


Un ITestInvocationListener qui collectera tous les résultats de test.

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.

Sommaire

Constructeurs publics

CollectingTestListener ()

Méthodes publiques

IBuildInfo getBuildInfo ()

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

TestRunResult getCurrentRunResults ()

Obtient les résultats du 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 des résultats pour toutes les exécutions à travers différentes tentatives.

IInvocationContext getModuleContextForRunResult (String testRunName)

Retourne 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 non associés à une exécution de test ou à un module.

int getNumAllFailedTestRuns ()

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

int getNumAllFailedTests ()

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

int getNumTestsInState (TestResult.TestStatus status)

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

int getNumTotalTests ()

Renvoie le nombre total de tests complets 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 pour toutes les exécutions de test.

boolean hasFailedTests ()

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

boolean hasTestRunResultsForName (String testRunName)

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

void invocationEnded (long elapsedTime)

Signale que l'invocation s'est terminée, 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 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 la possibilité de le faire sur le direct testLogSaved(String, com.android.tradefed.result.LogDataType, com.android.tradefed.result.InputStreamSource, com.android.tradefed.result.LogFile) rappel n'est pas possible.

void setBuildInfo ( IBuildInfo buildInfo)

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

void setMergeStrategy ( MergeStrategy strategy)

Définit la 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 d'un module en cours d'exécution.

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

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

void testRunFailed ( FailureDescription failure)

L'exécution du test de 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 testStarted ( TestDescription test, long startTime)

Alternative à testStarted(com.android.tradefed.result.TestDescription) où nous spécifions également quand le test a été lancé, 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)

Basculer l'option "métriques agrégées"

Constructeurs publics

CollectingTestListener

public CollectingTestListener ()

Méthodes publiques

getBuildInfo

public IBuildInfo getBuildInfo ()

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

Renvoie les informations de construction.

Retour
IBuildInfo

getCurrentRunResults

public TestRunResult getCurrentRunResults ()

Obtient les résultats du 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 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 n'ont pas été 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 des résultats pour toutes les exécutions à travers différentes tentatives.

S'il y a plusieurs résultats, chaque exécution de test est fusionnée, le dernier résultat de test écrasant les résultats de test des exécutions précédentes. Les exécutions de test sont classées 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)

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

getNonAssociatedLogFilesgetNonAssociatedLogFiles

public MultiMap<String, LogFile> getNonAssociatedLogFiles ()

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

Retour
MultiMap <String, LogFile >

getNumAllFailedTestRuns

public int getNumAllFailedTestRuns ()

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

Retour
int

getNumAllFailedTests

public int getNumAllFailedTests ()

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

Retour
int

getNumTestsInState

public int getNumTestsInState (TestResult.TestStatus status)

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

Paramètres
status TestResult.TestStatus

Retour
int

getNumTotalTests

public int getNumTotalTests ()

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

Retour
int

getPrimaryBuildInfogetPrimaryBuildInfo

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 génération de cas de test).

Retour
IBuildInfo

getRunResults

public  getRunResults ()

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

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

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 TestRunResult pour le nom donné et l'ID 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 les 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 pour toutes les exécutions de test.

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

Retour

hasFailedTests

public boolean hasFailedTests ()

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

Retour
boolean

hasTestRunResultsForName

public boolean hasTestRunResultsForName (String testRunName)

Renvoie 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

invocationEnded

public void invocationEnded (long elapsedTime)

Signale que l'invocation s'est terminée, 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

invocationFailed

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

invocationStarted

public void invocationStarted (IInvocationContext context)

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

Sera automatiquement appelé 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'invocation

logAssociation

public void logAssociation (String dataName, 
                LogFile logFile)

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

Paramètres
dataName String : Le nom des données

logFile LogFile : le LogFile qui a été enregistré auparavant et qui doit être associé au cas 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

setMergeStrategy

public void setMergeStrategy (MergeStrategy strategy)

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

Paramètres
strategy MergeStrategy

testAssumptionFailuretestAssumptionFailure

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 de pile de l'échec

testAssumptionFailuretestAssumptionFailure

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

Paramètres
test TestDescription : identifie le test

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

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

testEnded

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é appelé, ce test a réussi. Renvoie également toute métrique clé/valeur qui peut avoir été émise lors de l'exécution du cas 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 l'échec 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 de 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)

Signale 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 la suite.

Paramètres
moduleContext IInvocationContext : le IInvocationContext du module.

testRunEnded

public void testRunEnded (long elapsedTime, 
                 runMetrics)

Signale la fin de l'exécution 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 : temps écoulé signalé par l'appareil, en millisecondes

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

testRunFailed

public void testRunFailed (FailureDescription failure)

L'exécution du test de rapports n'a pas abouti 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 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 de l'exécution du test

numTests int : nombre total de tests en cours de test

attemptNumber int : numéro de commande, identifiant les différentes tentatives du même runName qui s'exécutent plusieurs fois. Le tryNumber est indexé à 0 et doit s'incrémenter à chaque fois qu'une nouvelle exécution se produit. Par exemple, un test est réessayé 3 fois de manière granulaire, il doit avoir 4 exécutions au total sous le même nom d'exécution et le nombre de tentatives 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 de l'exécution 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 de l'exécution du test

numTests int : nombre total de tests en cours de test

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

startTime long : l'heure à laquelle l'exécution a commencé, 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 à supprimer

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

testStarted

public void testStarted (TestDescription test, 
                long startTime)

Alternative à testStarted(com.android.tradefed.result.TestDescription) où nous spécifions également quand le test a été lancé, 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 à laquelle le test a commencé, mesurée via System.currentTimeMillis()

testStarted

public void testStarted (TestDescription test)

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

Paramètres
test TestDescription : identifie le test

Méthodes protégées

clearModuleLogFilesclearModuleLogFiles

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

setIsAggrerateMetrics

protected void setIsAggregrateMetrics (boolean aggregate)

Basculer l'option "métriques agrégées"

Paramètres
aggregate boolean