关键词:
使用python+selenium写好测试代码之后,对所要测试的web界面进行测试,测试完成之后,下一步需要考虑的就是如何将测试的结果信息生成测试报告。
在网上找了好多资料,发现大家采用的时HTMLTestRunner.py进行测试报告的生成,下载地址
一、修改HTMLTestRunner.py文件
下载完后,发现此文件使用python2编写,而本地使用的是python3,所以要对该代码做出修改,修改内容为:
1、94行,import StringIO修改为:import io,相应地539行改为:self.outputBuffer = io.BytesIO()
2、118行,self.fp.write(s) 修改为 self.fp.write(bytes(s,\'UTF-8\'))
3、631行,print >>sys.stderr, \'\\nTime Elapsed: %s\' % (self.stopTime-self.startTime)修改为 print(\'\\nTime Elapsed: %s\' % (self.stopTime-self.startTime),file=sys.stderr)
4、642行,if not rmap.has_key(cls):修改为:if not cls in rmap:
5、766行,uo = o.decode(\'latin-1\')修改为 uo = o,768行,uo = o改为uo = o.decode(\'UTF-8\')
772行,ue = e.decode(\'latin-1\')修改为 ue = e,774行,ue = e改为ue = e.decode(\'UTF-8\')
至于为什么这样修改,python3与python2有些语法不通,可根据出现的语法问题,进行定位。
二、导入
把HTMLTestRunner.py文件放置在python35下的lib文件夹下。
如果本地的Python lib文件目录无法找到,如图示,将该文件拷入lib目录
然后 import HTMLTestRunner,当输入import时,就可看到有提示出现。
三、代码测试
1 #coding=utf-8 2 from selenium import webdriver 3 from selenium.webdriver.common.by import By 4 from selenium.webdriver.support.ui import Select 5 6 import unittest 7 import time 8 import HTMLTestRunner 9 10 class JD(unittest.TestCase): 11 def setUp(self): 12 self.browser=webdriver.Chrome() 13 self.browser.implicitly_wait(30) 14 self.base_url="https://www.jd.com/" 15 self.verficationErrors=[] 16 self.accept_next_alert=True 17 def Login(self): 18 browser=self.browser 19 browser.get(self.base_url+\'/\') 20 browser.maximize_window() 21 browser.execute_script(\'javascript:login()\') 22 if __name__=="__main__": 23 #unittest.main() 24 testunit=unittest.TestSuite() 25 #将测试用例加入到测试容器中 26 testunit.addTest(JD("Login")) 27 #获取当前时间,这样便于下面的使用。 28 now = time.strftime("%Y-%m-%M-%H_%M_%S",time.localtime(time.time())) 29 #打开一个文件,将result写入此file中 30 fp=open("result"+now+".html",\'wb\') 31 runner=HTMLTestRunner.HTMLTestRunner(stream=fp,title=\'test result\',description=u\'result:\') 32 runner.run(testunit) 33 fp.close()
四、测试报告
测试报告界面有点不好看,后续进行改进。执行用例结果为error。再改进吧!
seleniumhtmltestrunner无法生成测试报告的总结(代码片段)
使用Python,HTMLTestRunner生成测试报告时,遇到很奇怪的问题,明明运行的结果,没有任何报错,就是不生成测试报告,纠结好久。google+baidu搜索结果也不满意,最后终于解决,先总结下。代码示例 #coding=utf-8fromseleniumimportwebdri... 查看详情
天气接口测试用例生成报告(代码片段)
...代码如下:importunittest,timefromBSTestRunnerimportBSTestRunner#接口测试报告生成(BSTestRunner)的下载地址:https://github.com/easonhan007/HTMLTestRunner#下载完后放到python的安装路径下的Lib目录下#指定测试用例和测试报告的路径test1=‘./tqwtest‘test... 查看详情
selenium测试报告生成找到测试报告路径实现发邮件(整合)(代码片段)
有这样的一个场景:假设生成的测试报告与多人相关,每个人都去测试服务器査看就会比较麻烦,如果把这种主动的且不及时的査看变成被动且及时的査收,就方便多了。整个程序的执行过程可以分为三个步骤:① ... 查看详情
testsuite测试报告生成(代码片段)
简介:HTMLTestRuner介绍1,无法使用pip安装,手工下载2,python3和python2语法不一致导致了HTMLTestRunner在py3中不兼容 解决办法:导入下面的HTMLTestRunner.py"""ATestRunnerforusewiththePythonunittestingframework.ItgeneratesaHT 查看详情
pytest生成测试报告(代码片段)
pip安装pipinstallpytest-html编写脚本importpytestclassTestClass(object):deftest_one(self):x="this"assert‘h‘inxdeftest_two(self):x="hello"assert‘h‘inx运行程序:pytest--html=report.html结果:C:UsershaiyDesktopcode 查看详情
天气接口测试用例生成报告(代码片段)
...代码如下:importunittest,timefromBSTestRunnerimportBSTestRunner#接口测试报告生成(BSTestRunner)的下载地址:https://github.com/easonhan007/HTMLTestRunner#下载完后放到python的安装路径下的Lib目录下#指定测试用例和测试报告的路径test1=‘./tqwtest‘test... 查看详情
selenium怎么生成测试报告?(代码片段)
相信很多同学会写selenium的测试脚本,但是不知道怎么写测试脚本的测试报告吧,没事,让我来给大家分享~~第一步:importunittest#引入unittest框架fromHTMLTestRunnerimportHTMLTestRunner#引入HTMLTestRunner第二步:#需要引入... 查看详情
如何使用postman生成不同格式测试的报告(代码片段)
Postman还可以生成测试报告,还是多种格式报告?Postman团队开源Newman作为Postman运营工具,该开源库使用命令行方式执行Postman脚本,并且生成多种格式报告,还支持PostmanSDK纯代码脚本化Postman。最近汇总所有支... 查看详情
extentreports生成测试报告(代码片段)
一、下载依赖包<dependency><groupId>com.relevantcodes</groupId><artifactId>extentreports</artifactId><version>2.41.1</version></dependency><dependency>< 查看详情
pytest.11.生成xml格式的测试报告(代码片段)
...时候,这是极好的。然而我们在运行用例后经常会需要将测试结果广而告之,发送给相关责任人浏览,所以生成简洁美观的测试报告是很有必要的。生成junit格式的xml报告pytest可以生成junit格式的xml报告,在命令行中加入--junit-xml... 查看详情
postman生成测试报告(代码片段)
...-reporter-htmlCMD输入 npminstall-gnewman-reporter-html4.POSTMAN中导出测试集、环境变 查看详情
pytest文档75-生成junit-xml测试报告(代码片段)
前言pytest生成junit-xml测试报告,那么生成的xml报告有什么用呢?可以集合一些持续集成工具(如jenkins…等)方便查看报告。junit-xml测试报告命令行参数有2个跟junit-xml报告相关的参数--junit-xml=pathcreatejunit-xmlstyler... 查看详情
gotest生成html测试报告(代码片段)
最近项目换成了go语言。测试用例的也都是go语言写的。想生成个HTML类型的测试报告,找了一圈,终于找到了这个模板。分享给大家。github地址:https://github.com/vakenbolt/go-test-reportgoget-ugithub.com/vakenbolt/go-test-report/下面... 查看详情
pytest集成allure生成测试报告(代码片段)
Pytest集成Allure生成测试报告1、Allure安装1)Allure报告的demo样式(是不是很漂亮呢)2)Allure下载选择需要的版本,下载zip文件,解压即可2、添加allure环境变量path:D:ProgramFilesallure-2.13.1in3、查看生成的allure报告cmd:allureserveallure生... 查看详情
api接口自动化测试框架搭建(二十三)-框架主入口main.py设计&测试报告调用和生成(代码片段)
(二十三)-框架主入口main.py设计&测试报告调用和生成1测试目的2测试需求3需求分析4详细设计4.1新建框架主入口脚本4.2设计main.py脚本5调用测试报告主函数main.py源码6运行效果7目前框架结构1测试目的组织运行所有的测试用例... 查看详情
unittest---unittest生成测试报告(代码片段)
我们做测试的人员们都知道测试完成后,肯定是会生成一个测试报告,那么当我们做自动化的时候,这个自动化报告也可以自动生成吗?python当然可以了!HTMLTestRunnerHTMLTestRunner是Python标准库的unittest模块的扩展。它生成易于... 查看详情
如何使用postman生成不同格式测试的报告(代码片段)
Postman还可以生成测试报告,还是多种格式报告? Postman团队开源Newman作为Postman运营工具,该开源库使用命令行方式执行Postman脚本,并且生成多种格式报告,还支持PostmanSDK纯代码脚本化Postman。最近汇总所有支持Postman生成的... 查看详情
python测试框架pytest(28)测试报告allure-动态生成标题动态生成功能报告添加用例失败截图(代码片段)
目录1、动态生成标题1.1、示例一:参数化无标题1.2、示例二:参数化有标题 1.3、示例三:参数化使用ids 1.4、示例四:参数化动态生成标题 1.5、示例五:参数化动态生成标题优化 2、动态生成功能 2.1、示... 查看详情