unitarias unit test studio run pruebas leer hacer ejemplo como codigo android gradle code-coverage android-studio

unit - test android codigo



¿Cómo obtener cobertura de código con Android Studio? (6)

Estoy desarrollando aplicaciones usando Android Studio.
Pude ejecutar el código de prueba.
Pero, no sé cómo obtener cobertura de código en el estudio de Android.

Ya he visto los siguientes enlaces.
Cobertura del código de Android Gradle
Pero no puedo esperar a que la actualización a v0.6 soporte a emma.

La configuración del proyecto es la siguiente.

Código principal
MyProject / AppName / src / main / java / mypackage / MyClass.java

Código de prueba
MyProject / AppName / src / instrumentTest / java / mypackage / test / MyClassTest.java

Configuración del proyecto
Mi proyecto
├─build.gradle
└─AppName
├─build.gradle
└─src
├─main
│ vajava
└─ │ pack mypackage
│ │ yMyClass.java
│ ├─res
│ └─AndroidManifest.xml
└─instrumentTest
└─java
└─mi paquete
└─test
└─MyClassTest.java


¿Has probado usar el complemento de Jacoco para obtener cobertura de código para tu proyecto? Es un buen complemento que le ofrece cobertura según su paquete o clases individuales. No estoy seguro de cómo configurar Jacoco para usar con Gradle ya que uso Maven. Mira el enlace : y mira si te ayuda



Con el nuevo Android Studio 1.2, puede ejecutar las pruebas de su unidad y ver la cobertura dentro del IDE.

Primero, deberás ejecutar las pruebas de tu unidad en el IDE. (si ya puede, omita este paso)

Esta guide y demo te ayudarán.

En segundo lugar, deberá crear una configuración de JUnit Run

Dentro de esta configuración, podrás elegir

  • Tipo de prueba: "Todo en paquete"
  • Paquete: [el paquete donde residen sus pruebas, por ejemplo: "com.myapp.tests"]
  • Buscar pruebas: a través de las dependencias del módulo (podría ser diferente para su configuración)
  • VM -opciones: -ea
  • Directorio de trabajo: [el directorio de su proyecto]
  • Utilice classpath de mod: [seleccione su módulo]

Si tiene algún problema al crear su configuración JUnit Run, debe visitar this guía para obtener ayuda.

Por último, en la versión más reciente de Android Studio, debería poder ejecutar su configuración de JUnit-Run haciendo clic en el botón ''Ejecutar con cobertura''.

En Android Studio 2.1.3, la etiqueta Run Unit tests with Coverage donde Unit test es el nombre de la configuración de prueba, como se muestra en la siguiente captura de pantalla:


Hay tantas respuestas que muestran cómo aplicar el plugin de jacoco al proyecto de estudio de Android, que está desactualizado, y me ha jacoco tanto tiempo encontrar la solución para el estudio de Android reciente (My Android Studio es la versión 2.1.2).

  • Jacoco complemento de Jacoco está integrado en Android Studio gradle, lo que debes hacer es habilitarlo de la siguiente manera:

buildTypes { ... debug { testCoverageEnabled true } }

  • Después de hacer lo anterior, ejecute la tarea de prueba unitaria ./gradlew testDebugUnitTest

  • A continuación, cree archivos de cobertura: ./gradlew createDebugCoverageReport

  • Los archivos de cobertura se crearán en la carpeta <module>/build/reports/coverage/debug , include index.html , que se puede abrir con el navegador, y report.xml que puede usar para obtener un informe de jenkins jacoco plugin u otro continúa las herramientas de integración.

Para aquellos que obtuvieron una cobertura del 0% con el jenkins jacoco plugin , asegúrese de usar la versión correcta. cita de su sitio :

Desafortunadamente JaCoCo 0.7.5 rompe la compatibilidad con los formatos binarios previos de los archivos jacoco.exec. El plugin de JaCoCo hasta la versión 1.0.19 se basa en JaCoCo 0.7.4, por lo que no puede usar esta versión con proyectos que ya usan JaCoCo 0.7.5 o posterior. El plugin JaCoCo que comienza con la versión 2.0.0 usa JaCoCo 0.7.5 y por lo tanto también requiere que esta versión se use en sus proyectos. Siga el plugin de JaCoCo 1.0.19 o inferior si aún utiliza JaCoCo 0.7.4 o inferior


No creo que puedas ver el informe de cobertura de código visual dentro de Android Studio. Pero podrías intentar con Jacoco . Tendrá que integrarlo en su archivo build.gradle . Puede encontrar la pregunta y la solución similares aquí