Cómo obtener cobertura de código en Android usando Maven (android-maven-plugin)
Tengo un proyecto de Android Maven (vamos a llamarlo proyecto_de_parentes ) que contiene varios submódulos: my_library_project , app_using_my_library_project , test_project y extra_lib .
Así, la estructura sería así:
- ¿Cómo integrar pepino en el proyecto de prueba de android-maven?
- Estructura de Directorio de Android Maven
- Plugin de maven android con la biblioteca de soporte de android v7
- Bibliotecas nativas que no están conectadas al APK usando android-maven-plugin
- Múltiples depósitos de maven en Gradle
parent_project * my_library_project (Android Library Project) * app_using_my_library_project (Demo app that uses the Android Library Project) * test_project (Project containing the tests instrumented against app_using_my_library_project) * extra_lib
Lo que me gustaría es generar una cobertura de prueba para mi proyecto de Android usando Maven (y no Ant, ya soy capaz de generar informes de cobertura de código usando Ant, siguiendo estas instrucciones: https://wiki.jenkins-ci.org/display/ JENKINS / Building + an + Android + app + y + test + proyecto ).
No tengo una fuerte preferencia por la herramienta de cobertura de código utilizada, pero preferiría EMMA, ya que parece la más común en el mundo de desarrollo de Android.
Estoy usando android-maven-plugin (http://code.google.com/p/maven-android-plugin/) en su versión 3.0.0-alfa-12 y ya he intentado poner en la configuración de mi Padre es pom.xml el siguiente:
<test> <coverage>true</coverage> <createreport>true</createreport> </test>
Pero eso no produce el informe de cobertura de código deseado.
Asi que:
- ¿Existe alguna diferencia entre la configuración de pom para obtener la cobertura de código para un proyecto Java estándar y un proyecto para Android?
- ¿Conoces algún ejemplo de proyecto de Android con Maven que tenga cobertura de código?
- ¿Algún consejo sobre cómo hacer esto?
- Gradle no puede resolver dependencias en Android Studio
- ¿Por qué falla Adb con el error ?
- Agregar biblioteca de Google Analytics a un proyecto de Maven
- Construir el proyecto android desde la línea de comandos con diferentes urls / Environment
- Unidad de pruebas de Android con Maven
- ¿Cómo uso andengine con maven?
- Adición de un proyecto Eclipse "Biblioteca Android" y construcción a través de Maven
- ¿Cómo publicar los apks en el Maven Central con gradle?
Si vas a seguir con maven, y quieres un plugin para maven que va a hacer el trabajo de código de cobertura, creo que Cobertura es una mejor opción, como Emma estable última construcción es a partir de 2005.
Aunque en "Android Application Testing Guide" (un libro reciente de junio de este año) hablan de Emma y demuestran cómo utilizarlo para las pruebas, creo que la gente se adhiere a ella, porque es necesario para construir Android desde el origen (y si Google utiliza Él para su propio desarrollo del OS, debe ser el mejor, la derecha?).
Si no estás fanáticamente obligado a Maven, te recomiendo probar Robotium . Robotium tiene soporte total para actividades, diálogos, tostadas, menús y menús de contexto. También es compatible con la cobertura de código (Ant basado, sin embargo, por ahora) y algunas personas lo reconocen como una de las principales plataformas de pruebas para Android.
Editar:
Según el sitio Cobertura , soporta la cobertura de código en los entornos Maven 1 y Maven 2. Aunque, usted puede encontrar ejemplos con Maven 3 también. Existe un problema entre las configuraciones de pom de Maven 2 y Maven 3. Parece que para que el reporte funcione debes mover básicamente tus viejos plugins de reporte en la sección de configuración del nuevo plugin de maven-site . (Ver el artículo para más detalles).
Otra opción es intentar usar Sonar con Maven. Sonar ha incorporado incrustaciones de cobertura (también opciones para incorporar EMMA ) y algunas personas afirman que han reportado con éxito cobertura de código, a pesar de que tuvieron problemas al usar el complemento de cobertura "stand-alone".
Podría generar la cobertura de código informó usando plugin de emma maven y mostrar informes en sonar para un proyecto de aplicación de Android. Solo sigue la configuración en https://code.google.com/p/maven-android-plugin/wiki/EmmaMaven . Pero para el proyecto de la biblioteca consigo una cobertura del 0%. No genera los archivos de metadatos. Sin embargo, tan pronto como cambiar el proyecto de la biblioteca a paquete como un apk, funciona como un encanto. Ejecuta las pruebas en un emulador (configurado en jenkins) y muestra los informes de cobertura. Si usted está mirando hacia fuera específicamente para el proyecto de la biblioteca, esto no ayudará. Voy a publicar si encuentro alguna solución que se ocupa de proyectos de la biblioteca.
- 75 marcadores en el mapa -> pérdidas de memoria -> OutOfMemoryException
- Android – crear una cámara virtual o sobrescribir el flujo real de la leva? (/ Dev / msm_camera / frame0, v4l2loopback)?