Espresso Android:无法滚动并单击列表首选项中的特定项目

时间:2016-03-08 22:16:17

标签: listview automated-tests robotium android-testing android-espresso

Android Espresso测试:必须点击数字索引为14且在屏幕上不可见的项目。首先需要滚动到此特定项目,然后单击。成功地能够swipeUp()一直到底部,但我想要点击的项目在屏幕上不可见。有帮助吗?试过以下它不起作用:

onData(instanceOf(ListPreference.class)).inAdapterView(allOf(withId(android.R.id.list))).atPosition(14).perform(scrollTo());

3 个答案:

答案 0 :(得分:4)

请试试

onData(anything()).inAdapterView(withId(android.R.id.list)).atPosition(14).perform(click());

答案 1 :(得分:0)

使用onData时,无需关注滚动。 Espresso本身将确保您点击必要的项目。但是您应该指定要单击的项目。您可以在此处查看如何编写onData语句的示例(链接已删除,因为它指向恶意软件站点)

答案 2 :(得分:0)

onData(hasEntry(equalTo(ListViewSample.ROW_TEXT),is("List item: 20")))
.check(matches(isCompletelyDisplayed()));

上面的代码行将滚动列表直到第20行,检查显示2行上的元素。