pyhton+selenium+unittest自动化测试框架之测试报告
一、HTMLTestRunner
下载地址:http://tungwaiyip.info/software/HTMLTestRunner.html
下载后将py文件放到python安装目录的\Lib\site-packages文件夹下即可使用,但需要注意的是HTMLTestRunner是基于python2t版本的,如果你使用的是python3,那么还需要对HTMLTestRunner文件做如下修改
修改内容如下:
第94行,将import StringIO修改成import io
第539行,将self.outputBuffer = StringIO.StringIO()修改成self.outputBuffer = io.StringIO()
第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')修改成ue = e
第631行,将print >> sys.stderr, '\nTime Elapsed: %s' % (self.stopTime-self.startTime)修改成print(sys.stderr, '\nTime Elapsed: %s' % (self.stopTime-self.startTime))
其中,Python3中,已经没有StringIO了。取而代之的是io.StringIO。
代码中引入测试报告(这里仅贴出和生成报告相关的代码)
import HTMLTestRunner ...... if __name__ == "__main__": #定义一个单元测试容器 testunit=unittest.TestSuite() #将测试用例加入到测试容器中 testunit.addTest(My_Test_Suite("test_baidu")) testunit.addTest(My_Test_Suite("test_jd")) testunit.addTest(My_Test_Suite("test_youdao")) #定义报告存放路径,支持相对路径 filename = 'result.html' fp = open(filename, 'wb') #定义测试报告--HTMLTestRunner模板 runner =HTMLTestRunner.HTMLTestRunner(stream=fp,title='测试报告',description='用例执行详情:') #运行测试用例 runner.run(testunit) fp.close()
效果展示
二、BeautifulReport
HTMLTestRunner测试报告页面元素单调,不够美观,而BeautifulReport则满足了测试人员这方面的需要,下面介绍具体使用方法
下载地址:https://github.com/TesterlifeRaymond/BeautifulReport
本地如安装有git客户端,可使用命令git clone https://github.com/TesterlifeRaymond/BeautifulReport下载,若没有就直接在github上download zip包
项目下载后,将整个项目文件夹拷贝到python安装目录的\Lib\site-packages文件夹下
代码中引入测试报告(这里仅贴出和生成报告相关的代码)
from BeautifulReport import BeautifulReport ...... if __name__ == "__main__": #定义一个单元测试容器 testunit=unittest.TestSuite() #将测试用例加入到测试容器中 testunit.addTest(My_Test_Suite("test_baidu")) testunit.addTest(My_Test_Suite("test_jd")) testunit.addTest(My_Test_Suite("test_youdao")) #定义测试报告--BeautifulReport模板 BeautifulReport(testunit).report(filename='测试报告', description='搜索测试', log_path='.') # log_path='.'把report放到当前目录下
效果展示