python report中文显示乱码
环境:python2.7
测试框架:
nose (1.3.7)
nose-html-reporting (0.2.3)
问题:生成测试报告失败的时候,报告会抓取代码中的print,打开后看到的中文是乱码的。
问题的原因:
代码生成有这样一段:
def _format_output(self, o):
if isinstance(o, str):
return o.decode('latin-1')
else:
return o
可以看出来这个地方用了Latin1也就是是ISO-8859-1编码。
所以把这个地方的编码改为utf-8就可以了。修改后的代码如下:
def _format_output(self, o):
if isinstance(o, str):
# return o.decode('latin-1')
return o.decode('UTF-8')
else:
return o