如果带有齿轮图标的UIImage形式,我有一个带有注销按钮的应用程序。元素名称叫做settings_icon。我想要做的是轻轻点击该按钮以通过appium调用视图.Appiun能够找到该元素,但由于某种原因,它返回无法点击该元素。以下是日志
info:< - POST / wd / hub / session / 6ac7b1be-ed67-465e-8a70-0792b65f455e / elements 200 1566.971 ms - 105 {" status":0," value":[{" ELEMENT":" 6"},{&#34 ; ELEMENT":" 7"}],"的sessionId":" 6ac7b1be-ed67-465e-8a70-0792b65f455e"}
info: - > POST / WD /集线器/会话/ 6ac7b1be-ed67-465e-8a70-0792b65f455e /元件 {"使用":"名称""的sessionId":" 6ac7b1be-ed67-465e-8a70-0792b65f455e""值& #34;:" settings_icon"}
debug:将命令推送到appium工作队列: " au.getElementsByName(' settings_icon')"
debug:向仪器发送命令: au.getElementsByName(' settings_icon')debug:发送命令到 instruments:au.getElementsByName(' settings_icon')
debug:[INST] 2014-09-04 13:15:39 +0000调试:得到新命令16 instruments:au.getElementsByName(' settings_icon')
debug:[INST] 2014-09-04 13:15:39 +0000调试:评估 au.getElementsByName(' settings_icon&#39)
debug:[INST] 2014-09-04 13:15:40 +0000调试:评估完成
debug:[INST] 2014-09-04 13:15:40 +0000调试:查找返回[对象 UIAImage],名称为" settings_icon" (id:8)。
debug:[INST] 2014-09-04 13:15:40 +0000调试:回复:
debug:[INST] 2014-09-04 13:15:40 +0000 Debug:运行系统命令
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"}]} ...
debug:收到套接字数据(40字节)
debug:正在路由的套接字数据。 debug:得到了仪器的结果: {" status":0," value":[{" ELEMENT":" 8"}]} debug:响应客户端 成功: {"状态":0,"值":[{" ELEMENT":" 8"}],"的sessionId&#34 ;:" 6ac7b1be-ed67-465e-8a70-0792b65f455e"}
info:< - POST / wd / hub / session / 6ac7b1be-ed67-465e-8a70-0792b65f455e / elements 200 1450.216 ms - 89 {" status":0," value":[{" ELEMENT":" 8"}],&#34 ;的sessionId":" 6ac7b1be-ed67-465e-8a70-0792b65f455e"}
info: - > POST / WD /集线器/会话/ 6ac7b1be-ed67-465e-8a70-0792b65f455e /元件/ 8 /点击 {"的sessionId":" 6ac7b1be-ed67-465e-8a70-0792b65f455e"" ID":" 8"}
debug:将命令推送到appium工作队列:" au.tapById(' 8')"
debug:向乐器发送命令:au.tapById(' 8')debug:发送 对乐器的命令:au.tapById(' 8')
debug:[INST] 2014-09-04 13:15:41 +0000调试:得到新命令17 工具:au.tapById(' 8')
debug:[INST] 2014-09-04 13:15:41 +0000调试:评估 au.tapById(' 8&#39)
debug:[INST] 2014-09-04 13:15:41 +0000 Debug:UIAImage.tap()
debug:[INST] 2014-09-04 13:15:41 +0000调试: UIAImage不能 抽头
info: - > GET / wd / hub / status {}
debug:成功响应客户端: {"状态":0,"值" {"建立" {"版本":" 1.2.1&#34 ;,"修订":" 2a4b624a708e580709006b697dc4c9c4e3007863"}},"的sessionId":" 6ac7b1be-ed67-465e-8a70-0792b65f455e"}
info:< - GET / wd / hub / status 200 1.008 ms - 155 {"状态":0,"值" {"建立" {"版本":" 1.2.1&#34 ;,"修订":" 2a4b624a708e580709006b697dc4c9c4e3007863"}},"的sessionId":" 6ac7b1be-ed67-465e-8a70-0792b65f455e"}
debug:[INST] 2014-09-04 13:15:41 +0000错误:VerboseError:elementId 8无法点击
debug:收到套接字数据(57字节)
debug:正在路由的套接字数据。 debug:得到了仪器的结果: {" status":13," value":"无法点击elementId 8"}
info:< - POST / WD /集线器/会话/ 6ac7b1be-ed67-465e-8a70-0792b65f455e /元件/ 8 /点击 500 3509.769 ms - 200
debug:响应客户端出错: {" 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>
答案 0 :(得分:1)
难道你真的在UIImage上有一个UIButton或其他UI元素可以点击吗?如果是这样,您应该能够使用Appium Inspector查看此其他元素。
如果这不起作用,您可以尝试使用精确点击并使用精确坐标点击元素。有关如何使用带坐标的tap命令的信息,请参阅此链接: http://appium.wikia.com/wiki/Mobile_Commands