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 Met à jour l'association entre le journal et le test. |
|
processAllTestMetricsAndLogs(ListMultimap<String, MetricMeasurement.Metric> allTestMetrics,
Implémentez cette méthode pour agréger les métriques et les journaux de tous les tests. |
abstract
|
processRunMetricsAndLogs(
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,
Implémentez cette méthode pour post-traiter les métriques et les journaux de chaque test. |
final
void
|
setLogSaver(ILogSaver logSaver)
Définissez |
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,
Alternative à |
final
void
|
testEnded(TestDescription test,
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,
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 |
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 à |
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
publicprocessAllTestMetricsAndLogs (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 abstractprocessRunMetricsAndLogs ( 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
publicprocessTestMetricsAndLogs (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 |
|