解决python3 HTMLTestRunner测试报告中文乱码的问题

  

使用HTMLTestRunner输出的测试报告中,标题和错误说明的中文乱码。

  

环境:   python v3.6

  

HTMLTestRunner v0.8.2   

<强>定位问题

  

刚开始以为是python3对HTMLTestRunner文件兼容的问题。网上搜了一些解决办法基本都是说python2的,对比看了一下,我这边兼容性是可以的。

  

接下来,查看HTMLTestRunner文件输出,倒着去找,最后问题定位到:

        self.stream.write(输出)      

这一行,打印(输出)是正常输出中文的,但是写()就是乱码。

  

其中,流是运行生成报告时,传的流参数,流传空时,流=sys.stdout,我这边传的是一个打开文件:

        输出文件=open (filename ' w ')      

那么问题就是,outfile.write(输出)时中文乱码。

  

  

<强> *有两种解决办法*

  

1,打开写入文件时设置编码

        输出文件=开放(文件名,“w”,编码=皍tf - 8”)      

2,打开文件时未设置编码,但写入方式设置为“白平衡”,并且,输出字符串()成utf - 8编码编码。

  

以上这篇解决python3 HTMLTestRunner测试报告中文乱码的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。

解决python3 HTMLTestRunner测试报告中文乱码的问题