1

ここに私の問題があります: Android アプリがあり、さまざまなメソッドのパフォーマンスをテストしたいと考えています。Android テスト プロジェクトを作成しましたが、初めて実行するとテストが成功します。2番目に実行する場合もありますが、コードを変更していないにもかかわらず、しばらくすると失敗します。アプリをアンインストールすると、最初の実行で再び成功します。エラーが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();
}

}

コンソールに次のように表示されます: Test run failed: Instrumentation run failed due to '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)

だから、私が間違っていることを知っている人はいますか?私はいくつかの援助を得るために本当に役に立ちます..前もって感謝します。

4

0 に答える 0