我正在尝试使用 Espresso 进行测试,在 ListView 的特定元素内执行单击按钮的操作。
ListView中的每个元素都有一个按钮(R.id.my_button),我想单击第一个元素的按钮。
我尝试过: onData(任何东西())。 在位置(0)。 在适配器 View 中( 所有的( withId(R.id.my_button) ) )。 执行(点击());
实际结果: androidx.test.espresso.AmbigouslyViewMatcherException: '(with id: com.test.test:id/my_button)' 匹配层次结构中的多个 View 。
最佳答案
这可能会有所帮助, 进入 listView -> 第一个元素 -> 第一个元素的子元素(在您的例子中是按钮)
onData(anything()).inAdapterView(withId(R.id.list)).atPosition(0).onChildView(withId(R.id.my_button)).check(matches(isDisplayed())).perform(click());
关于java - Android Espresso 单击 ListView 内的按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56927198/