下载HTMLTestRunner.py 第三方库
下载地址:
python2:http://tungwaiyip.info/software/HTMLTestRunner.html
右键另存为下载HTMLTestRunner.py,将文件放到...\python\Lib目录下
python3:https://pan.baidu.com/s/1k4m6JFelcWH_QiHGlvjsUQ
HTMLTestRunner是基于Python2开发的,要支持python3,需要修改HTMLTestRunner.py文件中的部分内容。上面下载链接为已修改文件,将文件放到...\python\Lib目录下。
在python交互模式下导入HTMLTestRunner模块,系统没有报错则说明添加成功。
测试报告输出 htmltestrunner 及 中文乱码解决方案:
import sys
reload(sys)
sys.setdefaultencoding(\'utf-8\')
然后打开HTMLTestRunner.py源文件,找到如下行
# o and e should be byte string because they are collected from stdout and stderr?
if isinstance(o,str):
# TODO: some problem with \'string_escape\': it escape \n and mess up formating
# uo = unicode(o.encode(\'string_escape\'))
uo = o.decode(\'latin-1\')
else:
uo = o
if isinstance(e,str):
# TODO: some problem with \'string_escape\': it escape \n and mess up formating
# ue = unicode(e.encode(\'string_escape\'))
ue = e.decode(\'latin-1\')
else:
ue = e
添加utf-8的解码
# o and e should be byte string because they are collected from stdout and stderr?
if isinstance(o,str):
# TODO: some problem with \'string_escape\': it escape \n and mess up formating
# uo = unicode(o.encode(\'string_escape\'))
#uo = o.decode(\'latin-1\')
uo = o.decode(\'utf-8\')
else:
uo = o
if isinstance(e,str):
# TODO: some problem with \'string_escape\': it escape \n and mess up formating
# ue = unicode(e.encode(\'string_escape\'))
#ue = e.decode(\'latin-1\')
ue = e.decode(\'utf-8\')
else:
ue = e