【发布时间】:2014-10-29 06:42:00
【问题描述】:
如果 UIImage 的形式带有齿轮图标,我有一个应用程序,其中有退出按钮。元素名称称为 settings_icon。我想要做的是简单地点击该按钮以通过 appium 调用视图。Appiun 能够找到该元素,但由于某种原因,它返回无法点击该元素。以下是日志
信息:
信息:--> 发布 /wd/hub/session/6ac7b1be-ed67-465e-8a70-0792b65f455e/elements {"using":"name","sessionId":"6ac7b1be-ed67-465e-8a70-0792b65f455e","value":"settings_icon"}
调试:将命令推送到 appium 工作队列: "au.getElementsByName('settings_icon')"
调试:向仪器发送命令: au.getElementsByName('settings_icon') 调试:发送命令到 工具:au.getElementsByName('settings_icon')
调试:[INST] 2014-09-04 13:15:39 +0000 调试:从获取新命令 16 工具:au.getElementsByName('settings_icon')
调试:[INST] 2014-09-04 13:15:39 +0000 调试:评估 au.getElementsByName('settings_icon')
调试:[INST] 2014-09-04 13:15:40 +0000 调试:评估完成
调试:[INST] 2014-09-04 13:15:40 +0000 调试:查找返回 [object UIAImage],名称为“settings_icon”(id:8)。
调试:[INST] 2014-09-04 13:15:40 +0000 调试:响应:
调试:[INST] 2014-09-04 13:15:40 +0000 调试:运行系统命令
17:/Applications/Appium.app/Contents/Resources/node/bin/node /Applications/Appium.app/Contents/Resources/node_modules/appium/node_modules/appium-uiauto/bin/command-proxy-client。 js /tmp/instruments_sock 2,{"status":0,"value":[{"ELEMENT":"8"}]}...
调试:接收到的套接字数据(40 字节)
调试:正在路由的套接字数据。调试:从仪器获得结果: {"status":0,"value":[{"ELEMENT":"8"}]} 调试:响应客户端 成功: {"status":0,"value":[{"ELEMENT":"8"}],"sessionId":"6ac7b1be-ed67-465e-8a70-0792b65f455e"}
信息:
信息:--> 发布 /wd/hub/session/6ac7b1be-ed67-465e-8a70-0792b65f455e/element/8/click {"sessionId":"6ac7b1be-ed67-465e-8a70-0792b65f455e","id":"8"}
调试:将命令推送到 appium 工作队列:“au.tapById('8')”
调试:向仪器发送命令:au.tapById('8') 调试:发送 仪器命令:au.tapById('8')
调试:[INST] 2014-09-04 13:15:41 +0000 调试:从获取新命令 17 仪器:au.tapById('8')
调试:[INST] 2014-09-04 13:15:41 +0000 调试:评估 au.tapById('8')
调试:[INST] 2014-09-04 13:15:41 +0000 调试:UIAImage.tap()
调试:[INST] 2014-09-04 13:15:41 +0000 调试:UIAImage 不能 轻拍
信息:--> GET /wd/hub/status {}
调试:成功响应客户端: {"status":0,"value":{"build":{"version":"1.2.1","revision":"2a4b624a708e580709006b697dc4c9c4e3007863"}},"sessionId":"6ac7b1be-ed67-465e-8a70- 0792b65f455e"}
信息:
调试:[INST] 2014-09-04 13:15:41 +0000 错误:VerboseError:elementId 8个无法点击
调试:收到的套接字数据(57 字节)
调试:正在路由的套接字数据。调试:从仪器获得结果: {"status":13,"value":"elementId 8 无法被点击"}
信息:
调试:以错误响应客户端: {"status":13,"value":{"message":"发生未知的服务器端错误 处理命令时。","origValue":"elementId 8 不能 轻按"},"sessionId":"6ac7b1be-ed67-465e-8a70-0792b65f455e"}
当我手动操作时,该元素是可点击的。我尝试了路径以及元素的名称,但没有运气。即使在 Appium 检查器中,当我找到元素并执行 TAP 时,它也不起作用。
任何建议都会有所帮助。
添加 Appium 返回的元素属性
<UIAImage name="settings_icon" label="" value="" dom="" enabled="true" valid="true" visible="false" hint="" path="/0/0/3" x="0" y="737" width="140" height="22">
</UIAImage>
【问题讨论】: