在利用robotframework框架做web自动化测试时,难免会遇到有中文的时候,比如遇到前端代码写的不规范,不得不采用css的type、title等属性来定位时,可能会遇到以下情况:
如图上所示代码,我在RF测试脚本中定位代码为:
Click Element xpath=//a[@title="主机"]
结果系统给了个一个大大的报错:
UnicodeEncodeError: 'ascii' codec can't encode characters in position 40-41: ordinal not in range(128)
看到ascii codec字样时,我就知道了肯定是中文编码问题,于是查了各方资料后,找到一个亲验可行办法:
1.在当前project下,找到External Libraries/Python2.7/Lib/site-packages/目录(以pycharm为例)
2.在该目录下创建一个python文件,名为 sitecustomize.py ,记住名称不要弄错了
3.在文件中加上两行代码即可:
import sys
sys.setdefaultencoding('utf-8')
保存后重新运行您的程序,相信您的问题已经解决了