点击回收站视图上的第一个匹配文本 Android espresso 测试
Tapping the first matching text on a recycler view Android espresso Testing
我正在尝试点击我的应用中匹配文本的第一个元素。
但是,目前我收到一条错误消息,告诉我由于我当前的代码行而存在多个匹配项。
onView(allOf(withId(R.id.offerSummaryLayout))).perform(RecyclerViewActions.actionOnItem(Matchers.allOf(hasDescendant(withText("Online sale"))), click()));
我怎样才能改变它,让它点击第一个匹配的元素?提前致谢
如果您有多个匹配项并且您只关心第一个匹配项,则可以创建一个自定义匹配器。 应该可以正常工作。
然后你可以做类似的事情(我稍微简化了你的代码 - 如果你只有一个条件,你不需要 Matchers.allOf
):
onView(withId(R.id.offerSummaryLayout)).perform(RecyclerViewActions
.actionOnItem(first(hasDescendant(withText("Online sale"))), click()));
我正在尝试点击我的应用中匹配文本的第一个元素。
但是,目前我收到一条错误消息,告诉我由于我当前的代码行而存在多个匹配项。
onView(allOf(withId(R.id.offerSummaryLayout))).perform(RecyclerViewActions.actionOnItem(Matchers.allOf(hasDescendant(withText("Online sale"))), click()));
我怎样才能改变它,让它点击第一个匹配的元素?提前致谢
如果您有多个匹配项并且您只关心第一个匹配项,则可以创建一个自定义匹配器。
然后你可以做类似的事情(我稍微简化了你的代码 - 如果你只有一个条件,你不需要 Matchers.allOf
):
onView(withId(R.id.offerSummaryLayout)).perform(RecyclerViewActions
.actionOnItem(first(hasDescendant(withText("Online sale"))), click()));