2012-04-03 7 views
17

He visto varias publicaciones relacionadas con hacer que una compilación en Jenkins falle si falla la ejecución de la prueba de unidad (por ejemplo, one). Resulta que, por defecto, Jenkins informa compilaciones con pruebas fallidas como unstable y a algunas personas no les gusta eso. Esto, sin embargo, estará perfectamente bien para mí. Solo quiero poder diferenciar fácilmente las compilaciones con pasar las pruebas de las pruebas fallidas.Hacer que la versión de jenkins de Android falle si las pruebas fallan

Y aquí está el truco: Estoy desarrollando para Android entonces mi compilación está configurada siguiendo this page. Básicamente, las pruebas se ejecutan con el siguiente comando:

ant all clean emma debug install test 

Como informe de cobertura de resultados se genera y se publica en Jenkins.

Todas las publicaciones que he leído sobre la configuración del resultado de Jenkins de acuerdo con los resultados de las pruebas trataban con la manipulación de tareas ant. Sin embargo, si miramos el android build.xml, las pruebas de Android se ejecutan con el comando adb: adb shell am instrument .... No sé cómo configurar este comando para imprimir los resultados de las pruebas. Se puede configurar para imprimir el informe de cobertura. Ya lo hice, pero nunca pude hacer que la construcción fallara de acuerdo con el informe de cobertura.

Espero que alguien más también haya tenido el mismo problema y haya podido resolverlo. Cualquier orientación será muy apreciada.

+0

¿Sería [esto útil] (http://code.google.com/p/the-missing-android-xml-junit-test-runner/)? La idea es producir informes justos que Jenkins comprenda. –

+0

@malenkiy_scot Gracias por ese comentario. Esto podría funcionar. Lo probaré en los días siguientes. –

+0

@malenkiy_scot Por favor, publique su comentario como respuesta. Quiero darte la recompensa. Mi problema aún no está resuelto, pero esta es al menos una buena dirección. –

Respuesta

2

Esto es posible, configurar el servidor utilizando la siguiente documentación:

https://wiki.jenkins-ci.org/display/JENKINS/Android+Emulator+Plugin

Véase "Análisis de la salida mono" en el enlace.

adición, Jenkins puede probar instrumentación, a continuación tienen un enlace de un buen punto de partida en el aprendizaje de la instrumentación:

http://developer.android.com/resources/tutorials/testing/helloandroid_test.html

espero que sea útil.

screenshot of my project jenkins

+0

"http://developer.android.com/resources/tutorials/testing/helloandroid_test.html" ahora está roto – Gallal

+0

intente esto: http://developer.android.com/training/testing.html –

2

Considere el uso de 'the-missing-android-xml-junit-test-runner' - con la idea de producir jUnit informa que entiende Jenkins. Descargo de responsabilidad: no tengo experiencia personal con adb. Sin embargo, sé por experiencia que Jenkins trata con informes de jUnit generados correctamente.

Cuestiones relacionadas