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:\PycharmProject\BuddyTest1>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: '\xe2\x80\xaaD:\\ApiTestcase.xlsx'报错
方法:
方法1:路径大写D盘改成小写 ,不成功
方法2:
编码格式问题
import sys
reload(sys)
sys.setdefaultencoding('utf8')

猜你喜欢

转载自www.cnblogs.com/LinxiHuang/p/9286443.html