解决python3 HTMLTestRunner测试报告中文乱码的问题
程序员文章站
2023-10-28 09:21:34
使用htmltestrunner输出的测试报告中,标题和错误说明的中文乱码。
环境:
python v3.6
htmltestrunner v0.8.2
定位问题...
使用htmltestrunner输出的测试报告中,标题和错误说明的中文乱码。
环境:
python v3.6
htmltestrunner v0.8.2
定位问题
刚开始以为是python3对htmltestrunner文件兼容的问题。网上搜了一些解决办法基本都是说python2的,对比看了一下,我这边兼容性是可以的。
接下来,查看htmltestrunner文件输出,倒着去找,最后问题定位到:
self.stream.write(output)
这一行,print(output)是正常输出中文的,但是write()就是乱码。
其中,stream是运行生成报告时,传的stream参数,stream传空时,stream=sys.stdout,我这边传的是一个打开文件:
outfile = open(filename, 'w')
那么问题就是,outfile.write(output)时中文乱码。
解决方案
* 有两种解决办法 *
1、打开写入文件时设置编码
outfile = open(filename, 'w', encoding='utf-8')
2、打开文件时未设置编码,但写入方式设置为'wb';并且,output字符串encode()成utf-8编码。
以上这篇解决python3 htmltestrunner测试报告中文乱码的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。
推荐阅读
-
angular4 获取wifi列表中文显示乱码问题的解决
-
解决python3 urllib 链接中有中文的问题
-
ubuntu系统下matplotlib中文乱码问题的解决方法
-
关于Cookie中带有中文乱码报错的问题解决
-
Three.js使用THREE.TextGeometry创建三维文本中文乱码的问题如何解决?
-
解决asp.net core在输出中文时乱码的问题
-
解决3.01版的jquery.form.js中文乱码问题的解决方法
-
解决python3 HTMLTestRunner测试报告中文乱码的问题
-
通过过滤器(Filter)解决JSP的Post和Request中文乱码问题
-
php+AJAX传送中文会导致乱码的问题的解决方法