解决python3 HTMLTestRunner测试报告中文乱码的问题
作者:monkey7777 发布时间:2021-10-19 04:34:06
标签:python3,HTMLTestRunner
使用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编码。
来源:https://blog.csdn.net/monkey7777/article/details/74989412
0
投稿
猜你喜欢
- 本文实例分析了python的私有属性和方法。分享给大家供大家参考。具体实现方法如下:python默认的成员函数和成员变量都是公开的,并且没有
- 远程(如通过互联网)连接access数据库的示例:首先,需要使用TCP/IP,ADO及XML(需要安装Microsoft XML 4.0。)
- 1) 使用字典dict()循环遍历出一个可迭代对象中的元素,如果字典没有该元素,那么就让该元素作为字典的键,并将该键赋值为1,如果存在就将该
- 其实我们平时在深度学习中所说的卷积操作,在 opencv 中也可以进行,或者说是类似操作。那么它是什么操作呢?它就是图像的模糊(滤波)处理。
- 本文实例讲述了Python使用PyCrypto实现AES加密功能。分享给大家供大家参考,具体如下:#!/usr/bin/env python
- Ursina是一个3D引擎,初步使用方法,见文章:详解Python 3D引擎Ursina如何绘制立体图形了解完Ursina的初步用
- 下面这段代码,你知道有哪些错误吗:var g_bar = "bar";function foo(container, c
- 不久前因业务需要,我在自己的笔记本中安装了搜霸。当时一个做平面的朋友过来和我做一些设计交流,我在笔记本前准备输入一个网址,他靠近我的电脑,大
- 代码如下:declare @Q_ID uniqueidentifier set @Q_ID = dbo.uf_GetParamValueBy
- 本文实例讲述了Python高级特性之闭包与装饰器。分享给大家供大家参考,具体如下:闭包1.函数参数:(1)函数名存放的是函数的地址 (2)函
- Pandas的apply函数概念(图解)实例1:怎样对数值按分组的归一化实例2:怎样取每个分组的TOPN数据来源:https://blog.
- 考虑以下python程序:#!/usr/bin/env pythonimport syssys.stdout.write("std
- 网页制作中需要把握好很多原则和细节,今天我们来谈谈网页设计中的平衡、对比、连贯和留白。一、平衡如果你的页面是平衡的,当用户浏览这个页面的时候
- HTML文档是互联网上的主要文档类型,但还存在如TXT、WORD、Excel、PDF、csv等多种类型的文档。网络爬虫不仅需要能够抓取HTM
- 写好脚本,注册好服务之后,经测试,ORACLE可以随RHEL启动而启动,但不能随系统关闭而关闭。在网上找答案,发现几乎所有的设置过程帖子都是
- 一. 虚拟环境搭建在开发中安装模块的方法:pip install 模块名称之前我们安装模块都是直接在物理环境下安装,这种安装方法,后面一次安
- 本文实例讲述了python生成器用法。分享给大家供大家参考,具体如下:1. 生成器利用迭代器,我们可以在每次迭代获取数据(通过next()方
- 熟悉css的开发者一定知道图像替换技术,也深知它的意义,Dave Shea 曾在他的一篇文章对此做了详细的总结,参看 Dave Shea’s
- 最近在做项目的时候经常会用到定时任务,由于我的项目是使用Java来开发,用的是SpringBoot框架,因此要实现这个定时任务其实并不难。后
- 深入认识Python内建类型——dict注:本篇是根据教程学习记录的笔记,部分内容与教程是相同的,因