HTMLTestRunner修改Python3的版本
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了HTMLTestRunner修改Python3的版本,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2811字,纯文字阅读大概需要5分钟。
内容图文
![HTMLTestRunner修改Python3的版本](/upload/InfoBanner/zyjiaocheng/1115/bfd2613ad89347ae835641cf3eb166e1.jpg)
在拜读虫师大神的 Selenium2+Python2.7时,发现生成HTMLTestRunner的测试报告使用的HTMLTestRunner的模块是用的Python2的语法。而我本人比较习惯与Python3。而且自己也是用的Python3.4的环境,在网上找了很多资料,修改了下HTMLTestRunner.py
参考: http://bbs.chinaunix.net/thread-4154743-1-1.html
下载地址: http://tungwaiyip.info/software/HTMLTestRunner.html
修改后 HTMLTestRunner下载地址: http://pan.baidu.com/s/1tp3Ts
修改汇总:
第 94行,将import StringIO修改成import io
第 539行,将self.outputBuffer = StringIO.StringIO()修改成self.outputBuffer= io.StringIO()
第 642行,将if not rmap.has_key(cls):修改成if notcls in rmap:
第 766行,将uo = o.decode(‘latin-1‘)修改成uo = e
第 775行,将ue = e.decode(‘latin-1‘)修改成ue = e
第 631行,将print >> sys.stderr, ‘\nTime Elapsed: %s‘ %(self.stopTime-self.startTime)修改成print(sys.stderr, ‘\nTimeElapsed: %s‘ % (self.stopTime-self.startTime))
在 Python3.4下使用HTMLTestRunner,开始时,引入HTMLTestRunner模块报错。
在 HTMLTestRunner的94行中,是使用的StringIO,但是Python3中,已经没有StringIO了。取而代之的是io.StringIO。所以将此行修改成import io
在 HTMLTestRunner的539行中,self.outputBuffer =StringIO.StringIO()修改成self.outputBuffer = io.StringIO()
修改以后,成功引入模块了
运行测试脚本后,发现报错:
File"C:\Python34\lib\HTMLTestRunner.py", line 642, in sortResult
if not rmap.has_key(cls):
所以前往 642行修改代码:
运行后继续报错:
AttributeError: ‘str‘ object has noattribute ‘decode‘
前往 766,772行继续修改(注意:766行是uo而772行是ue,当时眼瞎,没有注意到这些,以为是一样的,导致报了一些莫名其妙的错误,折腾的半天):
修改后运行,发现又报错:
File"C:\Python34\lib\HTMLTestRunner.py", line 631, in run
print >> sys.stderr, ‘\nTime Elapsed: %s‘ %(self.stopTime-self.startTime)
TypeError: unsupported operand type(s)for >>: ‘builtin_function_or_method‘ and ‘_io.TextIOWrapper‘
前往 631查看,发现整个程序中,唯一一个print:
print >> sys.stderr, ‘\nTimeElapsed: %s‘ % (self.stopTime-self.startTime
这个是 2.x的写法,咱们修改成3.x的print,修改如下:
print(sys.stderr, ‘\nTime Elapsed: %s‘ %(self.stopTime-self.startTime))
继续运行脚本, OK运行成功
查看指定的目录生成了 result.html
点击打开报告:
原文:http://hzqldjb.blog.51cto.com/9587820/1590802
内容总结
以上是互联网集市为您收集整理的HTMLTestRunner修改Python3的版本全部内容,希望文章能够帮你解决HTMLTestRunner修改Python3的版本所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。