解决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有证书的加密解密实现方法
Nov 19 Python
Python中AND、OR的一个使用小技巧
Feb 18 Python
深入解析Python中的线程同步方法
Jun 14 Python
Python实现的概率分布运算操作示例
Aug 14 Python
实时获取Python的print输出流方法
Jan 07 Python
零基础使用Python读写处理Excel表格的方法
May 02 Python
Python递归及尾递归优化操作实例分析
Feb 01 Python
python计算导数并绘图的实例
Feb 29 Python
Python3批量创建Crowd用户并分配组
May 20 Python
python不同系统中打开方法
Jun 23 Python
python用分数表示矩阵的方法实例
Jan 11 Python
Python基于Opencv识别两张相似图片
Apr 25 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设计模式之单例模式实例分析
2015/02/25 PHP
php简单计算页面加载时间的方法
2015/06/19 PHP
浅谈PHP中try{}catch{}的使用方法
2016/12/09 PHP
php获取当前url地址的方法小结
2017/01/10 PHP
Laravel实现表单提交
2017/05/07 PHP
你真的了解JavaScript吗?
2007/02/24 Javascript
jQuery UI Dialog控件中的表单无法正常提交的解决方法
2010/12/19 Javascript
解决jquery submit()提交表单提示:f[s] is not a function
2013/01/23 Javascript
JS判断不同分辨率调用不同的CSS样式文件实现思路及测试代码
2013/01/23 Javascript
jquery让返回的内容显示在特定div里(代码少而精悍)
2014/06/23 Javascript
jQuery中prependTo()方法用法实例
2015/01/08 Javascript
使用pjax实现无刷新更改页面url
2015/02/05 Javascript
jQuery移动页面开发中的触摸事件与虚拟鼠标事件简介
2015/12/03 Javascript
深入学习AngularJS中数据的双向绑定机制
2016/03/04 Javascript
JS判断时间段的实现代码
2017/06/14 Javascript
js学习总结之dom2级事件基础知识详解
2017/07/27 Javascript
提升页面加载速度的插件InstantClick
2017/09/12 Javascript
原生JS实现的多个彩色小球跟随鼠标移动动画效果示例
2018/02/01 Javascript
p5.js 毕达哥拉斯树的实现代码
2018/03/23 Javascript
npm scripts 使用指南详解
2018/10/08 Javascript
在 Vue-CLI 中引入 simple-mock实现简易的 API Mock 接口数据模拟
2018/11/28 Javascript
Vue $mount实战之实现消息弹窗组件
2019/04/22 Javascript
vue递归获取父元素的元素实例
2020/08/07 Javascript
js canvas实现五子棋小游戏
2021/01/22 Javascript
[10:53]2018DOTA2国际邀请赛寻真——EG
2018/08/11 DOTA
python中int与str互转方法
2018/07/02 Python
Python实现高斯函数的三维显示方法
2018/12/29 Python
详解PyTorch手写数字识别(MNIST数据集)
2019/08/16 Python
Python并发请求下限制QPS(每秒查询率)的实现代码
2020/06/05 Python
Python如何读取、写入JSON数据
2020/07/28 Python
柯基袜:Corgi Socks
2017/01/26 全球购物
c语言常见笔试题总结
2016/09/05 面试题
高级工程师岗位职责
2013/12/15 职场文书
《锄禾》教学反思
2014/04/08 职场文书
大学活动总结范文
2014/04/29 职场文书
夫妻双方自愿离婚协议书
2014/10/24 职场文书