Tratando de probar un módulo de Android en la aplicación MultiDex, com.android.test.runner.MultiDexTestRunner no se reconoce
¿Alguien tiene alguna idea de por qué no puedo usar MultiDexTestRunner?
- La clase de prueba de Android falla al compilar en eclipse con error de "falta de coincidencia vinculada"
- NoClassDefFoundError al intentar ejecutar pruebas unitarias en Android Studio
- Android TestRunner falla debido a la excepción de IllegalState
- Prueba JUnit con Robolectric: java.lang.InstantiationException
- Pruebas unitarias con Android Studio y Gradle?
mi build.gradle contiene:
android { ... defaultConfig { ... multiDexEnabled true testInstrumentationRunner 'com.android.test.runner.MultiDexTestRunner' } dependencies { ... // Testing-only dependencies androidTestCompile 'com.android.support.test:runner:0.4.1' androidTestCompile 'com.android.support.test:rules:0.4.1' androidTestCompile 'junit:junit:4.12'
El complemento Android de Gradle es la versión 2.0.0-alpha2 (com.android.tools.build:gradle:2.0.0-alpha2)
//Runs all unit tests. @RunWith(Suite.class) @Suite.SuiteClasses({ACLTest.class}) public class UnitTestSuite { public UnitTestSuite() {} }
Clase de prueba:
@RunWith(AndroidJUnit4.class) @MediumTest public class ACLTest { static Context context; public ACLTest() { } @BeforeClass public static void setUpBeforeClass() { ... context = InstrumentationRegistry.getTargetContext(); } @Before public void setUpBeforeTest() throws Exception { ... } @After public void tearDown() throws Exception { ... } @Test public void aAGetInstance() throws Exception { ... } }
- (Unidad) Prueba de ArrayAdapter
- Android instrumentación prueba java.lang.UnsatisfiedLinkError en el uso de AndroidJunitRunner y AndroidJUnit4
- ¿Cómo puedo ejecutar una única prueba de Android con Kotlin?
- Prueba de unidad MVP usando mockito con los oyentes de eventos
- ¿Por qué AndroidTestCase.getContext (). GetApplicationContext () devuelve null?
- No se pudieron determinar las dependencias para todas las tareas con robolectric gradle plugin
- JUnit prueba para la aplicación de Android con fragmentos
- Unidad de prueba SparseArray utilizando JUnit (utilizando JVM)
He resuelto mi problema mediante la implementación de una extensión a android.support.test.runner.AndroidJUnitRunner y anular onCreate
public class MultiDexAndroidJUnitRunner extends AndroidJUnitRunner { @Override public void onCreate(Bundle arguments) { //To make it work on MultiDex environment. //https://plus.google.com/+OleksandrKucherenko/posts/i7qZdVEy3Ue MultiDex.install(getTargetContext()); super.onCreate(arguments); } }