ProtoResultReporter

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

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


Le rapporteur de résultats crée un protobuf TestRecord contenant tous les résultats. Doit être étendu pour gérer ce qu'il faut 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)

Indique que l'appel a pris fin, que ce soit avec succès ou en raison d'une condition d'erreur.

void invocationFailed(FailureDescription failure)

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

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

void invocationStarted(IInvocationContext context)

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

final void logAssociation(String dataName, LogFile logFile)

Dans certains cas, le journal doit être fortement associé à un 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.

void processFinalInvocationLogs(TestRecordProto.TestRecord invocationLogs)

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

void processFinalProto(TestRecordProto.TestRecord finalRecord)

Gestion du prototype final avec tous les résultats.

void processStartInvocation(TestRecordProto.TestRecord invocationStartRecord, IInvocationContext invocationContext)

Gestion du proto d'enregistrement de test d'appel partiel après l'événement invocationStarted(com.android.tradefed.invoker.IInvocationContext).

void processTestCaseEnded(TestRecordProto.TestRecord testCaseRecord)

Gestion du proto d'enregistrement du cas de test finalisé après l'événement ERROR(/#testEnded(com.android.tradefed.result.TestDescription,long,HashMap)).

void processTestCaseStarted(TestRecordProto.TestRecord testCaseStartedRecord)

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

void processTestModuleEnd(TestRecordProto.TestRecord moduleRecord)

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

void processTestModuleStarted(TestRecordProto.TestRecord moduleStartRecord)

Gestion du protocole d'enregistrement partiel du module après l'événement testModuleStarted(com.android.tradefed.invoker.IInvocationContext).

void processTestRunEnded(TestRecordProto.TestRecord runRecord, boolean moduleInProgress)

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

void processTestRunStarted(TestRecordProto.TestRecord runStartedRecord)

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

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

Renvoie "True" si le signaleur accepte les résultats détaillés, ou "False" dans le cas contraire.

final void testAssumptionFailure(TestDescription test, String trace)

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

final void testAssumptionFailure(TestDescription test, FailureDescription failure)

Appelé lorsqu'un test atomique indique qu'il suppose une condition 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.

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)

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

final void testFailed(TestDescription test, String trace)

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

Signale 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, runMetrics)

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

final void testRunFailed(FailureDescription failure)

L'exécution du test des rapports a échoué en raison d'un échec décrit par FailureDescription.

final void testRunFailed(String errorMessage)

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

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

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

final void testRunStarted(String runName, int testCount)

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

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

Indique 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 inhabituelle.

final void testStarted(TestDescription test, long startTime)

Alternative à testStarted(com.android.tradefed.result.TestDescription), où nous spécifions également le moment où le test a commencé, combiné à ERROR(/#testEnded(com.android.tradefed.result.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'appel a pris fin, que ce soit avec succès ou en raison d'une condition d'erreur.

Appelé automatiquement par le framework TradeFederation.

Paramètres
elapsedTime long: temps écoulé de l'appel en ms

invocationFailed

public void invocationFailed (FailureDescription failure)

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

Appelé automatiquement par le framework TradeFederation.

Paramètres
failure FailureDescription: FailureDescription décrivant la cause de l'échec

invocationFailed

public void invocationFailed (Throwable cause)

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

Appelé automatiquement 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 du test.

Appelé automatiquement 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'appel

logAssociation

public final void logAssociation (String dataName, 
                LogFile logFile)

Dans certains cas, le journal doit être fortement associé à un 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. Ainsi, ce rappel permet de fournir explicitement une association forte.

Paramètres
dataName String: nom des données

logFile LogFile: LogFile enregistré précédemment et qui doit être associé au cas de test.

processFinalInvocationLogs

public void processFinalInvocationLogs (TestRecordProto.TestRecord invocationLogs)

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

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

processFinalProto

public void processFinalProto (TestRecordProto.TestRecord finalRecord)

Gestion du prototype final avec tous les résultats.

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

processStartInvocation

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

Gestion du proto d'enregistrement de test d'appel partiel après l'événement invocationStarted(com.android.tradefed.invoker.IInvocationContext).

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

invocationContext IInvocationContext: l'appel IInvocationContext.

processTestCaseEnded

public void processTestCaseEnded (TestRecordProto.TestRecord testCaseRecord)

Gestion du proto d'enregistrement du cas de test finalisé après l'événement ERROR(/#testEnded(com.android.tradefed.result.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 du scénario de test partiel après l'événement testStarted(com.android.tradefed.result.TestDescription, long).

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

processTestModuleEnd

public void processTestModuleEnd (TestRecordProto.TestRecord moduleRecord)

Gestion du 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 protocole d'enregistrement partiel du module après l'événement testModuleStarted(com.android.tradefed.invoker.IInvocationContext).

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

processTestRunEnded

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

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

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

moduleInProgress boolean: indique si un module est en cours d'exécution.

processTestRunStarted

public void processTestRunStarted (TestRecordProto.TestRecord runStartedRecord)

Gestion du proto d'enregistrement d'exécution de test partiel 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 signaleur accepte les résultats détaillés, ou "False" dans le cas contraire.

Renvoie
boolean

testAssumptionFailure

public final void testAssumptionFailure (TestDescription test, 
                String trace)

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

Paramètres
test TestDescription: identifie le test

trace String: trace de la pile de l'échec

testAssumptionFailure

public final void testAssumptionFailure (TestDescription test, 
                FailureDescription failure)

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

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

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)

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

Appelé entre testStarted et testEnded.

Paramètres
test TestDescription: identifie le test

trace String: trace de la pile de l'é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 ()

Signale 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 exécuteurs basés sur une suite.

Paramètres
moduleContext IInvocationContext: IInvocationContext du module.

testRunEnded

public final void testRunEnded (long elapsedTimeMillis, 
                 runMetrics)

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

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

runMetrics : paires clé-valeur signalées à la fin d'une exécution de test

testRunFailed

public final void testRunFailed (FailureDescription failure)

L'exécution du test des rapports a échoué 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 a échoué 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'une 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

attemptNumber int: numéro de commande, identifiant les différentes tentatives du même runName exécutées plusieurs fois. Le nombre d'essais est indexé à 0 et doit augmenter à chaque exécution. Par exemple, si un test est réessayé trois fois, il doit comporter quatre exécutions au total sous le même nom d'exécution, et le nombre d'essais doit être compris entre 0 et 3.

testRunStarted

public final void testRunStarted (String runName, 
                int testCount)

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

Indique le début d'une 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

attemptNumber int: numéro de commande, identifiant les différentes tentatives du même runName exécutées plusieurs fois. Le nombre d'essais est indexé à 0 et doit augmenter à chaque nouvelle exécution. Par exemple, si un test est réessayé trois fois, il doit comporter quatre exécutions au total sous le même nom d'exécution, et le nombre d'essais 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 n'a pas été exécuté pour une raison inhabituelle. Nous allons tenter de réexécuter ces tests pour obtenir une exécution correcte.

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 le moment où le test a commencé, combiné à 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)

Indique le début d'un scénario de test individuel. Interface plus ancienne. Utilisez testStarted(com.android.tradefed.result.TestDescription) dans la mesure du 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