最近在弄app的自动化 使用的是appium 的框架 但中间遇到问题,其中一个元素 我死活定位不到,连使用坐标定位方法tap 都试了 但还是定位不到 查资料,找度娘,问群友 困惑了我一整天
最后下班了,我突然想起之前使用selenium时 有些元素也是定位不到,但加上强制等待就可以了
我便抱着死马当活马医的心理去设置一个强制等待(time.sleep())
最后,最后。。。。。。。竟然真的定位到了。。。哇哈哈!!
(忽略上面那个小傻子)
。。。。
真的特别特别提醒各位道友,如果你定位一个元素,八大定位方式都定位不到,连坐标定位都不行,那么你一定要试试加一个强制等待(睡眠)-----------就算已经加个隐式等待也无效,别问我为什么 ,我也不知道
。。。。。。。
-------更新于写此文章1小时后:
大坑 大坑,在完成元素定位之后 写下此博文,然后就继续进行定位元素 因为下一个元素和上一个类似 有层级关系,是弹窗类的元素且此元素加载缓慢,所以上来我直接先叫程序睡眠4秒。。。
结果就悲剧了 我又用我的所有方法去定位此元素----定位不到,报错信息为此会话已结束InvalidSessionIdException: Message: A session is either terminated or not started
然后我就又百度啊,百度。。。。。又无结果,然后我将我的睡眠4秒去掉,结果竟然通了 能够定位成功
苍天啊 ,大地啊,appium真的坑 为什么我只是休眠了几秒,appium 就直接将这个活动给我结束了???
不加时间等待,你不给我过,加了你还不给我过!!!
我太难了!