zoukankan      html  css  js  c++  java
  • Selenium 2自动化测试实战35(HTML测试报告)

    HTML测试报告

    显然,一份漂亮的测试报告展示自动化测试成果只有一个简单的log文件是不够的。
    HTMLTestRunner是python标准库unittest单元测试框架的一个扩展,它生成易于使用的HTML测试报告。
    下载地址:http://tungwaiyip.info/software/HTMLTestRunner.html
    下载HTMLTestRunner.py文件,选中后右键另存为,保存到本地,然后将其放在python安装目录下的Lib目录下。即:Windows保存到…pytohn27Lib目录下。


    在python交互模式下引入HTMLTestRunner模块,如果系统没有报错,则说明添加成功,如下图所示


    2.修改HTMLTestRunner
    因为HTMLTestRunner.py是基于python2开发的,为了使其支持python3的环境,需要对其中的部分内容进行修改,如下图所示。
    #第94行

     

    #第540行

    #第633行


    #第646行

     

    #第771行


    #第778行


    3.生成HTML测试报告
    下面继续以test_baidu.py文件为例生成HTMLTestRunner测试报告。(注意:由于当前本人使用的是python2.7,所以不能修改HTMLTestRunner.py文件)

    #test_baidu.py
    #coding:utf-8 from selenium import webdriver from HTMLTestRunner import HTMLTestRunner import unittest import time class MyTest(unittest.TestCase): def setUp(self): self.driver=webdriver.Chrome() self.driver.maximize_window() self.driver.implicitly_wait(10) self.base_url="http://www.baidu.com" def test_baidu(self): driver=self.driver driver.get(self.base_url+"/") driver.find_element_by_id("kw").clear() driver.find_element_by_id("kw").send_keys("unittest") driver.find_element_by_id("su").click() time.sleep(2) title=driver.title self.assertEqual(title,u"unittest_百度搜索") def tearDown(self): self.driver.quit() if __name__=="__main__": testunit=unittest.TestSuite() testunit.addTest(MyTest("test_baidu")) #定义报告存放路径 fp=open('./result.html','wb') #定义测试报告 runner=HTMLTestRunner(stream=fp,title=u'百度搜索测试报告',description=u'用例执行情况:') runner.run(testunit)#运行测试用例 fp.close()#关闭报告文件

      

    代码分析:
    1.首先,将HTMLTestRunner模块用import导入进来。
    2.通过open()方法一二进制写模式打开当前目录下的result.html,如果没有,则自动创建该文件。
    3.调用HTMLTestRunner模块下的HTMLTestRunner类,stream指定测试报告文件,title用于定义测试报告的标题,description用于定义测试报告的副标题。
    4.最后,通过HTMLTestRunner的run()方法来运行测试套件中的测试用例,最后,通过close()关闭测试报告文件。
    5.用例执行完成后,打开“result.html”文件查看生成的测试报告,如下图所示:

  • 相关阅读:
    Django学习日记04_模板_overview
    Python并发实践_01_线程与进程初探
    web自动化测试笔记(二)
    web自动化测试笔记(一)
    app版本升级的测试点
    移动测(APP)试与web端测试的区别
    Dubbo服务器与普通服务器的区别
    java的错误分类
    安卓手机与iOS手机的区别
    在webstorm里使用git
  • 原文地址:https://www.cnblogs.com/Rita-LJ/p/11793374.html
Copyright © 2011-2022 走看看