BugreportCollector

public class BugreportCollector
extends Object implements ITestInvocationListener

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


Un ITestInvocationListener passe-système qui collecte les rapports de bogue lorsque des événements configurables se produisent, puis appelle ITestInvocationListener#testLog sur ses enfants après la collecte de chaque rapport de bogue.

Comportements : (FIXME : terminez ceci)

  • Capturez après chaque cas de test en cas d'échec
  • Capture après chaque cas de test
  • Capture après chaque cas de test échoué
  • Capture

Résumé

Classes imbriquées

class BugreportCollector.Predicate

Un prédicat complet décrivant quand capturer un rapport de bogue.

interface BugreportCollector.SubPredicate

Des champs

public static final BugreportCollector.Predicate AFTER_FAILED_TESTCASES

Un prédicat prédéfini qui se déclenche après chaque cas de test échoué

public static final BugreportCollector.Predicate AT_START

Un prédicat prédéfini qui se déclenche au début de la première invocation

Constructeurs publics

BugreportCollector ( ITestInvocationListener listener, ITestDevice testDevice)

Méthodes publiques

void addPredicate ( BugreportCollector.Predicate p)
void blockUntilIdle ()

Bloquer jusqu'à ce que le collecteur ne collecte plus aucun rapport de bogue.

TestSummary getSummary ()

Permet à InvocationListener de renvoyer un résumé.

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 setAsynchronous (boolean asynchronous)

Définissez si la collection de rapports de bogues doit collecter le rapport de bogue dans un thread différent ( asynchronous = true ) ou bloquer l'appelant jusqu'à ce que le rapport de bogue soit capturé ( asynchronous = false ).

void setDescriptiveName (String name)

Définissez le nom descriptif à utiliser lors de l'enregistrement des rapports de bogues.

void setDeviceWaitTime (int waitTime)

Définissez le temps (en secondes) d'attente pour que l'appareil soit en ligne avant d'essayer de capturer un rapport de bogue.

void testAssumptionFailure ( TestDescription test, String trace)

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

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, 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 testLog (String dataName, LogDataType dataType, InputStreamSource dataStream)

Fournit les données de journal ou de débogage associées à partir de l'appel de test.

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

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

void testRunFailed (String errorMessage)

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

void testRunStarted (String runName, int testCount)

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)

Signale le début d'un scénario de test individuel.

Des champs

AFTER_FAILED_TESTCASES

public static final BugreportCollector.Predicate AFTER_FAILED_TESTCASES

Un prédicat prédéfini qui se déclenche après chaque cas de test échoué

AU DÉBUT

public static final BugreportCollector.Predicate AT_START

Un prédicat prédéfini qui se déclenche au début de la première invocation

Constructeurs publics

BugreportCollector

public BugreportCollector (ITestInvocationListener listener, 
                ITestDevice testDevice)

Paramètres
listener ITestInvocationListener

testDevice ITestDevice

Méthodes publiques

addPredicate

public void addPredicate (BugreportCollector.Predicate p)

Paramètres
p BugreportCollector.Predicate

bloquerJusqu'au repos

public void blockUntilIdle ()

Bloquer jusqu'à ce que le collecteur ne collecte plus aucun rapport de bogue. Si le collecteur ne collecte pas activement un rapport de bogue, revenez immédiatement

obtenirRésumé

public TestSummary getSummary ()

Permet à InvocationListener de renvoyer un résumé.

Retour
TestSummary Un TestSummary résumant l'exécution, ou null

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

setAsynchronous

public void setAsynchronous (boolean asynchronous)

Définissez si la collection de rapports de bogues doit collecter le rapport de bogue dans un thread différent ( asynchronous = true ) ou bloquer l'appelant jusqu'à ce que le rapport de bogue soit capturé ( asynchronous = false ).

Paramètres
asynchronous boolean

setDescriptiveName

public void setDescriptiveName (String name)

Définissez le nom descriptif à utiliser lors de l'enregistrement des rapports de bogues. Si null , BugreportCollector reviendra au comportement par défaut de sérialisation du nom de l'événement qui a provoqué la collecte du rapport de bogue.

Paramètres
name String

setDeviceWaitTime

public void setDeviceWaitTime (int waitTime)

Définissez le temps (en secondes) d'attente pour que l'appareil soit en ligne avant d'essayer de capturer un rapport de bogue. Si négatif, aucun contrôle ne sera effectué. Toute DeviceNotAvailableException rencontrée lors de cette vérification sera consignée et ignorée.

Paramètres
waitTime int

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

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

testLog

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

Fournit les données de journal ou de débogage associées à partir de l'appel de test.

Doit être appelé avant ERROR(/ITestInvocationListener#invocationFailed(Throwable)) ou ERROR(/ITestInvocationListener#invocationEnded(long))

Le framework TradeFederation appellera automatiquement cette méthode, fournissant le journal de l'hôte et, le cas échéant, le logcat de l'appareil.

Paramètres
dataName String : un nom String descriptif des données. par exemple "device_logcat". Remarque dataName peut ne pas être unique par appel. c'est-à-dire que les implémenteurs doivent être capables de gérer plusieurs appels avec le même dataName

dataType LogDataType : le LogDataType des données

dataStream InputStreamSource : le InputStreamSource des données. Les implémenteurs doivent appeler createInputStream pour commencer à lire les données et s'assurer de fermer le InputStream résultant une fois terminé. Les appelants doivent s'assurer que la source des données reste présente et accessible jusqu'à ce que la méthode testLog se termine.

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 (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 runName, 
                int testCount)

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

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

testCount int : nombre total de tests en cours de test

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)

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