UiAutomator 在屏幕上找不到 UiObject
Posted
技术标签:
【中文标题】UiAutomator 在屏幕上找不到 UiObject【英文标题】:UiAutomator cannot find UiObject that on a screen 【发布时间】:2020-07-06 11:32:21 【问题描述】:我尝试使用 UiAutomator 单击按钮,但收到错误 "androidx.test.uiautomator.UiObjectNotFoundException"
我尝试通过两种方式定位对象。
UiObject cartButton = uiDevice.findObject(new Selector().resourceId("R.id.group_cart_add_button"));
UiObject2 cartButton = uiDevice.findObject(By.res(InstrumentationRegistry.getInstrumentation().getTargetContext().getPackageName(), "R.id.group_cart_add_button"));
然后我使用cartButton.click()
,但两次都收到错误。
在层次结构中存在此对象
当我尝试在评估工具中找到它时,我可以做到:
但是如果我尝试点击,我会收到错误消息:
为什么?
【问题讨论】:
嗨,我也有同样的问题。有什么资料吗?这有什么更新吗? 【参考方案1】:您可以执行以下操作:
String packageName = "your-app-package-name"
String fullCartButtonResourceId = packageName + ":id/group_cart_add_button";
UiObject2 cartButton = mDevice.findObject(By.res(uk));
或
UiObject cartButton = findObject(new UiObject(new UiSelector().resourceId(fullCartButtonResourceId));
【讨论】:
以上是关于UiAutomator 在屏幕上找不到 UiObject的主要内容,如果未能解决你的问题,请参考以下文章
在通道 plugins.flutter.io/path_provider 上找不到方法 getApplicationDocumentsDirectory 的实现