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 construit un protobuf TestRecord avec tous les résultats à l'intérieur. 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)

Signale 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.

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 la possibilité de le faire sur le direct 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)

Manipulation du proto final avec tous les résultats.

void processStartInvocation (TestRecordProto.TestRecord invocationStartRecord, IInvocationContext invocationContext)

Traitement du proto d'enregistrement de test d'invocation partielle après invocationStarted(com.android.tradefed.invoker.IInvocationContext) .

void processTestCaseEnded (TestRecordProto.TestRecord testCaseRecord)

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

void processTestCaseStarted (TestRecordProto.TestRecord testCaseStartedRecord)

La gestion du proto d'enregistrement de cas de test partiel après testStarted(com.android.tradefed.result.TestDescription, long) s'est produite.

void processTestModuleEnd (TestRecordProto.TestRecord moduleRecord)

Gestion du proto d'enregistrement de module finalisé après que testModuleEnded() s'est produit.

void processTestModuleStarted (TestRecordProto.TestRecord moduleStartRecord)

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

void processTestRunEnded (TestRecordProto.TestRecord runRecord, boolean moduleInProgress)

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

void processTestRunStarted (TestRecordProto.TestRecord runStartedRecord)

Gestion du proto d'enregistrement d'exécution de test partiel après que testRunStarted(String, int) s'est 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 d'un module en cours d'exécution.

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

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

final void testRunFailed ( FailureDescription failure)

L'exécution du test de 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 testStarted ( TestDescription test, long startTime)

Alternative à testStarted(com.android.tradefed.result.TestDescription) où nous spécifions également quand le test a été lancé, 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

invocationEnded

public final 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 (FailureDescription failure)

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

Sera automatiquement appelé par le framework TradeFederation.

Paramètres
failure FailureDescription : la 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 : la cause ERROR(/Throwable) de l'échec

invocationStarted

public final 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

logAssociation

public final void logAssociation (String dataName, 
                LogFile logFile)

Dans certains cas, le journal doit être fortement associé à un cas de test, mais la possibilité de le faire sur le direct 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 callback permet de fournir explicitement une association forte.

Paramètres
dataName String : Le nom des données

logFile LogFile : le LogFile qui a été enregistré auparavant et qui doit être associé au cas 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 proto finalisé représentant l'invocation.

processFinalProto

public void processFinalProto (TestRecordProto.TestRecord finalRecord)

Manipulation du proto final avec tous les résultats.

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

processStartInvocation

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

Traitement du proto d'enregistrement de test d'invocation partielle après invocationStarted(com.android.tradefed.invoker.IInvocationContext) .

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

invocationContext IInvocationContext : l'invocation IInvocationContext .

processTestCaseEnded

public void processTestCaseEnded (TestRecordProto.TestRecord testCaseRecord)

Traitement du proto d'enregistrement de cas 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 cas de test.

processTestCaseStarted

public void processTestCaseStarted (TestRecordProto.TestRecord testCaseStartedRecord)

La gestion du proto d'enregistrement de cas de test partiel après testStarted(com.android.tradefed.result.TestDescription, long) s'est produite.

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

processTestModuleEnd

public void processTestModuleEnd (TestRecordProto.TestRecord moduleRecord)

Gestion du proto d'enregistrement de module finalisé après que testModuleEnded() s'est produit.

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

processTestModuleStartedprocessusTestModuleStarted

public void processTestModuleStarted (TestRecordProto.TestRecord moduleStartRecord)

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

Paramètres
moduleStartRecord TestRecordProto.TestRecord : Le 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 ERROR(/#testRunEnded(long,HashMap)) .

Paramètres
runRecord TestRecordProto.TestRecord : Le proto finalisé représentant la course.

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

processTestRunStarted

public void processTestRunStarted (TestRecordProto.TestRecord runStartedRecord)

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

Paramètres
runStartedRecord TestRecordProto.TestRecord : Le proto partiel représentant la course.

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

testAssumptionFailuretestAssumptionFailure

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 de pile de l'échec

testAssumptionFailuretestAssumptionFailure

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

Paramètres
test TestDescription : identifie le test

endTime long : l'heure à laquelle le test s'est terminé, mesurée via ERROR(/System#currentTimeMillis())

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

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 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 l'échec 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 de 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)

Signale le début d'un module en cours d'exécution. 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 la suite.

Paramètres
moduleContext IInvocationContext : le IInvocationContext du module.

testRunEnded

public final void testRunEnded (long elapsedTimeMillis, 
                 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
elapsedTimeMillis long : temps écoulé signalé par l'appareil, en millisecondes

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

testRunFailed

public final void testRunFailed (FailureDescription failure)

L'exécution du test de rapports n'a pas abouti 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 abouti en raison d'une erreur fatale.

Paramètres
errorMessage String : ERROR(/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 de l'exécution du test

testCount int : nombre total de tests en cours de test

attemptNumber int : numéro de commande, identifiant les différentes tentatives du même runName qui s'exécutent plusieurs fois. Le tryNumber est indexé à 0 et doit s'incrémenter à chaque fois qu'une nouvelle exécution se produit. Par exemple, un test est réessayé 3 fois de manière granulaire, il doit avoir 4 exécutions au total sous le même nom d'exécution et le nombre de tentatives 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 de l'exécution 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 de l'exécution du test

testCount int : nombre total de tests en cours de test

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

startTime long : l'heure à laquelle l'exécution a commencé, mesurée via ERROR(/System#currentTimeMillis())

testStarted

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é lancé, 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 à laquelle le test a commencé, mesurée via ERROR(/System#currentTimeMillis())

testStarted

public final 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

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