RF中,中文默认是以unicode字符编码形式存在,入参有中文时,传递unicode字符会造成入参错误。
解决方案:
修改配置文件unic.py
该文件,RF安装方式的不同,存在的路径也不相同,如下
\Python27\Lib\site-packages\robotframework-3.0.2-py2.7.egg\robot\utils
或者
Python27\Lib\site-packages\robot\utils
修改步骤:
1.关闭ride,删除目录下的unic.pyc文件
2.修改unic.py文件,添加如下代码
import json
if isinstance(item, (list, dict, tuple)):
try:
item = json.dumps(item, ensure_ascii=False, encoding='utf-8')
except UnicodeDecodeError:
try:
item = json.dumps(item, ensure_ascii=False, encoding='gbk')
except:
pass
except:
pass