Appium (已解决) 升级 Appium 1.5.0 之后遇到的一个严重问题

rhyme · 2016年03月01日 · 最后由 Chris Wú 回复于 2016年03月02日 · 1725 次阅读

使用 find by name 方法时报错

Appium log 如下:

使用 1.4.16 版本,未发现上述问题,怀疑是 1.5.0 的问题,于是,到 github 去搜了一下,果然,已经有人提交了 issue,npm install appium on windows not support driver.findElement(By.name("Add Contact")) 提醒大家,升级要谨慎。。。

可使用 findElementByAndroidUIAutomator("text(String)") 方法代替

共收到 15 条回复 时间 点赞

升級前看看 release note 是常識吧。。

https://github.com/appium/appium/releases

#12 楼 @cy_suncheng 看 api name 是这样的

#12 楼 @cy_suncheng 看 api name 是这样的

#11 楼 @monkey 我感觉是在弱化从 selenium 而来的方法,而是更多的是用 UIautomator,肤浅的个人理解,不知道对不对。

#9 楼 @cy_suncheng 嗯,这个可以理解了。这个是实用了新框架么?但是按照 release note 也没有说,我去看看

感谢楼主尝鲜。

#6 楼 @monkey 经研究,可使用 findElementByAndroidUIAutomator("text(String)") 方法代替

@monkey 但是这个方法不是早就支持了么? http://appium.io/slate/en/1.5/?ruby#new-locator-strategies

#6 楼 @monkey 根据官方的文档,代替方法就是 accessibility_id

#5 楼 @cy_suncheng 有什么取而代之的方法么?

rhyme #11 · 2016年03月01日 Author

#1 楼 @lihuazhang
#2 楼 @b_88
是的,很不幸,确实移除了

Locator strategy 'name' was deprecated in earlier versions of Appium and has been removed in 1.5.

rhyme #12 · 2016年03月01日 Author

#1 楼 @lihuazhang 尝鲜有风险,哈哈

rhyme #13 · 2016年03月01日 Author

#2 楼 @b_88 真的么?我看官方文档没有说 remove 啊

这个不是 bug,是因为 by name 的这种定位方式已经在 1.5 中被移除了。

这次的 1.5.0 是完成了代码重构。。

需要 登录 後方可回應,如果你還沒有帳號按這裡 注册