BasePostProcessor

public abstract class BasePostProcessor
extends Object implements IPostProcessor

java.lang.Object
   ↳ com.android.tradefed.postprocessor.BasePostProcessor


Le IPostProcessor de base que chaque implémentation doit étendre. Assurez-vous que les méthodes de post-traitement sont appelées avant les rapporteurs de résultats finaux.

Résumé

Constructeurs publics

BasePostProcessor()

Méthodes publiques

final ITestInvocationListener init(ITestInvocationListener listener)

Étape d'initialisation du post-processeur.

final 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.

final void invocationFailed(FailureDescription failure)

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

final 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

final void invocationStarted(IInvocationContext context)

Écouteurs d'appel pour le transfert

final boolean isDisabled()

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

final 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.

Met à jour l'association des journaux aux tests.

processAllTestMetricsAndLogs(ListMultimap<String, MetricMeasurement.Metric> allTestMetrics, allTestLogs)

Implémentez cette méthode pour agréger les métriques et les journaux de tous les tests.

abstract processRunMetricsAndLogs( rawMetrics, runLogs)

Implémentez cette méthode pour générer un ensemble de nouvelles métriques à partir des métriques existantes et journaux.

processTestMetricsAndLogs(TestDescription testDescription, testMetrics, testLogs)

Implémentez cette méthode pour post-traiter les métriques et les journaux de chaque test.

final void setLogSaver(ILogSaver logSaver)

Définissez ILogSaver pour permettre à l'outil d'implémentation d'enregistrer des fichiers.

void setUp()

Remplacez cette méthode dans les post-processeurs enfants pour s'initialiser avant l'exécution du test.

final void testAssumptionFailure(TestDescription test, String trace)

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

final void testAssumptionFailure(TestDescription test, FailureDescription failure)

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

final 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.

final void testEnded(TestDescription test, testMetrics)

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

final void testFailed(TestDescription test, FailureDescription failure)

Indique l'échec d'un scénario de test individuel.

final void testFailed(TestDescription test, String trace)

Indique l'échec d'un scénario de test individuel.

final 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.

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

Utilisez cette méthode pour consigner un fichier à partir de l'implémentation de PostProcessor.

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

Appelé lorsque le journal de test est enregistré.

final void testModuleEnded()

Indique la fin d'une exécution de module.

final void testModuleStarted(IInvocationContext moduleContext)

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

final void testRunEnded(long elapsedTime, runMetrics)

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

final void testRunFailed(FailureDescription failure)

Échec de l'exécution du test des rapports en raison d'un échec décrit par FailureDescription.

final void testRunFailed(String errorMessage)

Échec de l'exécution du test des rapports en raison d'une erreur fatale.

final void testRunStarted(String runName, int testCount, int attemptNumber)

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

final void testRunStarted(String runName, int testCount)

Rappels d'exécution des tests

final void testRunStarted(String runName, int testCount, int attemptNumber, long startTime)

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

final 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.

final void testSkipped(TestDescription test, SkipReason reason)

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

final 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.

final void testStarted(TestDescription test)

Rappels des scénarios de test

Méthodes protégées

void cleanUp()
MetricMeasurement.DataType getMetricType()

Ignorez cette méthode pour modifier le type de métrique si nécessaire.

String getRunName()

Constructeurs publics

BasePostProcessor

public BasePostProcessor ()

Méthodes publiques

init

public final ITestInvocationListener init (ITestInvocationListener listener)

Étape d'initialisation du post-processeur. Appelée avant tout test et les rappels automatiques.

Paramètres
listener ITestInvocationListener

Renvoie
ITestInvocationListener

invocationEnded

public final void invocationEnded (long elapsedTime)

Indique que l'appel s'est arrêté, que ce soit avec succès ou en raison d'une erreur .

Sera automatiquement appelée par le framework TradeFederation.

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

invocationFailed

public final void invocationFailed (FailureDescription failure)

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

Appelé automatiquement par le framework TradeFederation.

Paramètres
failure FailureDescription : FailureDescription décrivant la cause de l'échec

invocationFailed

public final void invocationFailed (Throwable cause)

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

Appelé automatiquement par le framework TradeFederation.

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

Appel ignoré

public void invocationSkipped (SkipReason reason)

Signale une invocation comme ignorée

Paramètres
reason SkipReason

invocationStarted

public final void invocationStarted (IInvocationContext context)

Écouteurs d'appel pour le transfert

Paramètres
context IInvocationContext: informations sur l'appel

est désactivé

public final 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

association log

public final void logAssociation (String dataName, 
                LogFile logFile)

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

Met à jour l'association log-to-test. Si cette méthode est appelée lors d'un test, le journal appartient au test. Sinon, il s'agit d'un journal d'exécution.

Paramètres
dataName String: nom des données

logFile LogFile : LogFile enregistré précédemment et qui doit être associé au cas de test.

processAllTestMetricsAndLogs

public  processAllTestMetricsAndLogs (ListMultimap<String, MetricMeasurement.Metric> allTestMetrics, 
                 allTestLogs)

Implémentez cette méthode pour agréger les métriques et les journaux de tous les tests. Les métriques issues de cette méthode seront enregistrées en tant que métriques d'exécution. Seules les métriques nouvellement générées doivent être renvoyées, avec un nom de clé unique (aucune collision avec les clés existantes n'est autorisée).

Paramètres
allTestMetrics ListMultimap : HashMultimap stockant les métriques de chaque test regroupées par nom de métrique.

allTestLogs : une carte stockant la carte des fichiers journaux de chaque test associés aux noms de leurs données. en utilisant le TestDescription de chaque test comme clés.

Renvoie
Ensemble de métriques nouvellement générées pour toutes les métriques de test.

processRunMetricsAndLogs

public abstract  processRunMetricsAndLogs ( rawMetrics, 
                 runLogs)

Implémentez cette méthode pour générer un ensemble de nouvelles métriques à partir des métriques et des journaux existants. Seules les nouvelles métriques générées doivent être renvoyées, avec un nom de clé unique (pas des conflits avec des clés existantes).

Paramètres
rawMetrics  : ensemble de métriques brutes disponibles pour l'exécution.

runLogs : ensemble des fichiers journaux pour l'exécution du test.

Renvoie
Ensemble des métriques nouvellement générées à partir des métriques d'exécution.

processTestMetricsAndLogs

public  processTestMetricsAndLogs (TestDescription testDescription, 
                 testMetrics, 
                 testLogs)

Implémentez cette méthode pour post-traiter les métriques et les journaux de chaque test. Seules les métriques nouvellement générées doivent être renvoyées, avec un nom de clé unique (aucune collision avec les clés existantes n'est autorisée).

Paramètres
testDescription TestDescription : objet TestDescription décrivant le test.

testMetrics : ensemble de métriques du test.

testLogs  : ensemble de fichiers journalisés pendant le test.

Renvoie
Ensemble de métriques nouvellement générées à partir des métriques de test.

setLogSaver

public final void setLogSaver (ILogSaver logSaver)

Définissez ILogSaver pour autoriser l'implémentateur à enregistrer des fichiers.

Paramètres
logSaver ILogSaver: ILogSaver

setUp

public void setUp ()

Forcez cette méthode dans les post-processeurs enfants pour l'initialiser avant l'exécution du test.

testAssumptionFailure

public final 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 final 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 final void testEnded (TestDescription test, 
                long endTime, 
                 testMetrics)

Alternative à ERROR(/#testEnded(com.android.tradefed.result.TestDescription,Map)), où nous pouvons spécifier l'heure de fin directement. 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 final 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é, le test a réussi. Renvoie également toute clé/valeur qui ont pu être émises lors de l'exécution du scénario de test.

Paramètres
test TestDescription: identifie le test.

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

Échec du test

public final void testFailed (TestDescription test, 
                FailureDescription failure)

Indique 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.

Échec du test

public final void testFailed (TestDescription test, 
                String trace)

Indique 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 la pile de défaillance

TestIgnoré

public final 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

JournalTest

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

Utilisez cette méthode pour consigner un fichier à partir de l'implémentation de PostProcessor.

Paramètres
dataName String : nom descriptif String des données (par exemple, "device_logcat"). Remarque : Le nom de données ne doit pas nécessairement être unique par appel. Autrement dit, les implémentateurs doivent pouvoir gérer plusieurs appels avec le même nom de données.

dataType LogDataType: LogDataType des données

dataStream InputStreamSource : InputStreamSource des données. Les implémentateurs doivent appeler createInputStream pour commencer à lire les données et s'assurer de fermer l'InputStream généré une fois la lecture terminée. 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 final void testLogSaved (String dataName, 
                LogDataType dataType, 
                InputStreamSource dataStream, 
                LogFile logFile)

Appelé lorsque le journal de test est enregistré.

À utiliser à la place de ITestInvocationListener#testLog(String, LogDataType, InputStreamSource).

Paramètres
dataName String : nom descriptif String des données (par exemple, "device_logcat"). Remarque : Le nom de données ne doit pas nécessairement être unique par appel. Autrement dit, les implémentateurs doivent pouvoir gérer plusieurs appels avec le même nom de données.

dataType LogDataType : LogDataType des données

dataStream InputStreamSource: InputStreamSource des données. Les implémentateurs doivent appeler createInputStream pour commencer à lire les données et s'assurer de fermer l'InputStream généré une fois la lecture terminée.

logFile LogFile : LogFile contenant les métadonnées du fichier enregistré.

testModuleEnded

public final void testModuleEnded ()

Indique la fin d'une exécution de module.

Module de test démarré

public final 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 exécuteurs basés sur une suite.

Paramètres
moduleContext IInvocationContext: IInvocationContext du module.

testRunEnded

public final void testRunEnded (long elapsedTime, 
                 runMetrics)

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

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

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

TestRunFailed

public final 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 final 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 final void testRunStarted (String runName, 
                int testCount, 
                int attemptNumber)

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

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

testCount 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 final void testRunStarted (String runName, 
                int testCount)

Rappels d'exécution de test

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

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

testRunStarted

public final void testRunStarted (String runName, 
                int testCount, 
                int attemptNumber, 
                long startTime)

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

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

testCount 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 qui sont 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()

Exécution de test arrêtée

public final 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.

À FAIRE: actuellement non utilisé, pensez à le supprimer

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

Test ignoré

public final void testSkipped (TestDescription test, 
                SkipReason reason)

Appelé lorsqu'un test est ignoré et ne s'est pas exécuté pour une raison inattendue. 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

Démarrage du test démarré

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

Démarrage du test démarré

public final void testStarted (TestDescription test)

Rappels des scénarios de test

Paramètres
test TestDescription: identifie le test.

Méthodes protégées

cleanUp

protected void cleanUp ()

getMetricType

protected MetricMeasurement.DataType getMetricType ()

Ignorez cette méthode pour modifier le type de métrique si nécessaire. Par défaut, la métrique est définie sur du type traité.

Renvoie
MetricMeasurement.DataType

getRunName

protected String getRunName ()

Renvoie
String