PythonUnitTestResultParser

public class PythonUnitTestResultParser
extends MultiLineReceiver

Objeto java.lang.
   ↳ com.android.ddmlib.MultiLineReceiver
     ↳ com.android.tradefed.testtype.PythonUnitTestResultParser


Interpreta el resultado de las pruebas ejecutadas con el framework de prueba de unidades de Python y lo traduce en llamadas. en una serie de ITestInvocationListener. Los resultados de estas pruebas siguen este EBNF: gramática:

TestReport ::= TestResult* Line TimeMetric [FailMessage*] Estado. TestResult ::= string \u201c(\u201cstring\u201d)\u201d \u201c\u2026\u201d SingleStatus. FailMessage ::= EqLine \u201cERROR:\u201d string \u201c(\u201cstring\u201d)\u201d Line Traceback Línea. SingleStatus ::= \u201cok\u201d | \u201cERROR\u201d. TimeMetric ::= \u201cRan\u201d número entero \u201cpruebas en\u201d número de punto flotante \u201ds\u201d. Estado ::= \u201cAceptar\u201d | \u201cFAILED (errores=\u201d int \u201c)\u201d. Traceback ::= string+.

Resultado de ejemplo (aprobando): test_size (test_rangelib.RangeSetTest) ... ok test_str (test_rangelib.RangeSetTest) ... ok test_subtract (test_rangelib.RangeSetTest) ... ok test_to_string_raw (test_rangelib.RangeSetTest) ... ok test_union (test_rangelib.RangeSetTest) ... ok

---------------------------------------------------------------------- Se realizaron 5 pruebas en 0.002 s

Aceptar

Resultado de ejemplo (con errores) test_size (test_rangelib.RangeSetTest) ... ERROR

===================================================================ERROR: test_size (test_rangelib.RangeSetTest) ---------------------------------------------------------------------- Repaso (más reciente call last): archivo "test_rangelib.py", línea 129, en test_rangelib surgen ValueError() ValueError ---------------------------------------------------------------------- Se ejecutó 1 prueba en 0.001 s ERROR (errores=1)

Resultado de ejemplo con varios casos extremos (error): testError (foo.testFoo) ... ERROR testExpectedFailure (foo.testFoo) ... testFail de falla esperado (foo.testFoo) ... FAIL testFailWithDocString (foo.testFoo) foo bar ... FAIL testOk (foo.testFoo) ... ok testOkWithDocString (foo.testFoo) foo bar ... ok testSkipped (foo.testFoo) ... se omitió el motivo "foo" testUnexpectedSuccess (foo.testFoo): éxito inesperado

ERROR: testError (foo.testFoo) ---------------------------------------------------------------------- Recuperación (última llamada más reciente): archivo "foo.py", línea 11, en testError self.assertEqual(2+2, 5/0) ZeroDivisionError: división de números enteros o módulo por cero

============================================================================================================================== (foo.testFoo) ---------------------------------------------------------------------- Recuperación (última llamada más reciente): archivo "foo.py", línea 8, en testFail self.assertEqual(2+2, 5) AssertionError: 4 != 5

=================================================================== barra de foo testFailWithDocString (foo.testFoo) ---------------------------------------------------------------------- Repaso (más reciente call last): archivo "foo.py", línea 31, en testFailWithDocString self.assertEqual(2+2, 5) AssertionError: 4 != 5

---------------------------------------------------------------------- Se realizaron 8 pruebas en 0.001 s

ERROR (errores=2, errores=1, omitido=1, fallas esperadas=1, éxitos inesperados=1)

PENDIENTE: Considera refactorizar toda la clase; el manejo está bastante desordenado en este momento.

Resumen

Constructores públicos

PythonUnitTestResultParser(ITestInvocationListener listener, String runName)

Crea un PythonUnitTestResultParser nuevo que informe el ITestInvocationListener determinado.

PythonUnitTestResultParser( listeners, String runName)

Crea un PythonUnitTestResultParser nuevo que informe a los ITestInvocationListener especificados.

PythonUnitTestResultParser( listeners, String runName, includeFilters, excludeFilters)

Crea un PythonUnitTestResultParser nuevo que se informe a los ITestInvocationListener especificados, con los filtros de inclusión y exclusión especificados.

Métodos públicos

void finalizeParser()
boolean isCancelled()
void processNewLines(String[] lines)

Procesar los resultados de la prueba de unidades de Python y, luego, informar los resultados analizados

void setFinalizeWhenParsing(boolean shouldFinalize)

Constructores públicos

PythonUnitTestResultParser

public PythonUnitTestResultParser (ITestInvocationListener listener, 
                String runName)

Crea un PythonUnitTestResultParser nuevo que informe el ITestInvocationListener determinado.

Parámetros
listener ITestInvocationListener

runName String

PythonUnitTestResultParser

public PythonUnitTestResultParser ( listeners, 
                String runName)

Crea un PythonUnitTestResultParser nuevo que informe a los ITestInvocationListener especificados.

Parámetros
listeners

runName String

PythonUnitTestResultParser

public PythonUnitTestResultParser ( listeners, 
                String runName, 
                 includeFilters, 
                 excludeFilters)

Crea un PythonUnitTestResultParser nuevo que se informe a los ITestInvocationListener especificados, con los filtros de inclusión y exclusión especificados.

Parámetros
listeners

runName String

includeFilters

excludeFilters

Métodos públicos

finalizarizeParser

public void finalizeParser ()

estáCancelada

public boolean isCancelled ()

Muestra
boolean

processNewLines

public void processNewLines (String[] lines)

Procesar los resultados de la prueba de unidades de Python y, luego, informar los resultados analizados

Se debe llamar a este método solo una vez con el resultado completo, a diferencia del método base en MultiLineReceiver

Parámetros
lines String

setFinalizeWhenParsing

public void setFinalizeWhenParsing (boolean shouldFinalize)

Parámetros
shouldFinalize boolean