Cómo automatizar las pruebas de actualización para android

Hemos estado usando espresso para la automatización de Android, y que incluye la actualización de pruebas

Para las pruebas de actualización, necesitamos realizar 3 pasos:

  1. Haga algunas acciones en la versión anterior para preparar algunos datos
  2. Actualizar a la nueva versión (instalación de la cubierta)
  3. Compruebe que los datos guardados en la versión antigua se han conservado correctamente y no hay ningún otro problema después de actualizar.

Actualmente lo estamos haciendo de una manera muy torpe:

#Before: prepare data on old version adb -s $DEVICE shell am instrument -e class com.example.test.upgrade.UpgradeTest#prepareDataIn${version} -w com.example.test/com.google.android.apps.common.testing.testrunner.GoogleInstrumentationTestRunner; #install new version adb -s $DEVICE install -r new_version.apk; #After: test after upgrading adb -s $DEVICE shell am instrument -e class com.example.test.upgrade.UpgradeTest#testUpgradeFrom${version} -w com.example.test/com.google.android.apps.common.testing.testrunner.GoogleInstrumentationTestRunner; 

Rompemos la prueba de actualización de una versión determinada en antes / después de dos partes, porque no sabemos si somos capaces (y cómo) para instalar la nueva versión dentro de una prueba.

Pero, esta prueba de 3 pasos por el comando adb sólo parece estúpido, y no podemos obtener un informe junit fácilmente.

¿Así que alguien sabe una mejor manera fácil de llevar a cabo las pruebas de actualización de Android, o podría señalar lo que estamos haciendo mal?

No se limita a Espresso, si está trabajando con otro marco, ¿cómo hacer la prueba de actualización con él?

Gracias por adelantado.

FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.