android android-testing cucumber-jvm

¿Cómo continuar una prueba de instrumentación de Android después de la excepción?



android-testing cucumber-jvm (2)

Las pruebas de instrumentación generan una excepción cuando algo sale mal (por ejemplo, algunas condiciones que desea verificar). Por lo general, se puede evitar que una prueba falle utilizando la instrucción try catch (o cambiando esas comprobaciones). En este caso, hay algo que hizo que Dalvik Virtual Machine se detuviera. Esto suele ser causado por un bloqueo en su aplicación. Intente verificar cuidadosamente el flujo de sus pruebas para analizar si hay algunos bloqueos. Además, asegúrese de no usar System.exit (0) en onDestroy () en algunas de sus actividades porque esto puede causar su problema. Espero poder ayudarte.

Aparentemente, una ejecución de prueba de instrumentación se detiene cuando ocurre una excepción en la aplicación instrumentada:

La prueba no se ejecutó hasta su finalización. Motivo: ''Falló la ejecución de la instrumentación debido a'' Excepción ''''. Compruebe el dispositivo Logcat para más detalles

¿Es este el comportamiento deseado o una configuración incorrecta en un corredor de instrumentación personalizado?

Estoy usando un MonitorinInstrumentation [1] personalizado para automatizar las pruebas de aceptación.

Desafortunadamente, la ejecución de la prueba se cancela cuando se produce una excepción en una prueba. Quiero que el conjunto de pruebas se complete y marque solo las pruebas fallidas, como en JUnit.

¿Existe un enfoque general para ejecutar pruebas (conectadas) sin abandonar toda la instrumentación en caso de que se produzca una excepción en una prueba?

  1. https://github.com/cucumber/cucumber-jvm/blob/master/examples/android/android-studio/Cukeulator/app/src/androidTest/java/cucumber/cukeulator/test/Instrumentation.java

Puedes intentar poner en tu root build.gradle

tasks.withType(Test) { ignoreFailures = true }

Según la documentación:

Si una de las pruebas falla, en cualquier dispositivo, la compilación fallará.

Compruebe esta prueba de Android