解决 HTMLTestRunner 中文显示乱码的问题
2014-10-14 20:24
441 查看
转载地址:http://testerhome.com/topics/1468
很多人在使用Python做自动化测试时都会用到Unittest测试框架,同时也会使用HTMLTestRunner来生成HTML格式的测试报告,但在生成的测试报告中如果存在中文时,会出现中文显示为乱码的现象,这是由于编码格式不一致所导致的问题。
在Google中搜索了一会儿,没有发现与该问题相关的信息,Github上也没有相关的Issues和Pull requests,我觉得可能有四种情况,一是用的人报告中没有出现中文,二是遇到了并解决了但没有记录或分享出来,三是遇到了但未解决,最后还有一种可能是我的搜索方式不够好,以至于没搜到,总之现在可以通过下面的方法来解决该问题。
1.在自己的测试脚本中加入下面的代码并保存:
2.打开HTMLTestRunner.py(基于Github上最新的代码),修改其中的第777行和第783行,将其中的编码“latin-1”修改为“utf-8”后保存,具体如下所示:
3.再次运行你的测试脚本
修改前
![](https://app.yinxiang.com/shard/s25/sh/b46f4f2b-2c5c-4701-b308-e746e5020bfc/7a9ed248e302eff480486027a5af8501/deep/0/test-result.png)
修改后
![](https://app.yinxiang.com/shard/s25/sh/d9bd8a88-eea0-4510-b94a-f37adac3273e/a8f37f480ee59dcb193e523a0a11c427/deep/0/test-result.png)
从截图中可以明显的看到错误信息显示出界,没有折行,该问题也在解决中。
问题解释
很多人在使用Python做自动化测试时都会用到Unittest测试框架,同时也会使用HTMLTestRunner来生成HTML格式的测试报告,但在生成的测试报告中如果存在中文时,会出现中文显示为乱码的现象,这是由于编码格式不一致所导致的问题。
解决方法
在Google中搜索了一会儿,没有发现与该问题相关的信息,Github上也没有相关的Issues和Pull requests,我觉得可能有四种情况,一是用的人报告中没有出现中文,二是遇到了并解决了但没有记录或分享出来,三是遇到了但未解决,最后还有一种可能是我的搜索方式不够好,以至于没搜到,总之现在可以通过下面的方法来解决该问题。1.在自己的测试脚本中加入下面的代码并保存:
import sys reload(sys) sys.setdefaultencoding('utf-8')
2.打开HTMLTestRunner.py(基于Github上最新的代码),修改其中的第777行和第783行,将其中的编码“latin-1”修改为“utf-8”后保存,具体如下所示:
if isinstance(o,str): # TODO: some problem with 'string_escape': it escape \n and mess up formating # uo = unicode(o.encode('string_escape')) uo = o.decode('utf-8') else: uo = o if isinstance(e,str): # TODO: some problem with 'string_escape': it escape \n and mess up formating # ue = unicode(e.encode('string_escape')) ue = e.decode('utf-8') else: ue = e
3.再次运行你的测试脚本
现象截图
修改前![](https://app.yinxiang.com/shard/s25/sh/b46f4f2b-2c5c-4701-b308-e746e5020bfc/7a9ed248e302eff480486027a5af8501/deep/0/test-result.png)
修改后
![](https://app.yinxiang.com/shard/s25/sh/d9bd8a88-eea0-4510-b94a-f37adac3273e/a8f37f480ee59dcb193e523a0a11c427/deep/0/test-result.png)
其他
从截图中可以明显的看到错误信息显示出界,没有折行,该问题也在解决中。
相关文章推荐
- 37、解决 HTMLTestRunner 中文显示乱码的问题
- HTMLTestRunner测试报告中文乱码问题解决
- 解决Fedora linux 下 Rhythmbox中文显示乱码的问题
- web用户控件显示中文乱码求教!!(问题已解决)
- 如何解决 linux 操作系统显示中文乱码问题?
- (转)解决flash中文显示方块的问题&gedit中文乱码问题
- 请教一个问题,Log4Net记录日志到Oracle显示中文乱码如何解决?
- 解决Zend Development中显示中文乱码的问题
- 彻底解决get显示提交时,参数中包含中文时出现乱码的问题
- 解决高版本 phpMyAdmin 中文显示乱码问题
- Asp : 生成xml数据 及解决Flex里的中文显示乱码问题。。。
- 解决向数据库中插入中文显示的是乱码问题!
- Weblogic Server中如何解决中文显示乱码问题
- SVN+Apache在windows下http访问 显示中文乱码问题的解决方法
- Ubuntu/Debian下JAVA 中文/图片中文字体乱码显示问题解决方法
- 解决中文显示乱码问题
- 解决Properties文件中的中文显示乱码问题
- 解决弹出OUTLOOK显示繁体中文乱码的问题
- 详细探讨字节码和字符码已经如果解决乱码问题和中文显示问题
- 解决Toad的中文显示乱码问题&EXCEL文件时中文乱码问题