ProtoResultReporter

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

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


Le rapporteur de résultats crée un protobuf TestRecord avec tous les résultats à l'intérieur. Doit être étendu pour gérer quoi faire avec le proto final dans processFinalProto(com.android.tradefed.result.proto.TestRecordProto.TestRecord) .

Résumé

Constructeurs publics

ProtoResultReporter ()

Méthodes publiques

final void invocationEnded (long elapsedTime)

Signale que l'appel s'est terminé, 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

final void invocationStarted ( IInvocationContext context)

Signale le début de l’invocation du test.

final void logAssociation (String dataName, LogFile logFile)

Dans certains cas, le journal doit être fortement associé à un cas de test, mais il est possible de le faire directement testLogSaved(String, com.android.tradefed.result.LogDataType, com.android.tradefed.result.InputStreamSource, com.android.tradefed.result.LogFile) le rappel n’est pas possible.

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)

La gestion du protocole d'enregistrement de test d'invocation partielle après invocationStarted(com.android.tradefed.invoker.IInvocationContext) s'est produite.

void processTestCaseEnded (TestRecordProto.TestRecord testCaseRecord)

Gestion du prototype d'enregistrement de scénario de test finalisé après ERROR(/#testEnded(com.android.tradefed.result.TestDescription,long,HashMap)) .

void processTestCaseStarted (TestRecordProto.TestRecord testCaseStartedRecord)

Gestion du prototype d'enregistrement de scénario de test partiel après testStarted(com.android.tradefed.result.TestDescription, long) .

void processTestModuleEnd (TestRecordProto.TestRecord moduleRecord)

Gestion du prototype d'enregistrement de module finalisé après que testModuleEnded() se soit produit.

void processTestModuleStarted (TestRecordProto.TestRecord moduleStartRecord)

Gestion du prototype d'enregistrement de module partiel après testModuleStarted(com.android.tradefed.invoker.IInvocationContext) .

void processTestRunEnded (TestRecordProto.TestRecord runRecord, boolean moduleInProgress)

Gestion du protocole d'enregistrement d'exécution finalisé après ERROR(/#testRunEnded(long,HashMap)) .

void processTestRunStarted (TestRecordProto.TestRecord runStartedRecord)

Gestion du protocole d'enregistrement d'exécution de test partiel après que testRunStarted(String, int) se soit produit.

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

Renvoie True si le rapporteur prend en charge les résultats granulaires, false sinon.

final void testAssumptionFailure ( TestDescription test, String trace)

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

final void testAssumptionFailure ( TestDescription test, FailureDescription failure)

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

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

void testEnded ( TestDescription test, testMetrics) testEnded ( TestDescription test, testMetrics)

Signale la fin de l’exécution d’un scénario de test individuel.

final void testFailed ( TestDescription test, FailureDescription failure)

Signale l’échec d’un scénario de test individuel.

final void testFailed ( TestDescription test, String trace)

Signale 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 testModuleEnded ()

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

final void testModuleStarted ( IInvocationContext moduleContext)

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

final void testRunEnded (long elapsedTimeMillis, runMetrics) testRunEnded (long elapsedTimeMillis, runMetrics)

Signale la fin du test.

final void testRunFailed ( FailureDescription failure)

L’exécution du test des rapports n’a pas abouti en raison d’un échec décrit par FailureDescription .

final 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, int attemptNumber)

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

final void testRunStarted (String runName, int testCount)

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

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

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

final void testSkipped ( TestDescription test, SkipReason reason)

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

final void testStarted ( TestDescription test, long startTime)

Alternative à testStarted(com.android.tradefed.result.TestDescription) où nous spécifions également quand le test a été démarré, combiné avec ERROR(/#testEnded(com.android.tradefed.result.TestDescription,long,Map)) pour une mesure précise .

final void testStarted ( TestDescription test)

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

Méthodes protégées

TestRecordProto.ChildReference createModuleChildReference (TestRecordProto.TestRecord record)

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

Constructeurs publics

ProtoResultReporter

public ProtoResultReporter ()

Méthodes publiques

invocationFin

public final void invocationEnded (long elapsedTime)

Signale 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 : le temps écoulé de l'invocation en ms

échec de l'appel

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 : le FailureDescription décrivant la cause de la panne

échec de l'appel

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

invocationSautée

public void invocationSkipped (SkipReason reason)

Signale une invocation comme ignorée

Paramètres
reason SkipReason

invocationDémarrée

public final void invocationStarted (IInvocationContext context)

Signale le début de l’invocation du test.

Sera automatiquement appelé par le framework TradeFederation. Les journalistes doivent remplacer cette méthode pour prendre en charge la création de rapports sur plusieurs appareils.

Paramètres
context IInvocationContext : informations sur l'invocation

journalAssociation

public final void logAssociation (String dataName, 
                LogFile logFile)

Dans certains cas, le journal doit être fortement associé à un cas de test, mais il est possible de le faire directement testLogSaved(String, com.android.tradefed.result.LogDataType, com.android.tradefed.result.InputStreamSource, com.android.tradefed.result.LogFile) le rappel n’est pas possible. Ainsi, ce rappel permet de fournir explicitement une association forte.

Paramètres
dataName String : Le nom de la donnée

logFile LogFile : le LogFile qui a été enregistré auparavant 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 : Le prototype finalisé représentant l'invocation.

processusFinalProto

public void processFinalProto (TestRecordProto.TestRecord finalRecord)

Gestion du proto final avec tous les résultats.

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

processStartInvocation

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

La gestion du protocole d'enregistrement de test d'invocation partielle après invocationStarted(com.android.tradefed.invoker.IInvocationContext) s'est produite.

Paramètres
invocationStartRecord TestRecordProto.TestRecord : Le proto partiel renseigné après l'invocationStart.

invocationContext IInvocationContext : L'invocation IInvocationContext .

processusTestCaseEnded

public void processTestCaseEnded (TestRecordProto.TestRecord testCaseRecord)

Gestion du prototype d'enregistrement de scénario de test finalisé après ERROR(/#testEnded(com.android.tradefed.result.TestDescription,long,HashMap)) .

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

processusTestCaseStarted

public void processTestCaseStarted (TestRecordProto.TestRecord testCaseStartedRecord)

Gestion du protocole d'enregistrement de scénario de test partiel après testStarted(com.android.tradefed.result.TestDescription, long) .

Paramètres
testCaseStartedRecord TestRecordProto.TestRecord : Le prototype partiel représentant le scénario de test.

processusTestModuleFin

public void processTestModuleEnd (TestRecordProto.TestRecord moduleRecord)

Gestion du prototype d'enregistrement de module finalisé après que testModuleEnded() se soit produit.

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

processTestModuleStarted

public void processTestModuleStarted (TestRecordProto.TestRecord moduleStartRecord)

Gestion du prototype d'enregistrement de module partiel après testModuleStarted(com.android.tradefed.invoker.IInvocationContext) .

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

processusTestRunEnded

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

Gestion du protocole d'enregistrement d'exécution finalisé après ERROR(/#testRunEnded(long,HashMap)) .

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

moduleInProgress boolean : si un module est en cours ou non.

processusTestRunStarted

public void processTestRunStarted (TestRecordProto.TestRecord runStartedRecord)

Gestion du protocole d'enregistrement d'exécution de test partiel après que testRunStarted(String, int) se soit produit.

Paramètres
runStartedRecord TestRecordProto.TestRecord : Le prototype 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 prend en charge les résultats granulaires, false sinon.

Retour
boolean

testhypothèseéchec

public final 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 d'échec de la pile

testhypothèseéchec

public final void testAssumptionFailure (TestDescription test, 
                FailureDescription failure)

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

Paramètres
test TestDescription : identifie le test

failure FailureDescription : FailureDescription décrivant la panne et son contexte.

testFin

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 avec testStarted(com.android.tradefed.result.TestDescription, long) pour une mesure précise.

Paramètres
test TestDescription : identifie le test

endTime long : l'heure de fin du test, mesurée via System.currentTimeMillis()

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

testFin

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é invoqué, ce test a réussi. Renvoie également toutes les métriques clé/valeur qui peuvent avoir été émises lors de l'exécution du scénario de test.

Paramètres
test TestDescription : identifie le test

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

test échoué

public final void testFailed (TestDescription test, 
                FailureDescription failure)

Signale 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 la panne et son contexte.

test échoué

public final 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 d'échec de la pile

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

testModuleFin

public final void testModuleEnded ()

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

testModuleDémarré

public final void testModuleStarted (IInvocationContext moduleContext)

Signale 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 : des coureurs basés sur une suite.

Paramètres
moduleContext IInvocationContext : le IInvocationContext du module.

testRunEnded

public final void testRunEnded (long elapsedTimeMillis, 
                 runMetrics)

Signale la fin du test. FIXME : Nous ne pouvons pas avoir deux interfaces Map<> de type différent, nous devons donc utiliser HashMap ici.

Paramètres
elapsedTimeMillis long : l'appareil a signalé le temps écoulé, en millisecondes

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

testRunFailed

public final void testRunFailed (FailureDescription failure)

L’exécution du test des rapports n’a pas abouti en raison d’un échec décrit par FailureDescription .

Paramètres
failure FailureDescription : FailureDescription décrivant la panne et son contexte.

testRunFailed

public final 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, 
                int attemptNumber)

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

Paramètres
runName String : le nom du test

testCount int : nombre total de tests en cours de test

attemptNumber int : numéro d'ordre, identifiant les différentes tentatives d'un même runName qui s'exécutent plusieurs fois. Le tentNumber est indexé sur 0 et doit s’incrémenter à chaque fois qu’une nouvelle exécution se produit. Par exemple, un test granulaire est réessayé 3 fois, il doit avoir 4 exécutions au total sous le même nom d'exécution et le numéro de tentative est compris entre 0 et 3.

testRunStarted

public final void testRunStarted (String runName, 
                int testCount)

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

Paramètres
runName String : le nom du test

testCount int : nombre total de tests en cours de test

testRunStarted

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

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

Paramètres
runName String : le nom du test

testCount int : nombre total de tests en cours de test

attemptNumber int : numéro d'ordre, identifiant les différentes tentatives d'un même runName qui s'exécutent plusieurs fois. Le tentNumber est indexé sur 0 et doit s’incrémenter à chaque fois qu’une nouvelle exécution se produit. Par exemple, un test granulaire est réessayé 3 fois, il doit avoir 4 exécutions au total sous le même nom d'exécution et le numéro de tentative est compris entre 0 et 3.

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

testSauté

public final void testSkipped (TestDescription test, 
                SkipReason reason)

Appelé lorsqu'un test est ignoré et n'a pas été exécuté pour une raison habituellement inattendue. Ces tests seront tentés à nouveau pour tenter d'obtenir une exécution correcte.

Paramètres
test TestDescription : identifie le test

reason SkipReason : SkipReason

testDémarré

public final void testStarted (TestDescription test, 
                long startTime)

Alternative à testStarted(com.android.tradefed.result.TestDescription) où nous spécifions également quand le test a été démarré, combiné avec ERROR(/#testEnded(com.android.tradefed.result.TestDescription,long,Map)) pour une mesure précise .

Paramètres
test TestDescription : identifie le test

startTime long : l'heure de démarrage du test, mesurée via System.currentTimeMillis()

testDémarré

public final void testStarted (TestDescription test)

Signale le début d’un scénario de test individuel. L'interface plus ancienne doit utiliser testStarted(com.android.tradefed.result.TestDescription) autant que possible.

Paramètres
test TestDescription : identifie le test

Méthodes protégées

createModuleChildReference

protected TestRecordProto.ChildReference createModuleChildReference (TestRecordProto.TestRecord record)

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

Paramètres
record TestRecordProto.TestRecord

Retour
TestRecordProto.ChildReference