ProtoResultReporter

public abstract class ProtoResultReporter
extends Object implements ILogSaverListener, ISupportGranularResults, ITestInvocationListener

java.lang.Object
   ↳ com.android.tradefed.result.proto.ProtoResultReporter


Le générateur de rapports sur les résultats crée un fichier protobuf TestRecord contenant tous les résultats. Doit être étendu pour gérer ce qu'il faut faire avec le proto final dans processFinalProto(TestRecord).

Résumé

Constructeurs publics

ProtoResultReporter()

Méthodes publiques

final void invocationEnded(long elapsedTime)

Indique que l'invocation s'est terminée, que ce soit avec succès ou en raison d'une condition d'erreur.

void invocationFailed(FailureDescription failure)

Signale un appel incomplet en raison d'une condition d'erreur.

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

void invocationStarted(IInvocationContext context)

Indique le début de l'appel de test.

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,LogDataType,InputStreamSource,LogFile) direct.

void processFinalInvocationLogs(TestRecordProto.TestRecord invocationLogs)

Utilisez l'enregistrement d'invocation pour envoyer un par un tous les journaux finaux de l'invocation.

void processFinalProto(TestRecordProto.TestRecord finalRecord)

Gestion du proto final avec tous les résultats.

void processStartInvocation(TestRecordProto.TestRecord invocationStartRecord, IInvocationContext invocationContext)

Gestion du proto d'enregistrement de test d'invocation partielle après l'événement invocationStarted(IInvocationContext).

void processTestCaseEnded(TestRecordProto.TestRecord testCaseRecord)

Gestion du proto d'enregistrement du scénario de test finalisé après l'événement testEnded(TestDescription,long,HashMap).

void processTestCaseStarted(TestRecordProto.TestRecord testCaseStartedRecord)

Gestion du proto d'enregistrement de cas de test partiel après l'événement testStarted(TestDescription,long).

void processTestModuleEnd(TestRecordProto.TestRecord moduleRecord)

Gestion du fichier proto d'enregistrement du module finalisé après l'événement testModuleEnded().

void processTestModuleStarted(TestRecordProto.TestRecord moduleStartRecord)

Gestion du proto d'enregistrement de module partiel après testModuleStarted(IInvocationContext).

void processTestRunEnded(TestRecordProto.TestRecord runRecord, boolean moduleInProgress)

Gestion du fichier proto d'enregistrement de l'exécution finalisée après testRunEnded(long,HashMap).

void processTestRunStarted(TestRecordProto.TestRecord runStartedRecord)

Gestion du proto d'enregistrement d'exécution de test partiel après l'occurrence de testRunStarted(String,int).

void setGranularResults(boolean granularResults)
void setInlineRecordOfChildren(boolean inline)
boolean supportGranularResults()

Renvoie "True" si le rapporteur accepte les résultats précis, ou "False" dans le cas contraire.

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, HashMap<String, MetricMeasurement.Metric> testMetrics)

Alternative à testEnded(TestDescription,Map) où nous pouvons spécifier directement l'heure de fin.

void testEnded(TestDescription test, HashMap<String, MetricMeasurement.Metric> 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 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 elapsedTimeMillis, HashMap<String, MetricMeasurement.Metric> 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.

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

Indique le début d'un test.

final void testRunStarted(String runName, int testCount)

Indique le début d'un test.

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

Indique le début d'un test.

final void testSkipped(TestDescription test, SkipReason reason)

Appelé 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(TestDescription) où nous spécifions également la date de début du test, combinée à testEnded(TestDescription,long,Map) pour une mesure précise.

final void testStarted(TestDescription test)

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

Méthodes protégées

void afterModuleEnd()
void beforeModuleStart()
TestRecordProto.ChildReference createModuleChildReference(TestRecordProto.TestRecord record)

Crée une référence enfant pour un module.

Constructeurs publics

ProtoResultReporter

public ProtoResultReporter ()

Méthodes publiques

invocationEnded

public final void invocationEnded (long elapsedTime)

Indique 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 : temps écoulé de l'appel en ms

invocationFailed

public void invocationFailed (FailureDescription failure)

Signale un appel incomplet 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 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 : cause Throwable de l'échec

invocationSkipped

public void invocationSkipped (SkipReason reason)

Signale une invocation comme ignorée

Paramètres
reason SkipReason

invocationStarted

public void invocationStarted (IInvocationContext context)

Indique le début de l'appel de test.

Sera automatiquement appelé par le framework TradeFederation. Les reporters doivent remplacer cette méthode pour prendre en charge le reporting sur plusieurs appareils.

Paramètres
context IInvocationContext : informations sur l'appel

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,LogDataType,InputStreamSource,LogFile) direct. Ce rappel permet donc de fournir explicitement une association forte.

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.

processFinalInvocationLogs

public void processFinalInvocationLogs (TestRecordProto.TestRecord invocationLogs)

Utilisez l'enregistrement d'invocation pour envoyer un par un tous les journaux finaux de l'invocation.

Paramètres
invocationLogs TestRecordProto.TestRecord : proto finalisé représentant l'invocation.

processFinalProto

public void processFinalProto (TestRecordProto.TestRecord finalRecord)

Gestion du proto final avec tous les résultats.

Paramètres
finalRecord TestRecordProto.TestRecord : proto finalisé avec tous les résultats d'invocation.

processStartInvocation

public void processStartInvocation (TestRecordProto.TestRecord invocationStartRecord, 
                IInvocationContext invocationContext)

Gestion du proto d'enregistrement de test d'invocation partielle après l'événement invocationStarted(IInvocationContext).

Paramètres
invocationStartRecord TestRecordProto.TestRecord : proto partiel rempli après invocationStart.

invocationContext IInvocationContext : l'invocation IInvocationContext.

processTestCaseEnded

public void processTestCaseEnded (TestRecordProto.TestRecord testCaseRecord)

Gestion du proto d'enregistrement du scénario de test finalisé après l'événement testEnded(TestDescription,long,HashMap).

Paramètres
testCaseRecord TestRecordProto.TestRecord : proto finalisé représentant un cas de test.

processTestCaseStarted

public void processTestCaseStarted (TestRecordProto.TestRecord testCaseStartedRecord)

Gestion du proto d'enregistrement de cas de test partiel après l'événement testStarted(TestDescription,long).

Paramètres
testCaseStartedRecord TestRecordProto.TestRecord : proto partiel représentant le cas de test.

processTestModuleEnd

public void processTestModuleEnd (TestRecordProto.TestRecord moduleRecord)

Gestion du fichier proto d'enregistrement du module finalisé après l'événement testModuleEnded().

Paramètres
moduleRecord TestRecordProto.TestRecord : proto finalisé représentant le module.

processTestModuleStarted

public void processTestModuleStarted (TestRecordProto.TestRecord moduleStartRecord)

Gestion du proto d'enregistrement de module partiel après testModuleStarted(IInvocationContext).

Paramètres
moduleStartRecord TestRecordProto.TestRecord : proto partiel représentant le module.

processTestRunEnded

public void processTestRunEnded (TestRecordProto.TestRecord runRecord, 
                boolean moduleInProgress)

Gestion du fichier proto d'enregistrement de l'exécution finalisée après testRunEnded(long,HashMap).

Paramètres
runRecord TestRecordProto.TestRecord : proto finalisé représentant l'exécution.

moduleInProgress boolean : indique si un module est en cours.

processTestRunStarted

public void processTestRunStarted (TestRecordProto.TestRecord runStartedRecord)

Gestion du proto d'enregistrement de l'exécution partielle du test après l'événement testRunStarted(String,int).

Paramètres
runStartedRecord TestRecordProto.TestRecord : proto partiel représentant l'exécution.

setGranularResults

public void setGranularResults (boolean granularResults)

Paramètres
granularResults boolean

setInlineRecordOfChildren

public void setInlineRecordOfChildren (boolean inline)

Paramètres
inline boolean

supportGranularResults

public boolean supportGranularResults ()

Renvoie "True" si le rapporteur accepte les résultats précis, ou "False" dans le cas contraire.

Renvoie
boolean

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, 
                HashMap<String, MetricMeasurement.Metric> testMetrics)

Alternative à testEnded(TestDescription,Map) où nous pouvons spécifier directement l'heure de fin. Combinez-le avec testStarted(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 HashMap : Map des métriques émises.

testEnded

public void testEnded (TestDescription test, 
                HashMap<String, MetricMeasurement.Metric> 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 HashMap : 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

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 des suites.

Paramètres
moduleContext IInvocationContext : IInvocationContext du module.

testRunEnded

public final void testRunEnded (long elapsedTimeMillis, 
                HashMap<String, MetricMeasurement.Metric> runMetrics)

Rapports de fin de série de tests. FIXME: We cannot have two Map<> interfaces with different type, so we have to use HashMap here.

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

runMetrics HashMap : paires clé-valeur signalées à la fin d'une série de tests avec Metric.

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

Indique le début d'un test.

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 s'exécutent 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 précise trois fois, il doit comporter quatre exécutions au total sous le même runName, et le numéro de tentative doit être compris entre 0 et 3.

testRunStarted

public final void testRunStarted (String runName, 
                int testCount)

Indique le début d'un 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 void testRunStarted (String runName, 
                int testCount, 
                int attemptNumber, 
                long startTime)

Indique le début d'un test.

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 s'exécutent 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 précise trois fois, il doit comporter quatre exécutions au total sous le même runName, et le numéro de tentative doit être compris entre 0 et 3.

startTime long : heure de début de l'exécution, mesurée via System.currentTimeMillis()

testSkipped

public final void testSkipped (TestDescription test, 
                SkipReason reason)

Appelé lorsqu'un test est ignoré et ne s'est pas exécuté pour une raison généralement inattendue. Nous allons tenter de relancer ces tests pour essayer 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(TestDescription) où nous spécifions également la date de début du test, combinée à testEnded(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)

Indique le début d'un scénario de test individuel. Ancienne interface. Utilisez testStarted(TestDescription) autant que possible.

Paramètres
test TestDescription : identifie le test

Méthodes protégées

afterModuleEnd

protected void afterModuleEnd ()

beforeModuleStart

protected void beforeModuleStart ()

createModuleChildReference

protected TestRecordProto.ChildReference createModuleChildReference (TestRecordProto.TestRecord record)

Crée une référence enfant pour un module.

Paramètres
record TestRecordProto.TestRecord

Renvoie
TestRecordProto.ChildReference