在Android Studio中,在androidTest文件夹中,我有这个测试用例:
@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秒,然后它退出活动,让我在启动器屏幕上。如何让Espresso留在屏幕上?
对不起,但这是不可能的。
请阅读此Google参考:Automating User Interface Tests
Espresso,Robotium,Calabash和其他UI测试框架是为简短的交互测试活动而制作的。它模拟用户的特定行为 - 运行应用程序,做一些技巧和(如果成功)而不是关闭应用程序。
当然,Espresso允许您创建自定义空闲资源,而不是在应用程序中注册它。
在特定时间内暂停测试的最简单方法是使用方法Thread.sleep(time_in_miliseconds)
,但就像我说它反对自动化测试的想法。