在 Espresso 中单击具有相同 ID 的多个视图之一
Clicking on one of many views with same id in Espresso
我有一个布局 (A) 多次包含另一个布局 (B)。布局 B 包含一个 ID 为 R.id.my_button
的按钮。因此,布局 A 包含许多具有相同 ID 的按钮。
如何测试使用浓缩咖啡点击这些按钮中的任何一个?
onView(withId(R.id.my_button)).perform(click());
在这种情况下并没有真正做任何事情。
可能您的布局 B 还包含一些独特的信息,比方说 TextView
和 unique name
。在这种情况下,您的代码将如下所示:
onView(allOf(withId(R.id.my_button), hasSibling(withText("unique name")))).perform(click());
可以在 Espresso Wiki # ViewMatchers 中找到更多示例。
我有一个布局 (A) 多次包含另一个布局 (B)。布局 B 包含一个 ID 为 R.id.my_button
的按钮。因此,布局 A 包含许多具有相同 ID 的按钮。
如何测试使用浓缩咖啡点击这些按钮中的任何一个?
onView(withId(R.id.my_button)).perform(click());
在这种情况下并没有真正做任何事情。
可能您的布局 B 还包含一些独特的信息,比方说 TextView
和 unique name
。在这种情况下,您的代码将如下所示:
onView(allOf(withId(R.id.my_button), hasSibling(withText("unique name")))).perform(click());
可以在 Espresso Wiki # ViewMatchers 中找到更多示例。