"No se encontraron pruebas" para las pruebas de instrumentación de Lollipop y superiores

Mis pruebas de instrumentación (espresso) no se ejecutan en dispositivos Lollipop + y emuladores. Corren correctamente en cualquier otra plataforma. Tengo los mismos síntomas que el chico de este hilo: https://groups.google.com/forum/?fromgroups#!topic/adt-dev/QW5SuzQizNk

  • Mis pruebas están en src / androidTest / java /
  • He establecido testInstrumentationRunner 'android.support.test.runner.AndroidJUnitRunner'
  • Las clases de prueba son @RunWith (AndroidJUnit4.class)
  • Las pruebas individuales se anotan con @Test

Puedo ejecutar un ./gradlew connectedCheck y las pruebas corren bien en un dispositivo con KitKat, pero cuando intento ejecutar las mismas pruebas de la misma manera en un dispositivo con Lollipop recibo …

15: 02: 15.784 [WARN] [org.gradle.api.Task] Las pruebas en XT1095 – 5.1 fallaron: La ejecución de instrumentación falló debido a 'java.lang.NoClassDefFoundError'

15: 02: 16.011 [WARN] [org.gradle.api.Task] com.android.builder.testing.ConnectedDevice> No se encontraron pruebas. [XT1095 – 5.1] FALLA

15: 02: 16.011 [WARN] [org.gradle.api.Task] No se han encontrado pruebas. Esto generalmente significa que sus clases de prueba no están en la forma que su corredor de prueba espera (por ejemplo, no heredar de TestCase o carecer de anotaciones @Test).

Finalmente empezó a trabajar. He seguido esta respuesta: https://groups.google.com/d/msg/adt-dev/QW5SuzQizNk/mWdaEuuCCQAJ que enlaza con: https://github.com/google/dagger/issues/271

Básicamente, este era el problema:

Utilicé incorrectamente la compilación 'com.google.dagger: dagger-compiler: 2.0.2'

En lugar de apt correcto 'com.google.dagger: dagger-compiler: 2.0.2'

  • Recursos de la biblioteca con Robolectric 3 - JodaTime
  • Unidad que prueba una respuesta de red. Funciona al depurar, no cuando se ejecuta realmente
  • Nullpointerexception cuando compruebo para el servicio corriente en la prueba de Roboelectric
  • qué prueba de unidad, en aplicaciones Android
  • Android Espresso no espera que la interfaz de usuario finalice
  • ¿Cómo aprender correctamente las pruebas de Android?
  • ¿Cuál es la diferencia entre las carpetas src / androidtest y src / test?
  • Pasando Variables a través de la línea de comandos con Spoon / Espresso (android-test-kit)
  • 'Android.support.test.espresso no existe' cuando quiero usarlo para una prueba individual de apk
  • ¿Cómo puedo conseguir que Gradle para Android encuentre el código de prueba de una biblioteca dentro de otro código de prueba?
  • Cómo JUnit prueba IntentService
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.