ProtoResultReporter

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

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


El reportero de resultados compila un protobuf TestRecord con todos los resultados incluidos. Se debe extender para controlar qué hacer con el proto final en processFinalProto(TestRecord).

Resumen

Constructores públicos

ProtoResultReporter()

Métodos públicos

final void invocationEnded(long elapsedTime)

Informa que la invocación finalizó, ya sea correctamente o debido a alguna condición de error.

void invocationFailed(FailureDescription failure)

Informa una invocación incompleta debido a alguna condición de error.

void invocationFailed(Throwable cause)

Informa una invocación incompleta debido a alguna condición de error.

void invocationSkipped(SkipReason reason)

Informa que se omitió una invocación

void invocationStarted(IInvocationContext context)

Informa el inicio de la invocación de la prueba.

final void logAssociation(String dataName, LogFile logFile)

En algunos casos, el registro debe estar fuertemente asociado con los casos de prueba, pero no es posible hacerlo en la devolución de llamada directa de testLogSaved(String,LogDataType,InputStreamSource,LogFile).

void processFinalInvocationLogs(TestRecordProto.TestRecord invocationLogs)

Usa el registro de invocación para enviar uno por uno todos los registros finales de la invocación.

void processFinalProto(TestRecordProto.TestRecord finalRecord)

Es el control del proto final con todos los resultados.

void processStartInvocation(TestRecordProto.TestRecord invocationStartRecord, IInvocationContext invocationContext)

Control del prototipo de registro de prueba de invocación parcial después de que ocurrió invocationStarted(IInvocationContext).

void processTestCaseEnded(TestRecordProto.TestRecord testCaseRecord)

Control del proto del registro del caso de prueba finalizado después de que ocurrió testEnded(TestDescription,long,HashMap).

void processTestCaseStarted(TestRecordProto.TestRecord testCaseStartedRecord)

Control del proto de registro parcial del caso de prueba después de que ocurrió testStarted(TestDescription,long).

void processTestModuleEnd(TestRecordProto.TestRecord moduleRecord)

Control del proto de registro del módulo finalizado después de que ocurrió testModuleEnded().

void processTestModuleStarted(TestRecordProto.TestRecord moduleStartRecord)

Control del proto de registro del módulo parcial después de que ocurrió testModuleStarted(IInvocationContext).

void processTestRunEnded(TestRecordProto.TestRecord runRecord, boolean moduleInProgress)

Control del proto de registro de ejecución finalizado después de que ocurrió testRunEnded(long,HashMap).

void processTestRunStarted(TestRecordProto.TestRecord runStartedRecord)

Control del prototipo de registro de ejecución de prueba parcial después de que ocurrió testRunStarted(String,int).

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

Devuelve True si el reporter admite resultados detallados y False en caso contrario.

final void testAssumptionFailure(TestDescription test, String trace)

Se llama cuando una prueba atómica marca que supone una condición que es falsa

final void testAssumptionFailure(TestDescription test, FailureDescription failure)

Se llama cuando una prueba atómica marca que supone una condición que es falsa

final void testEnded(TestDescription test, long endTime, HashMap<String, MetricMeasurement.Metric> testMetrics)

Alternativa a testEnded(TestDescription,Map) en la que podemos especificar la hora de finalización directamente.

void testEnded(TestDescription test, HashMap<String, MetricMeasurement.Metric> testMetrics)

Informa el final de la ejecución de un caso de prueba individual.

final void testFailed(TestDescription test, FailureDescription failure)

Informa la falla de un caso de prueba individual.

final void testFailed(TestDescription test, String trace)

Informa la falla de un caso de prueba individual.

final void testIgnored(TestDescription test)

Se llama cuando no se ejecutará una prueba, generalmente porque un método de prueba está anotado con org.junit.Ignore.

final void testModuleEnded()

Informa el final de la ejecución de un módulo.

final void testModuleStarted(IInvocationContext moduleContext)

Informa el inicio de la ejecución de un módulo.

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

Informa el final de una ejecución de prueba.

final void testRunFailed(FailureDescription failure)

No se pudo completar la ejecución de prueba de informes debido a un error descrito por FailureDescription.

final void testRunFailed(String errorMessage)

Informa que no se pudo completar la ejecución de prueba debido a un error grave.

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

Informa el inicio de una ejecución de prueba.

final void testRunStarted(String runName, int testCount)

Informa el inicio de una ejecución de prueba.

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

Informa el inicio de una ejecución de prueba.

final void testSkipped(TestDescription test, SkipReason reason)

Se llama cuando se omite una prueba y no se ejecuta por un motivo que no se espera habitualmente.

final void testStarted(TestDescription test, long startTime)

Alternativa a testStarted(TestDescription) en la que también especificamos cuándo se inició la prueba, combinada con testEnded(TestDescription,long,Map) para una medición precisa.

final void testStarted(TestDescription test)

Informa el inicio de un caso de prueba individual.

Métodos protegidos

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

Crea una referencia secundaria para un módulo.

Constructores públicos

ProtoResultReporter

public ProtoResultReporter ()

Métodos públicos

invocationEnded

public final void invocationEnded (long elapsedTime)

Informa que la invocación finalizó, ya sea correctamente o debido a alguna condición de error.

El framework de TradeFederation lo llamará automáticamente.

Parámetros
elapsedTime long: Es el tiempo transcurrido de la invocación en ms.

invocationFailed

public void invocationFailed (FailureDescription failure)

Informa una invocación incompleta debido a alguna condición de error.

El framework de TradeFederation lo llamará automáticamente.

Parámetros
failure FailureDescription: Es el FailureDescription que describe la causa de la falla.

invocationFailed

public void invocationFailed (Throwable cause)

Informa una invocación incompleta debido a alguna condición de error.

El framework de TradeFederation lo llamará automáticamente.

Parámetros
cause Throwable: Es la causa Throwable de la falla.

invocationSkipped

public void invocationSkipped (SkipReason reason)

Informa que se omitió una invocación

Parámetros
reason SkipReason

invocationStarted

public void invocationStarted (IInvocationContext context)

Informa el inicio de la invocación de la prueba.

El framework de TradeFederation lo llamará automáticamente. Los reporteros deben anular este método para admitir informes de varios dispositivos.

Parámetros
context IInvocationContext: Información sobre la invocación

logAssociation

public final void logAssociation (String dataName, 
                LogFile logFile)

En algunos casos, el registro debe estar fuertemente asociado con los casos de prueba, pero no es posible hacerlo en la devolución de llamada directa de testLogSaved(String,LogDataType,InputStreamSource,LogFile). Por lo tanto, esta devolución de llamada permite proporcionar una asociación sólida de forma explícita.

Parámetros
dataName String: El nombre de los datos

logFile LogFile: Es el LogFile que se registró antes y que debe asociarse con el caso de prueba.

processFinalInvocationLogs

public void processFinalInvocationLogs (TestRecordProto.TestRecord invocationLogs)

Usa el registro de invocación para enviar uno por uno todos los registros finales de la invocación.

Parámetros
invocationLogs TestRecordProto.TestRecord: Es el .proto finalizado que representa la invocación.

processFinalProto

public void processFinalProto (TestRecordProto.TestRecord finalRecord)

Es el control del proto final con todos los resultados.

Parámetros
finalRecord TestRecordProto.TestRecord: Es el archivo .proto finalizado con todos los resultados de la invocación.

processStartInvocation

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

Control del prototipo de registro de prueba de invocación parcial después de que ocurrió invocationStarted(IInvocationContext).

Parámetros
invocationStartRecord TestRecordProto.TestRecord: Es el proto parcial que se completa después de invocationStart.

invocationContext IInvocationContext: Es la invocación IInvocationContext.

processTestCaseEnded

public void processTestCaseEnded (TestRecordProto.TestRecord testCaseRecord)

Control del proto del registro del caso de prueba finalizado después de que ocurrió testEnded(TestDescription,long,HashMap).

Parámetros
testCaseRecord TestRecordProto.TestRecord: Es el .proto finalizado que representa un caso de prueba.

processTestCaseStarted

public void processTestCaseStarted (TestRecordProto.TestRecord testCaseStartedRecord)

Control del proto de registro parcial del caso de prueba después de que ocurrió testStarted(TestDescription,long).

Parámetros
testCaseStartedRecord TestRecordProto.TestRecord: Es el proto parcial que representa el caso de prueba.

processTestModuleEnd

public void processTestModuleEnd (TestRecordProto.TestRecord moduleRecord)

Control del proto de registro del módulo finalizado después de que ocurrió testModuleEnded().

Parámetros
moduleRecord TestRecordProto.TestRecord: Es el archivo .proto finalizado que representa el módulo.

processTestModuleStarted

public void processTestModuleStarted (TestRecordProto.TestRecord moduleStartRecord)

Control del proto de registro del módulo parcial después de que ocurrió testModuleStarted(IInvocationContext).

Parámetros
moduleStartRecord TestRecordProto.TestRecord: Es el proto parcial que representa el módulo.

processTestRunEnded

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

Control del proto de registro de ejecución finalizado después de que ocurrió testRunEnded(long,HashMap).

Parámetros
runRecord TestRecordProto.TestRecord: Es el arquetipo finalizado que representa la ejecución.

moduleInProgress boolean: Indica si un módulo está en curso.

processTestRunStarted

public void processTestRunStarted (TestRecordProto.TestRecord runStartedRecord)

Control del prototipo de registro de ejecución de prueba parcial después de que ocurrió testRunStarted(String,int).

Parámetros
runStartedRecord TestRecordProto.TestRecord: Es el prototipo parcial que representa la ejecución.

setGranularResults

public void setGranularResults (boolean granularResults)

Parámetros
granularResults boolean

setInlineRecordOfChildren

public void setInlineRecordOfChildren (boolean inline)

Parámetros
inline boolean

supportGranularResults

public boolean supportGranularResults ()

Devuelve True si el reporter admite resultados detallados y False en caso contrario.

Muestra
boolean

testAssumptionFailure

public final void testAssumptionFailure (TestDescription test, 
                String trace)

Se llama cuando una prueba atómica marca que supone una condición que es falsa

Parámetros
test TestDescription: Identifica la prueba.

trace String: Es el seguimiento de pila de la falla.

testAssumptionFailure

public final void testAssumptionFailure (TestDescription test, 
                FailureDescription failure)

Se llama cuando una prueba atómica marca que supone una condición que es falsa

Parámetros
test TestDescription: Identifica la prueba.

failure FailureDescription: FailureDescription que describe la falla y su contexto.

testEnded

public final void testEnded (TestDescription test, 
                long endTime, 
                HashMap<String, MetricMeasurement.Metric> testMetrics)

Alternativa a testEnded(TestDescription,Map) en la que podemos especificar la hora de finalización directamente. Combínalo con testStarted(TestDescription,long) para obtener una medición precisa.

Parámetros
test TestDescription: Identifica la prueba.

endTime long: Es la fecha y hora en que finalizó la prueba, medida a través de System.currentTimeMillis().

testMetrics HashMap: Un Map de las métricas emitidas.

testEnded

public void testEnded (TestDescription test, 
                HashMap<String, MetricMeasurement.Metric> testMetrics)

Informa el final de la ejecución de un caso de prueba individual.

Si no se invocó testFailed(TestDescription, FailureDescription), esta prueba se aprobó. También devuelve las métricas de clave/valor que se hayan emitido durante la ejecución del caso de prueba.

Parámetros
test TestDescription: Identifica la prueba.

testMetrics HashMap: Un Map de las métricas emitidas.

testFailed

public final void testFailed (TestDescription test, 
                FailureDescription failure)

Informa la falla de un caso de prueba individual.

Se llamará entre testStarted y testEnded.

Parámetros
test TestDescription: Identifica la prueba.

failure FailureDescription: FailureDescription que describe la falla y su contexto.

testFailed

public final void testFailed (TestDescription test, 
                String trace)

Informa la falla de un caso de prueba individual.

Se llamará entre testStarted y testEnded.

Parámetros
test TestDescription: Identifica la prueba.

trace String: Es el seguimiento de pila de la falla.

testIgnored

public final void testIgnored (TestDescription test)

Se llama cuando no se ejecutará una prueba, generalmente porque un método de prueba está anotado con org.junit.Ignore.

Parámetros
test TestDescription: Identifica la prueba.

testModuleEnded

public final void testModuleEnded ()

Informa el final de la ejecución de un módulo.

testModuleStarted

public final void testModuleStarted (IInvocationContext moduleContext)

Informa el inicio de la ejecución de un módulo. Esta devolución de llamada está asociada a testModuleEnded() y es opcional en la secuencia. Solo se usa durante una ejecución que utiliza módulos: ejecutores basados en conjuntos de pruebas.

Parámetros
moduleContext IInvocationContext: Es el IInvocationContext del módulo.

testRunEnded

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

Informa el final de una ejecución de prueba. FIXME: No podemos tener dos interfaces Map<> con diferentes tipos, por lo que tenemos que usar HashMap aquí.

Parámetros
elapsedTimeMillis long: Tiempo transcurrido informado por el dispositivo, en milisegundos.

runMetrics HashMap: Pares clave-valor que se registran al final de una ejecución de prueba con Metric.

testRunFailed

public final void testRunFailed (FailureDescription failure)

No se pudo completar la ejecución de prueba de informes debido a un error descrito por FailureDescription.

Parámetros
failure FailureDescription: FailureDescription que describe la falla y su contexto.

testRunFailed

public final void testRunFailed (String errorMessage)

Informa que no se pudo completar la ejecución de prueba debido a un error grave.

Parámetros
errorMessage String: String que describe el motivo de la falla de la ejecución.

testRunStarted

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

Informa el inicio de una ejecución de prueba.

Parámetros
runName String: Es el nombre de una ejecución de prueba.

testCount int: Es la cantidad total de pruebas en la ejecución de prueba.

attemptNumber int: Es el número de pedido que identifica los diferentes intentos del mismo runName que se ejecuta varias veces. El valor de attemptNumber se indexa a partir de 0 y debe incrementarse cada vez que se ejecute una nueva prueba. Por ejemplo, si una prueba se reintenta de forma granular 3 veces, debería tener 4 ejecuciones totales con el mismo runName y el valor de attemptNumber debería ser de 0 a 3.

testRunStarted

public final void testRunStarted (String runName, 
                int testCount)

Informa el inicio de una ejecución de prueba.

Parámetros
runName String: Es el nombre de una ejecución de prueba.

testCount int: Es la cantidad total de pruebas en la ejecución de prueba.

testRunStarted

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

Informa el inicio de una ejecución de prueba.

Parámetros
runName String: Es el nombre de una ejecución de prueba.

testCount int: Es la cantidad total de pruebas en la ejecución de prueba.

attemptNumber int: Es el número de pedido que identifica los diferentes intentos del mismo runName que se ejecuta varias veces. El valor de attemptNumber se indexa a partir de 0 y debe incrementarse cada vez que se ejecute una nueva prueba. Por ejemplo, si una prueba se reintenta de forma granular 3 veces, debería tener 4 ejecuciones totales con el mismo runName y el valor de attemptNumber debería ser de 0 a 3.

startTime long: Es la hora en que comenzó la ejecución, medida a través de System.currentTimeMillis().

testSkipped

public final void testSkipped (TestDescription test, 
                SkipReason reason)

Se llama cuando se omite una prueba y no se ejecuta por un motivo que no se espera habitualmente. Se intentará volver a ejecutar estas pruebas para obtener una ejecución adecuada.

Parámetros
test TestDescription: Identifica la prueba.

reason SkipReason: SkipReason

testStarted

public final void testStarted (TestDescription test, 
                long startTime)

Alternativa a testStarted(TestDescription) en la que también especificamos cuándo se inició la prueba, combinada con testEnded(TestDescription,long,Map) para una medición precisa.

Parámetros
test TestDescription: Identifica la prueba.

startTime long: Es la fecha y hora en que comenzó la prueba, medida a través de System.currentTimeMillis().

testStarted

public final void testStarted (TestDescription test)

Informa el inicio de un caso de prueba individual. Es una interfaz más antigua. Se debe usar testStarted(TestDescription) siempre que sea posible.

Parámetros
test TestDescription: Identifica la prueba.

Métodos protegidos

afterModuleEnd

protected void afterModuleEnd ()

beforeModuleStart

protected void beforeModuleStart ()

createModuleChildReference

protected TestRecordProto.ChildReference createModuleChildReference (TestRecordProto.TestRecord record)

Crea una referencia secundaria para un módulo.

Parámetros
record TestRecordProto.TestRecord

Devuelve
TestRecordProto.ChildReference