¿Cómo resolver la excepción durante la construcción de la suite?

He seguido los siguientes pasos para probar mi aplicación.

  1. He creado Android Project.
  2. He creado la firma de depuración para mi aplicación de ejemplo y aplicación de prueba (que es necesario probar)
  3. Coloque el archivo sampleapp_debug.apk en la carpeta bin (donde está mi espacio de trabajo)
  4. Instaló el testapp_debug.apk en el emulador.
  5. Ahora estoy ejecutando el proyecto como un JunitTest de Android.

Estoy recibiendo el siguiente error .. Cómo resolver esto ..

java.lang.RuntimeException: Exception during suite construction at android.test.suitebuilder.TestSuiteBuilder$FailedToCreateTests.testSuiteConstructionFailed(TestSuiteBuilder.java:239) at java.lang.reflect.Method.invokeNative(Native Method) at android.test.AndroidTestRunner.runTest(AndroidTestRunner.java:169) at android.test.AndroidTestRunner.runTest(AndroidTestRunner.java:154) at android.test.InstrumentationTestRunner.onStart(InstrumentationTestRunner.java:520) at android.app.Instrumentation$InstrumentationThread.run(Instrumentation.java:1447) Caused by: java.lang.NullPointerException: Method name must not be null. at java.lang.ClassCache.findMethodByName(ClassCache.java:297) at java.lang.Class.getMethod(Class.java:985) at android.test.suitebuilder.TestMethod.getAnnotation(TestMethod.java:60) at android.test.suitebuilder.annotation.HasMethodAnnotation.apply(HasMethodAnnotation.java:39) at android.test.suitebuilder.annotation.HasMethodAnnotation.apply(HasMethodAnnotation.java:30) at com.android.internal.util.Predicates$OrPredicate.apply(Predicates.java:106) at android.test.suitebuilder.annotation.HasAnnotation.apply(HasAnnotation.java:42) at android.test.suitebuilder.annotation.HasAnnotation.apply(HasAnnotation.java:31) at com.android.internal.util.Predicates$NotPredicate.apply(Predicates.java:122) at android.test.suitebuilder.TestSuiteBuilder.satisfiesAllPredicates(TestSuiteBuilder.java:254) at android.test.suitebuilder.TestSuiteBuilder.build(TestSuiteBuilder.java:190) at android.test.InstrumentationTestRunner.onCreate(InstrumentationTestRunner.java:373) at android.app.ActivityThread.handleBindApplication(ActivityThread.java:4218) at android.app.ActivityThread.access$3000(ActivityThread.java:125) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2071) at android.os.Handler.dispatchMessage(Handler.java:99) at android.os.Looper.loop(Looper.java:123) at android.app.ActivityThread.main(ActivityThread.java:4627) at java.lang.reflect.Method.invokeNative(Native Method) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626) at dalvik.system.NativeStart.main(Native Method) 

Me enfrenté a un tipo similar de problema antes. He resuelto lo mismo mediante el constructor por defecto en Testcode en lugar de constructor parametrizado. El siguiente tutorial me resultó útil

Ver este tutorial

Me encuentro con el mismo error y esta solución funcionó para mí:

No utilice TestTextView público (nombre de cadena) pero TestTextView público () como constructor.

Como lo mencionó W.Elsinga en su comentario aquí Link

Su código de referencia era muy antiguo. Simplemente agregue el constructor por defecto.

 public StartActivityTest() { super(StartActivity.class); } 

Creo que el problema en el método: android.test.suitebuilder.TestMethod.getAnnotation() .
Trate de llamar al método setName() al constructor de la actividad.

Vea: RuntimeException mientras utiliza ActivityUnitTestCase, pero no mientras ActivityInstrumentationTestCase2

La excepción es causada por android.test.suitebuilder.TestMethod.getAnnotation() , también.

  • No se puede conseguir que Robotium funcione en Android Studio
  • Cómo generar informes para Android Automation
  • ¿Por qué Robotium es más lento cuando realiza tareas sencillas de interfaz de usuario en comparación con el código nativo de Android?
  • Cómo manejar la actividad de la aplicación externa en android utilizando robotium
  • Android: Colaboración de la interfaz de usuario (Jenkins + Spoon +?)
  • ¿Cómo probar automáticamente que las aplicaciones se comportan como se espera con respecto a otras actividades?
  • (Robotium) Cómo seleccionar un RadioButton en un RadioGroup
  • Pruebas de aceptación automatizadas para dispositivos iOS y Android
  • Falso positivos: junit.framework.AssertionFailedError: EditText no se encuentra
  • ¿Dónde puedo obtener una lista de todos los comandos Robotium?
  • Robotium. En la serie de pruebas cada prueba siguiente es afectada por la prueba anterior
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.