随笔记录方便自己和同路人查阅。
#------------------------------------------------我是可耻的分割线-------------------------------------------
学习selenium自动化之前,最好先学习HTML、CSS、JavaScript等知识,有助于理解定位及操作元素的原理。关于python和selenium安装请自行搜索别的资料,这里就不多做介绍了,所有例子均使用python3.6+selenium执行的。
#------------------------------------------------我是可耻的分割线-------------------------------------------
HTML测试报告
对软件测试人员来讲,测试的产出很难衡量。换句话说,测试人员的价值比较难以量化和评估,相信这一点对软件测试人员来说深有体会。我们花费了很多时间与精力所做的自动化也是如此。所以,需要一份漂亮且通俗易懂的测试报告来展示自动化测试成果。显然,一个简单的Log文件是不够的。
HTMLTestRunner是Python标准库unittest单元测试框架的一个扩展,它生成易于使用的HTML测试报告。HTMLTestRunner是在BSD许可证下发布的。
下载地址如下:
http://tungwaiyip.info/software/HTMLTestRunner.html
这个扩展非常简单,只是一个HTMLTestRunner.py文件,选中后单击鼠标右键,在弹出的快捷键菜单中选择目标另存为,将它保存到本地。安装方法也很简单,将其赋值到Python安装目录下即可。
Windows:将下载的文件保存到..Python3.6Lib目录下。
Linux:以Ubuntu为例,首先需要打开终端,找到Python的安装目录。打开终端后,输入Python命令进入Python交互模式,通过sys.path可以查看本机Python3的安装目录。
笔者是Windows,放置路径如下图:
修改HTMLTestRunner
因为HTMLTestRunner.py是基于Python2开发的,为了使其支持python3的环境,需要对其中的部分内容进行修改。下面通过编辑器打开HTMLTestRunner.py
需修改位置如下:
#第94行 import StringIO 修改为: import io #第539行 self.outputBuffer = StringIO.StringIO() 修改为: self.outputBuffer = io.StringIO() #第631行 print >>sys.stderr, ' Time Elapsed: %s' % (self.stopTime-self.startTime) 修改为: print (sys.stderr, ' Time Elapsed: %s' % (self.stopTime-self.startTime)) #第642行 if not rmap.has_key(cls): 修改为: if not cls in rmap: #第766行 uo = o.decode('latin-1') 修改为: Uo = e #第772行 ue = e.decode('latin-1') 修改为: Uo = e