• selenium 自动化测试 测试报告 生成


    https://www.cnblogs.com/yoyoketang/p/6140439.html

    https://www.cnblogs.com/testyao/p/5658200.html

    一、下载HTMLTestRunner.py

          HTMLTestRunner 是 Python 标准库的 unittest 模块的一个扩展。它生成易于使用的 HTML 测试报告。HTMLTestRunner 是在 BSD 许可证下发布。
          下载 地址:http://tungwaiyip.info/software/HTMLTestRunner.html(或者在我们群里下载)
          Windows :将下载的文件放入...Python27Lib 目录下

    二、生成报告

         下面还是以百度为例,baidu.py代码如下:

          #coding=utf-8
          from selenium import webdriver
          from selenium.webdriver.common.by import By
          from selenium.webdriver.common.keys import Keys
          from selenium.webdriver.support.ui import Select
          from selenium.common.exceptions import NoSuchAttributeException
          import unittest,time,re
          import HTMLTestRunner
          class Baidu(unittest.TestCase):
               def setUp(self):
                     self.driver = webdriver.Firefox()
                     self.driver.implicitly_wait(30)
                     self.base_url = "http://www.baidu.com/"
                     self.verificationErrors = []
                     self.accept_next_alert = True
              def test_baidu_search(self):
                    u"""百度搜索"""
                    driver = self.driver
                   driver.get(self.base_url + '/')
                   driver.find_element_by_id("kw").send_keys("selenium webdriver")
                   driver.find_element_by_id("su").click()
                   time.sleep(2)
                   driver.close()
             def test_baidu_set(self):
                   u"""百度设置"""
                   driver = self.driver
                 #进入搜索设置页
                   driver.get(self.base_url + '/gaoji/preferences.html')
                #设置每页搜索结果为 20 条
                   m=driver.find_element_by_name("NR")
                   m.find_element_by_xpath("//option[@value='20']").click()
                   time.sleep(2)
              #保存设置的信息
                   driver.find_element_by_xpath("/html/body/form/div/input").click()
                   time.sleep(2)
                   driver.switch_to_alert().accept()
            def tearDown(self):
                   self.driver.quit()
                   self.assertEqual([],self.verificationErrors)
        if __name__ == "__main__":
          unittest.main()

       下面我们在上面baidu.py的目录下新建一个.py,用来执行测试用例集和生成测试报告。

       代码如下:

    #coding=utf-8
       import unittest
      #这里需要导入测试文件
       import baidu
       import HTMLTestRunner
       testunit=unittest.TestSuite()
       #将测试用例加入到测试容器(套件)中
       testunit.addTest(unittest.makeSuite(baidu.Baidu))   #baidu.Baidu中的baidu为用例所在的.py文件的名称,Baidu为测试用例集的名称
       #定义个报告存放路径,支持相对路径。
       filename= "D:\python\report\"+ u"测试报告正常" +"result.html"
       fp = open(filename,"wb")
       runner =HTMLTestRunner.HTMLTestRunner(stream=fp,title=u'测试报告',description=u'用例执行情况:')
      #执行测试用例
       runner.run(testunit)

    执行完毕后,进入报告存放的路径,打开后如图:

        定义报告的路径还有一种方法也可以的,生成的html文件直接在该.py文件目录下,fp = file("my_report.html", "wb"),小伙伴们可以尝试下

    需要 注意的是HTMLTestRunner是基于py2写的,如果是在py3环境 下,则需要用py3的。https://pan.baidu.com/s/1dEZQ0pz

  • 相关阅读:
    如何:为 Silverlight 客户端生成双工服务
    Microsoft Sync Framework 2.1 软件开发包 (SDK)
    Windows 下的安装phpMoAdmin
    asp.net安全检测工具 Padding Oracle 检测
    HTTP Basic Authentication for RESTFul Service
    Windows系统性能分析
    Windows Server AppFabric Management Pack for Operations Manager 2007
    Mongo Database 性能优化
    服务器未能识别 HTTP 标头 SOAPAction 的值
    TCP WAIT状态及其对繁忙的服务器的影响
  • 原文地址:https://www.cnblogs.com/xqnq2007/p/8000406.html
Copyright © 2020-2023  润新知