robotframework常见问题之日志不显示&乱码

1. RobotFramework运行中断后或重复运行后,ride中经常会出现控制面板不显示日志信息?
原因分析:可能是编码不支持中文
解决:进入自己本地python安装目录,修改"C:\Python27\lib\site-packages\robotide\contrib\testrunner\testrunner.py"文件方法中"return result.decode(‘UTF-8’)" 改为 “return result.decode(‘gbk’,‘ignore’)”。

PS:如还没解决,在包含执行用例的测试套件的Suite Teardown字段,添加Close Browser

2. Robot Framework 框架运行,Log显示中文乱码问题?
如这样:\u3e4d2\u77hhjj
原因分析:显示的乱码其实是Unicode编码格式,并不算Bug,只是显示问题
解决:
(1) 找到robotframework 安装目录下的unic.py文件,我的目录是/Library/Python/2.7/site-packages/robotframework-3.0.4-py2.7.egg/robot/utils/unic.py,在unic.py文件中插入如下代码:

import json
if isinstance(item,(list,dict,tuple)):
	try:
		item = json.dumps(item,ensure_ascii=False,encoding='utf-8')
	except UnicodeError:
		try:
      		 item = json.dumps(item, ensure_ascii=False, encoding='utf-8')
   		except:
       		pass
	except:
           pass

如下图
在这里插入图片描述
(2) 然后重启ride编辑器,再运行脚本,看Log中文显示是否正常
2.1 如果显示不正常,查看Python默认的编码方式
a. cmd 打开终端
b. 输入python
c. 输入import sys
d. 输入sys.getdefaultencoding()
在这里插入图片描述

查看python 的默认编码方式是不是utf8,不是将其改为utf8,步骤如下:
在Python的Lib、site-packages活页夹下新建一个sitecustomize.py文件,内容为:
#coding=utf8
import sys
reload(sys)
sys.defaultencoding(‘utf8’)
重启Python编辑器,输入2.1的命令确认编码是否被设置为utf8

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值