2015-11-30 14 views
5

は、androidTestフォルダに、私はこのテストケースを持っていることをやってからそれを停止する方法:エスプレッソはテストが終了した後になぜアプリを離れるのですか? Androidのメーカーで

@RunWith(AndroidJUnit4.class) 
@LargeTest 
public class LoginActivityTest { 

    @Rule 
    public ActivityTestRule<LoginActivity> activityTestRule = 
      new ActivityTestRule<>(LoginActivity.class); 

    @Test 
    public void teamsListIsSortedAlphabetically() { 
     onView(withId(R.id.etEmail)).perform(click(), replaceText("[email protected]") 
     ); 
     onView(withId(R.id.etPassword)).perform(click(), replaceText("asdasd") 
     ); 
     onView(withId(R.id.bLoginSubmit)).perform(click()); 
    } 
} 

アプリはLoginActivityを起動し、ログインすると、次の活動を1〜2秒間表示され、ランチャーの画面に私を残して活動を終了します。エスプレッソをその画面に残すにはどうすればいいですか?

+0

[エスプレッソテストの完了時にAndroidアプリを残してください](http://stackoverflow.com/questions/29950640/leave-android-app-in-final-state-on-espresso-test-completion ) –

+0

あなたはこの質問をチェックしたいかもしれません:http://stackoverflow.com/questions/42299276/android-directly-launch-the-activity-fragment-that-is-under-development –

答えて

8

申し訳ありませんが、不可能です。自動化されたテストの考え方を十分に理解していないようです。

このGoogleのリファレンスをお読みください:

Automating User Interface Testsはエスプレッソ、Robotium、ひょうたんや他のUIテストフレームワークは、短い対話のテストイベントのために作られました。これは、ユーザーの特定の動作をシミュレートする - アプリケーションを実行する、いくつかのトリックを行い、成功した場合は、アプリケーションを閉じるよりも。

もちろん、エスプレッソではカスタムアイドルリソースを作成し、アプリに登録することができます。

特定の時間内にテストを休止させる最も簡単な方法は、使用方法Thread.sleep(time_in_miliseconds)ですが、私はそれが自動テストの考え方に反すると言いました。

関連する問題