Android Espresso swipeUp()执行后等待时间过长
我目前正在用浓缩咖啡库测试我的NavigationDrawer。 此测试的目的只是打开抽屉并单击每个项目 所有这些都可以很好地工作,除了当我在抽屉中间时,我会执行Android Espresso swipeUp()执行后等待时间过长,android,testing,swipe,android-espresso,Android,Testing,Swipe,Android Espresso,我目前正在用浓缩咖啡库测试我的NavigationDrawer。 此测试的目的只是打开抽屉并单击每个项目 所有这些都可以很好地工作,除了当我在抽屉中间时,我会执行perform(swipeUp()),这也可以工作,但是在滑动之后,它会等待大约30秒,然后再执行其余的测试 以下是我的测试代码: public void testNavigate() { String[] frags = new String[] { authActivity.getString(R.s
perform(swipeUp())
,这也可以工作,但是在滑动之后,它会等待大约30秒,然后再执行其余的测试
以下是我的测试代码:
public void testNavigate() {
String[] frags = new String[] {
authActivity.getString(R.string.title_fragment_vehicles),
authActivity.getString(R.string.title_fragment_smartphones),
authActivity.getString(R.string.title_fragment_tools),
authActivity.getString(R.string.title_fragment_pool),
authActivity.getString(R.string.title_fragment_users),
authActivity.getString(R.string.title_fragment_reporting),
authActivity.getString(R.string.title_fragment_taxes),
authActivity.getString(R.string.title_fragment_support),
authActivity.getString(R.string.title_fragment_settings)
};
for (String elem : frags) {
openDrawer(R.id.drawer_layout);
if (elem.equals(frags[frags.length / 2]))
onView(withId(R.id.drawer_layout)).perform(swipeUp());
onView(withText(elem)).perform(click());
}
}
这个测试通过了,唯一的问题是时间太长
我甚至试图通过更改参数来覆盖swipeUp()
方法:
private static ViewAction swipeUp() {
return new GeneralSwipeAction(Swipe.FAST, GeneralLocation.CENTER_LEFT,
GeneralLocation.TOP_LEFT, Press.FINGER);
}
仅供参考,我正在刷卡,因为我抽屉的最后一个元素不可见,因此我无法在不刷卡的情况下对其执行onClick()
。
我只针对一个元素滑动,可能该方法针对更多元素,这就是我尝试其他位置的原因
提前谢谢。不知道为什么这么慢,但是使用
scrollTo()
而不是刷卡怎么样?i、 e.onView(with text(elem)).perform(scrollTo(),click())代码>是的,这有点奇怪,因为等待时间不是恒定的:在模拟器上,这比在我的物理设备上快,这是一款功能强大的智能手机。不幸的是,我也没有成功地使scrollTo()工作。当您尝试scrollTo时发生了什么?您是否也注册了一些可能会减慢速度的空闲资源?它抛出了一个异常,表示elem不在我的视图层次结构中。我试图添加withId()方法,但结果是一样的。没有,我的应用程序都是本地的,只有静态资源。哦,抽屉布局中有列表视图吗?如果是这样,则需要使用onData来匹配延迟加载的列表项。