2011-10-20 15 views
2

Robotiumを使用して、アクティビティがonPause(),onDestroy()onResume()などの呼び出しを正しく処理することを確認するにはどうすればよいですか?私Robotium試験でRobotiumを使用したonPause()、onDestroy()のテスト

私は

solo.getCurrentActivity().onKeyDown(0, null); 

のようなものを呼び出すことができますが、どのように私は破壊され、再作成されている活動をシミュレートすることができますか?私は、私が使用できる任意の

solo.getCurrentActivity().onPause() 

または

solo.getCurrentActivity().onDestroy() 

方法が表示されませんか? これはRobotiumが設計されたものではありませんか?

答えて

1

これはあなたの活動を破壊し、新しいものを作成します。

getInstrumentation().runOnMainSync(new Runnable() { 
     @Override 
     public void run() { 
      activity.recreate(); 
     } 
    }); 
    setActivity(null); 
    activity = getActivity(); 

アップによる「activity.recreate()」の呼び出しにAPI 11とのこれだけ作品を。このテストでインスタンス状態の保存/復元を気にしない場合は、代わりに "activity.finish()"を呼び出すことができます。これはすべてのバージョンで使用できます。

関連する問題