BasePostProcessor

public abstract class BasePostProcessor
extends Object implements IPostProcessor

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


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 s'est terminé, 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 une invocation incomplète 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é (ignore à la fois la configuration et la suppression).

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

Met à jour l'association entre le journal et le test.

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 et des journaux existants.

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'implémenteur d'enregistrer des fichiers.

void setUp()

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

final void testAssumptionFailure(TestDescription test, String trace)

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

final void testAssumptionFailure(TestDescription test, FailureDescription failure)

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

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

final void testFailed(TestDescription test, String trace)

Signalement de l'échec d'un cas 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 enregistrer un fichier à partir de l'implémentation 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 de l'exécution d'un module.

final void testModuleStarted(IInvocationContext moduleContext)

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

final void testRunEnded(long elapsedTime, runMetrics)

Rapports de fin de série de tests.

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

final void testRunFailed(String errorMessage)

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

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

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

final void testRunStarted(String runName, int testCount)

Rappels d'exécution de test

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

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

final void testRunStopped(long elapsedTime)

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

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

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

final void testStarted(TestDescription test)

Rappels de scénarios de test

Méthodes protégées

void cleanUp()
MetricMeasurement.DataType getMetricType()

Remplacez 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. Cette méthode est appelée avant les rappels de test.

Paramètres
listener ITestInvocationListener

Renvoie
ITestInvocationListener

invocationEnded

public final 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 final void invocationFailed (FailureDescription failure)

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

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

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 final void invocationStarted (IInvocationContext context)

Écouteurs d'appel pour le transfert

Paramètres
context IInvocationContext : informations sur l'appel

isDisabled

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

Met à jour l'association entre le journal et le 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 : le LogFile qui a été enregistré précédemment et qui doit être associé au scénario 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 signalées comme des 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  : carte stockant la carte des fichiers journaux de chaque test, indexée par leur nom de données, à l'aide de TestDescription de chaque test comme clés.

Renvoie
Ensemble de métriques nouvellement générées à partir de 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 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
rawMetrics  : ensemble des métriques brutes disponibles pour l'exécution.

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

Renvoie
Ensemble de 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 des fichiers enregistré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 permettre à l'implémenteur d'enregistrer des fichiers.

Paramètres
logSaver ILogSaver : ILogSaver

setUp

public void setUp ()

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

testAssumptionFailure

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

testLog

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

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

Paramètres
dataName String : nom descriptif String des données, par exemple "device_logcat". Remarque : dataName n'est pas forcément unique par invocation. Autrement dit, les implémenteurs doivent pouvoir gérer plusieurs appels avec le même dataName.

dataType LogDataType : LogDataType des données

dataStream InputStreamSource : InputStreamSource des données. Les développeurs doivent appeler createInputStream pour commencer à lire les données et s'assurer de fermer l'InputStream résultant une fois l'opération terminée. Les appelants doivent s'assurer que la source des données reste présente et accessible jusqu'à ce que la méthode testLog soit terminée.

testLogSaved

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

Appelé lorsque le journal de test est enregistré.

Doit être utilisé à la place de ITestInvocationListener.testLog(String, LogDataType, InputStreamSource).

Paramètres
dataName String : nom descriptif String des données, par exemple "device_logcat". Notez que dataName n'est pas forcément unique par invocation. Autrement dit, les implémenteurs doivent pouvoir gérer plusieurs appels avec le même dataName.

dataType LogDataType : LogDataType des données

dataStream InputStreamSource : InputStreamSource des données. Les développeurs doivent appeler createInputStream pour commencer à lire les données et s'assurer de fermer l'InputStream résultant une fois l'opération terminée.

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

testModuleEnded

public final void testModuleEnded ()

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

testModuleStarted

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

Paramètres
moduleContext IInvocationContext : IInvocationContext du module.

testRunEnded

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

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

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

testCount 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 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 dans l'exécution du test

testRunStarted

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

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

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

testCount 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 final 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 final 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 final 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 final void testStarted (TestDescription test)

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

Remplacez cette méthode pour modifier le type de métrique si nécessaire. Par défaut, la métrique est définie sur le type "Traité".

Renvoie
MetricMeasurement.DataType

getRunName

protected String getRunName ()

Renvoie
String