title: Test suite construction failed -(android.test.suitebuilder.TestSuiteBuilder$FailedToCreateTests). How to resolve?
body: <p>I'm new to Android application testing.I created an automation framework using java code. Then I tried to integrate the framework with the existing Robotium Test App. But then when i give <code>Run as</code>--> <code>Android Junit</code>,the test app gets installed successfully but it throws an exception <code>Exception during Suite construction.</code></p>
  
  <p>--I have got two java classes - for eg <code>Class1_Functional</code> library and <code>Class2_Automation</code> Framework.
  I created an object of the Class <code>Class2_Automation Framework</code> inside the Robotium framework and thus i could call the function declared inside the class where i guess the exception gets triggered. </p>
  
  <p>The below code shows my Robotium framework</p>
  
  <pre><code>package jp.list.app.test;
  
      import java.io.IOException;
      import java.util.Arrays;
      import android.app.Activity;
  
      import com.jayway.android.robotium.solo.Solo;
  
      import  android.test.ActivityInstrumentationTestCase2;
      import android.util.Log;
      import jp.list.app.test.Automation_Framework;
      @SuppressWarnings("unchecked")
      public class TestLogin1 extends ActivityInstrumentationTestCase2
      {
  
          ///////////////// 
          //Created the object of the class Automation framework where the exception occurs
          ////////////////
  
      private Automation_Framework autoobj = new Automation_Framework();
      private static final
      String  TARGET_PACKAGE_ID = "jp.list.app";
      private static final
      String LAUNCHER_ACTIVITY_FULL_CLASSNAME ="jp.list.app.JPActivity";
  
      //Parameters used for the Automation Framework
      String excel_path ="/mnt/sdcard/Automation_Framework_Robotium.xls";
  //  String excel_path ="C:\\Automation_Framework\\Automation_Framework_Robotium.xls";
      String screenshot_path ="/mnt/sdcard/Screenshots";
  //  String screenshot_path = "C:\\Automation_Framework\\Screenshots";
      String excelsheet_flow ="Execution_Flow";
      String excelsheet_data ="Data";
      int stepidindex_flow = 2 ;
      int tobeexctdindex_flow = 3;
      int funtionflowindex_flow = 6;
      int statusindex_flow = 7;
      int executioncommentsindex_flow = 8;
      int stepidindex_data = 0;
      int funtionnameindex_data = 1;
      int dataindex_data = 2;
      int elementidindex_data = 3;
  
      private static  Class&lt;?&gt;launcherActivityClass;
      static{
      try
      {
      launcherActivityClass = Class.forName(LAUNCHER_ACTIVITY_FULL_CLASSNAME);
      }
      catch(ClassNotFoundException e)
      {
      throw new
      RuntimeException(e);
      }
      }
      @SuppressWarnings({ "unchecked", "deprecation" })
      public TestLogin1() throws ClassNotFoundException
      {
          super(TARGET_PACKAGE_ID,launcherActivityClass);
  
      }
      private Solo solo;
      private Activity activity;
  
      @Override
      protected void setUp()throws Exception
      {
          super.setUp();
          this.activity=this.getActivity();
      this.solo = new Solo(getInstrumentation(),this.activity);
      }
  
      public void test_framework()
      {
          try {
              autoobj.driver_function(excel_path, screenshot_path, excelsheet_flow, stepidindex_flow, tobeexctdindex_flow, funtionflowindex_flow, statusindex_flow, executioncommentsindex_flow, excelsheet_data, stepidindex_data, funtionnameindex_data, dataindex_data, elementidindex_data);
          } catch (IOException e) {
              Log.v("output", e.toString());
              e.printStackTrace();
          } catch (InterruptedException e) {
              // TODO Auto-generated catch block
              e.printStackTrace();
          }
  
      }
      @Override
      public void tearDown()throws Exception
      {
      try
      {
      solo.finalize();
      }
      catch(Throwable e)
      {
      e.printStackTrace();
      }
      getActivity().finish();
      super.tearDown();
      }
      }
  </code></pre>
  
  <p>And my logcat output gives</p>
  
  <pre><code>----- begin exception -----
                  java.lang.RuntimeException: Exception during suite construction
                  at android.test.suitebuilder.TestSuiteBuilder$FailedToCreateTests.testSuiteConstructionFailed(TestSuiteBuilder.java:238)
                  at java.lang.reflect.Method.invokeNative(Native Method)
                  at java.lang.reflect.Method.invoke(Method.java:511)
                      at junit.framework.TestCase.runTest(TestCase.java:168)
                      at junit.framework.TestCase.runBare(TestCase.java:134)
                      at junit.framework.TestResult$1.protect(TestResult.java:115)
                      at junit.framework.TestResult.runProtected(TestResult.java:133)
                      at junit.framework.TestResult.run(TestResult.java:118)
                      at junit.framework.TestCase.run(TestCase.java:124)
                      at android.test.AndroidTestRunner.runTest(AndroidTestRunner.java:190)
                      at android.test.AndroidTestRunner.runTest(AndroidTestRunner.java:175)
                      at android.test.InstrumentationTestRunner.onStart(InstrumentationTestRunner.java:555)
                      at android.app.Instrumentation$InstrumentationThread.run(Instrumentation.java:1584)
                  Caused by: java.lang.reflect.InvocationTargetException
                      at java.lang.reflect.Constructor.constructNative(Native Method)
                  at java.lang.reflect.Constructor.newInstance(Constructor.java:417)
                      at android.test.suitebuilder.TestMethod.instantiateTest(TestMethod.java:87)
                      at android.test.suitebuilder.TestMethod.createTest(TestMethod.java:73)
                      at android.test.suitebuilder.TestSuiteBuilder.addTest(TestSuiteBuilder.java:262)
                  at android.test.suitebuilder.TestSuiteBuilder.build(TestSuiteBuilder.java:184)
                      at android.test.InstrumentationTestRunner.onCreate(InstrumentationTestRunner.java:379)
                      at android.app.ActivityThread.handleBindApplication(ActivityThread.java:4142)
                  at android.app.ActivityThread.access$1300(ActivityThread.java:130)
                      at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1255)
                      at android.os.Handler.dispatchMessage(Handler.java:99)
                      at android.os.Looper.loop(Looper.java:137)
                      at android.app.ActivityThread.main(ActivityThread.java:4745)
                      at java.lang.reflect.Method.invokeNative(Native Method)
                  at java.lang.reflect.Method.invoke(Method.java:511)
                      at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:786)
                      at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:553)
                      at dalvik.system.NativeStart.main(Native Method)
                   Caused by: java.lang.VerifyError: jp/list/app/test/Function_Lib_Robotium
                  at jp.list.app.test.Automation_Framework.&lt;init&gt;(Automation_Framework.java:37)
                      at jp.list.app.test.TestLogin1.&lt;init&gt;(TestLogin1.java:15)
                      ... 18 more
                   ----- end exception -----
  </code></pre>
  
  <p>Junit Exception:</p>
  
  <pre><code>java.lang.RuntimeException: Exception during suite construction
                  at android.test.suitebuilder.TestSuiteBuilder$FailedToCreateTests.testSuiteConstructionFailed(TestSuiteBuilder.java:238)
                  at java.lang.reflect.Method.invokeNative(Native Method)
                  at android.test.AndroidTestRunner.runTest(AndroidTestRunner.java:190)
                  at android.test.AndroidTestRunner.runTest(AndroidTestRunner.java:175)
                  at android.test.InstrumentationTestRunner.onStart(InstrumentationTestRunner.java:555)
                  at android.app.Instrumentation$InstrumentationThread.run(Instrumentation.java:1584)
                  Caused by: java.lang.reflect.InvocationTargetException
                  at java.lang.reflect.Constructor.constructNative(Native Method)
                  at java.lang.reflect.Constructor.newInstance(Constructor.java:417)
                  at android.test.suitebuilder.TestMethod.instantiateTest(TestMethod.java:87)
                  at android.test.suitebuilder.TestMethod.createTest(TestMethod.java:73)
                  at android.test.suitebuilder.TestSuiteBuilder.addTest(TestSuiteBuilder.java:262)
                  at android.test.suitebuilder.TestSuiteBuilder.build(TestSuiteBuilder.java:184)
                  at android.test.InstrumentationTestRunner.onCreate(InstrumentationTestRunner.java:379)
                  at android.app.ActivityThread.handleBindApplication(ActivityThread.java:4142)
                  at android.app.ActivityThread.access$1300(ActivityThread.java:130)
                  at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1255)
                  at android.os.Handler.dispatchMessage(Handler.java:99)
                  at android.os.Looper.loop(Looper.java:137)
                  at android.app.ActivityThread.main(ActivityThread.java:4745)
                  at java.lang.reflect.Method.invokeNative(Native Method)
                  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:786)
                  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:553)
                  at dalvik.system.NativeStart.main(Native Method)
                  Caused by: java.lang.VerifyError: jp/list/app/test/Function_Lib_Robotium
                  at jp.list.app.test.Automation_Framework.&lt;init&gt;(Automation_Framework.java:37)
                  at jp.list.app.test.TestLogin1.&lt;init&gt;(TestLogin1.java:15)
                  ... 18 more
  </code></pre>
  
  <p>I would really appreciate if anyone could provide me with a solution for the above query.</p>