首次成功运行测试后的java.lang.IllegalStateException

时间:2013-06-12 09:15:22

标签: android testing android-activity illegalstateexception

这是我的问题: 我有一个Android应用程序,并希望测试不同方法的性能。 我写了一个android测试项目,第一次运行时测试成功。有时也在第二次运行它时,但过了一段时间它失败了,虽然我没有更改代码。当我卸载应用程序时,它会在第一次运行时再次成功。似乎我有一个“活动问题”,因为错误是java.lang.IllegalStateException。但对我来说,我甚至看不到哪个活动(这是否意味着测试项目的应用程序的活动?)我不知道如何解决问题。

我的测试文件:

several imports..

public class PersonalNetworkTest extends
ActivityInstrumentationTestCase2<PersonalNetworkMainActivity> {

private PersonalNetworkMainActivity mActivity;

public PersonalNetworkTest() {
    super(PersonalNetworkMainActivity.class);
  } 

@Override
  protected void setUp() throws Exception {
    super.setUp();
    setActivityInitialTouchMode(false);
    mActivity = getActivity();
 }  

public void testPreConditions2() {
    assertTrue(mActivity != null);
    assertTrue(mActivity.getPersonalNetworkInstance() != null);
    PersonalNetwork network = mActivity.getPersonalNetworkInstance();
    String test = "s";      
    network.addAlter(test);
        assertTrue(network.hasAlter(test));
}

protected void tearDown() throws Exception {
    super.tearDown();
}

}

控制台告诉我:测试运行失败:由于'java.lang.IllegalStateException'而导致检测运行失败

LogCat意味着:(我希望这是相关的片段..)

06-12 11:07:19.925: E/AndroidRuntime(31624): FATAL EXCEPTION: main
06-12 11:07:19.925: E/AndroidRuntime(31624): java.lang.IllegalStateException: Can not 
                    perform this action after onSaveInstanceState
06-12 11:07:19.925: E/AndroidRuntime(31624): at       
                           android.support.v4.app.FragmentManagerImpl.checkStateLoss(FragmentManager.java:1327)
06-12 11:07:19.925: E/AndroidRuntime(31624):    at android.support.v4.app.FragmentManagerImpl.enqueueAction(FragmentManager.java:1338)

所有人都知道我做错了什么吗?我会非常乐于帮助你。 提前谢谢。

0 个答案:

没有答案