zoukankan      html  css  js  c++  java
  • 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

  • 相关阅读:
    LED自动同步时钟(LED电子时钟系统)京准电子
    电力北斗对时装置(北斗时钟同步系统)详细介绍
    京准时间同步系统(NTP网络同步时钟)概述
    京准:NTP时钟服务器(NTP时钟服务器)研究分析
    医院时钟系统(子母钟系统)设计组成架构
    GPS校时器(北斗授时设备)助力政务云建设
    三大免费开源的php语言cms系统 用好它们让你一天建好一个网站
    想精通正则表达式 这几个正则表达式学习资料及工具你必须有!
    零基础建站如何配置PHP运行环境 几种服务器环境配置的选择和方法
    php代码如何加域名授权?开源php项目如何保护版权 商业授权?
  • 原文地址:https://www.cnblogs.com/xqnq2007/p/8000406.html
Copyright © 2011-2022 走看看