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


Posted in Python onDecember 17, 2018

使用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测试报告中文乱码的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python实现爬虫下载美女图片
Jul 14 Python
Python用threading实现多线程详解
Feb 03 Python
PyQt5利用QPainter绘制各种图形的实例
Oct 19 Python
python实现两个文件合并功能
Apr 01 Python
python编写暴力破解zip文档程序的实例讲解
Apr 24 Python
python中join()方法介绍
Oct 11 Python
使用Python编写Prometheus监控的方法
Oct 15 Python
用Python获取摄像头并实时控制人脸的实现示例
Jul 11 Python
Python 实现文件读写、坐标寻址、查找替换功能
Sep 11 Python
Python Opencv提取图片中某种颜色组成的图形的方法
Sep 19 Python
在Python中字典按值排序的实现方法
Nov 12 Python
python制作图形界面的2048游戏, 基于tkinter
Apr 06 Python
python3爬虫获取html内容及各属性值的方法
Dec 17 #Python
解决Python中list里的中文输出到html模板里的问题
Dec 17 #Python
python实现三次样条插值
Dec 17 #Python
Python命名空间的本质和加载顺序
Dec 17 #Python
对python的unittest架构公共参数token提取方法详解
Dec 17 #Python
Python单元测试unittest的具体使用示例
Dec 17 #Python
Python使用Selenium爬取淘宝异步加载的数据方法
Dec 17 #Python
You might like
用PHP和ACCESS写聊天室(一)
2006/10/09 PHP
php下使用strpos需要注意 === 运算符
2010/07/17 PHP
php+mysqli使用面向对象方式查询数据库实例
2015/01/29 PHP
宝塔面板在NGINX环境中TP5.1如何运行?
2021/03/09 PHP
在JavaScript中,为什么要尽可能使用局部变量?
2009/04/06 Javascript
Jquery为单选框checkbox绑定单击click事件
2012/12/18 Javascript
js导航菜单(自写)简单大方
2013/03/28 Javascript
jQuery蓝色风格滑动导航栏代码分享
2015/08/19 Javascript
理解javascript中DOM事件
2015/12/25 Javascript
jquery实现上传文件大小类型的验证例子(推荐)
2016/06/25 Javascript
js添加千分位的实现代码(超简单)
2016/08/01 Javascript
jQuery插件HighCharts绘制2D柱状图、折线图和饼图的组合图效果示例【附demo源码下载】
2017/03/09 Javascript
node+vue实现用户注册和头像上传的实例代码
2017/07/20 Javascript
JS实现左边列表移到到右边列表功能
2018/03/28 Javascript
Vue中的无限加载vue-infinite-loading的方法
2018/04/08 Javascript
微信小程序实现多个按钮的颜色状态转换
2019/02/15 Javascript
vue动态绑定class的几种常用方式小结
2019/05/21 Javascript
JavaScript 实现同时选取多个时间段的方法
2019/10/17 Javascript
webpack 如何同时输出压缩和未压缩的文件的实现步骤
2020/06/05 Javascript
python打开文件并获取文件相关属性的方法
2015/04/23 Python
python操作mongodb根据_id查询数据的实现方法
2015/05/20 Python
Python正规则表达式学习指南
2016/08/02 Python
python操作oracle的完整教程分享
2018/01/30 Python
Python3爬虫使用Fidder实现APP爬取示例
2018/11/27 Python
python调用动态链接库的基本过程详解
2019/06/19 Python
Spark处理数据排序问题如何避免OOM
2020/05/21 Python
css3 transform 3d 使用css3创建动态3d立方体(html5实践)
2013/01/06 HTML / CSS
英国领先的狗和宠物美容专家:Christies Direct
2017/04/03 全球购物
美国在线打印网站:Overnight Prints
2018/10/11 全球购物
回馈慈善的设计师太阳镜:DIFF eyewear
2019/10/17 全球购物
单位委托书格式范本
2014/09/29 职场文书
2015年个人实习工作总结
2014/12/12 职场文书
大学生自荐材料范文
2014/12/30 职场文书
与死神共舞观后感
2015/06/15 职场文书
SQL SERVER中的流程控制语句
2022/05/25 SQL Server
springboot为异步任务规划自定义线程池的实现
2022/06/14 Java/Android