Appium+python使用过程中踩坑

Posted 拉努斯石

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Appium+python使用过程中踩坑相关的知识,希望对你有一定的参考价值。

记录Appium使用过程中的几个问题:

1、重新运行时出现selenium.common.exceptions.SessionNotCreatedException: Message: A new session could not be created. (Original error: Requested a new session but one was in progress)
原因是代码中没有杀死进程
查看appium进程:netstat -aon|findstr 4723
强制杀死进程:C:PycharmProjectBuddyTest1>TASKKILL /F /PID 7756


2、定位元素时会出现异常,程序会报错停止运行,有时想跳过异常执行下一步测试用例,需进行处理
NoSuchElementException异常:
1)定位错误
2)元素等待中
处理:
from selenium.common.exceptions import NoSuchElementException
try:

except:
打印
else:

例子:
#实名认证
def certificationBtn(self):
try:
self.by_text("实名认证")
except NoSuchElementException as msg:
print "查找实名认证元素异常"%msg
else:
return self.by_text("实名认证")

3、报错:URLError: <urlopen error [Errno 10061] >
原因:可能设置了代理
4、等待activity出现
原因:点击跳转时需等待某元素出现才可点击,不然报错,一般使用 time.sleep(seconds) ,但是等待的时间多久不确定。可使用等待activity函数。
使用:
# 等主页面activity出现,30秒内

driver.wait_activity(".base.ui.MainActivity", 30)
5、出现IOError: [Errno 22] invalid mode (‘rb‘) or filename: ‘xe2x80xaaD:\ApiTestcase.xlsx‘报错
方法:
方法1:路径大写D盘改成小写 ,不成功
方法2:
编码格式问题
import sys
reload(sys)
sys.setdefaultencoding(‘utf8‘)

 


































以上是关于Appium+python使用过程中踩坑的主要内容,如果未能解决你的问题,请参考以下文章

一路踩坑,搭建的Appium自动化测试环境

vue .js 使用中踩过的坑

配置Appium开发环境

Appium+Python 自动化测试之一:环境安装(Android篇)

喜马拉雅 Apache RocketMQ 消息治理实践

Redis连接池Lettuce踩坑记录