Robolectric 3.0 java.lang.NoSuchMethodException en crear actividad
Estaba emocionado de oír que el estudio de androide había hecho algunas actualizaciones para hacer la prueba de unidad simple de hacer en el estudio de Android, así que he estado tratando de configurar roboelectric pero no puedo pasar este error que se produce durante el siguiente método.
MainActivity = Robolectric.buildActivity(MainActivity.class).create().get();
con el siguiente stacktrace
- Mock Android Application class para pruebas con Robolectric en App con Dagger 2
- Android.content.res.Resources $ NotFoundException en Robolectric 2.4
- Android Robolectric Gradle - java.lang.OutOfMemoryError: PermGen espacio
- Robolectric falla al inflar el archivo de diseño si hay una vista personalizada
- SecurityProvider en Mockito Pruebas cuando se ejecuta junto a Robolectric
Causado por: java.lang.RuntimeException: java.lang.NoSuchMethodException: java.lang.Object.attach (android.content.Context, android.app.ActivityThread, android.app.Instrumentation, android.os.IBinder, int, android .app.Application, android.content.Intent, android.content.pm.ActivityInfo, java.lang.CharSequence, android.app.Activity, java.lang.String, android.app.Activity $ NonConfigurationInstances, android.content.res .Configuration) at org.robolectric.util.ReflectionHelpers.traverseClassHierarchy (ReflectionHelpers.java:248) at org.robolectric.util.ReflectionHelpers.callInstanceMethod (ReflectionHelpers.java:138) … más
¿Por qué esto está ocurriendo y qué puedo hacer para superarlo?
- El uso en la generación de procesos desapareció en Android Studio v1.3
- ¿Por qué se realiza la primera prueba con Robolectric tomando tanto tiempo?
- Cómo probar PreferenceFragment con Robolectric
- Agregue la información de la resolución al encargado del paquete de Robolectric
- Prueba de vistas personalizadas con Robolectric
- Roboelectric RoboAttributeSet - Cómo usar esto
- Obtención de ClassNotFoundException al ejecutar pruebas Robolectric con el complemento Maven surefire
- Recursos $ NotFoundException al usar Robolectric con Gradle
Si escribes unit tests
, entonces definitivamente puedes usar spy
y mock
's de la biblioteca de Mockito .
-
Agregar la dependencia de la biblioteca de Mockito:
testCompile 'org.mockito:mockito-core:2.0.3-beta'
-
Crear
Activity
espía en su método de prueba:Activity activity = spy(Activity.class);
Puede leer más sobre objetos de espionaje y simulacros para una mejor comprensión de sus propósitos.
- Enlace para seguir a alguien en WeChat / Weixin
- Android: Problemas de renderización de fuentes con .ttf> 3 MB