Android: ejecución de pruebas instrumentadas en el servidor de TeamCity

Estoy construyendo un proyecto de Android Studio / Gradle en el servidor de TeamCity. Soy un poco nuevo en TeamCity. Actualmente, las pruebas de unidad generadas automáticamente por Android Studio se ejecutan automáticamente cuando el proyecto se construye en TeamCity y se muestran en "Pruebas". También tengo una prueba instrumentada (una prueba que se ejecuta en el dispositivo Android conectado), pero no se ejecuta automáticamente como las pruebas de unidad.

Mi solución fue añadir un paso de generación de Gradle en TeamCity para ejecutar la prueba instrumentada. Hasta ahora, he tenido poco éxito. He utilizado las tareas gradle uninstallAll connectedAndroidTest , que ejecuta la prueba instrumentada, pero el resultado de la prueba no aparece en "Tests" junto con las pruebas de unidad. Si la prueba instrumentada falla, la compilación falla, pero la prueba fallada todavía no aparece en "Pruebas".

¿Qué estoy haciendo mal? ¿Existe una manera correcta de ejecutar pruebas instrumentadas en TeamCity?

Puede ajustar la tarea de prueba:

test.dependsOn uninstallAll, connectedAndroidTest

Otra forma sería incluir su prueba (aunque no estoy seguro de si esto funcionará, ya que no estoy seguro de lo que están haciendo las tareas de uninstallAll y connectedAndroidTest): test {include 'org/foo/**'}

ConnectedAndroidTest mostrará los archivos especificando los resultados de la prueba de acuerdo con este patrón:

Archivos de resultados de las pruebas HTML: path_to_your_project / module_name / build / outputs / reports / androidTests / connected / directory. Archivos de resultado de la prueba XML: path_to_your_project / module_name / build / outputs / androidTest-results / connected / directory. (Desde aquí )

Utilizando ese archivo de salida, puede utilizar la función de procesamiento de informes XML de TeamCity. En su configuración de compilación, vaya a la pestaña Características de la construcción y agregue la función Procesamiento de informes XML. Utiliza la opción Google Test y apunta al directorio de salida del informe de la siguiente manera: Adición de la función de generación de informes XML

Después de eso, deberías ver tus resultados de prueba instrumentados aparecer en tus compilaciones como las pruebas regulares de JUnit:

Construir resultados incluyendo pruebas

  • Problema con Android IAP, sin OrderID en el objeto de compra
  • ¿Hay un comando ADB para habilitar / deshabilitar datos móviles? (Dispositivo enraizado)
  • Mockito en el emulador de Android
  • Prueba de Android fuera del espacio de almacenamiento
  • Prueba de AdMob antes de publicar
  • Soluciones actuales para probar aplicaciones de Android
  • Prueba de pérdidas de memoria en las aplicaciones de Android
  • ¿Cómo enviar eventos clave a un emulador sin cabeza en una prueba de instrumentación?
  • ¿Cómo forzar un cambio de orientación en una prueba de instrumentación de Android?
  • Prueba de GPS en Android
  • Android en las pruebas de suscripción de aplicaciones
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.