Selenium:HTML测试报告

这篇具有很好参考价值的文章主要介绍了Selenium:HTML测试报告。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

自动化测试过程中,获得用例的执行结果后,需要有具象化、简洁明了的测试结果,比如:用例执行时间、失败用例数、失败的原因等,这时候,就需要用到测试报告。

HTML测试报告是python语言自带的单元测试框架,其扩展的HTMLTestRunner模块可用于生成易于使用的HTML测试报告。

1、HTMLTestRunner下载

下载地址:HTMLTestRunner - tungwaiyip's software

下载完成后,将下载的文件保存到C盘的\Python35\Lib目录下(可以通过如下命令获取python安装目录):

  • ①进入cmd命令行
  • ②输入python
  • ③输入import sys
  • ④输入print(sys.path)
1 C:\Users\dell>python
2 Python 3.5.1 (v3.5.1:37a07cee5969, Dec  6 2015, 01:54:25) [MSC v.1900 64 bit (AMD64)] on win32
3 Type "help", "copyright", "credits" or "license" for more information.
4 >>> import sys
5 >>> print(sys.path)
6 ['', 'C:\\Users\\dell\\AppData\\Local\\Programs\\Python\\Python35\\python35.zip', 'C:\\Users\\dell\\AppData\\Local\\Programs\\Python\\Python35\\DLLs',
  'C:\\Users\\dell\\AppData\\Local\\Programs\\Python\\Python35\\lib', 'C:\\Users\\dell\\AppData\\Local\\Programs\\Python\\Python35', 'C:\\Users\\dell\\
  AppData\\Local\\Programs\\Python\\Python35\\lib\\site-packages']

2、修改HTMLTestRunner文件

因为HTMLTestRunner是基于python2开发的,为了使其支持python3的环境,需要对其中的部分内容进行修改,修改后的内容如下:

 1 # HTMLTestRunner修改内容
 2 # 第94行
 3 import io
 4 # 第539行
 5 self.outputBuffer = io.StringIO()
 6 # 第631行
 7 print(sys.stderr, '\nTime Elapsed: %s' % (self.stopTime-self.startTime))
 8 # 第642行
 9 if not cls in rmap:
10 # 第766行
11 uo = o
12 # 第772行
13 ue = e

3、python文件执行与调用

①python文件的后缀为.py

②py文件既可以用来执行,就像一小段程序,也可以用来作为模块被导入

③在python中导入模块一般用import

代码如下:

 1 from selenium import webdriver
 2 import unittest
 3 import time
 4 
 5 class MyTest(unittest.TestCase):
 6     def setUp(self):
 7         self.driver = webdriver,Chrome("F:\安装工具\python\chromedriver.exe")
 8         self.driver.maximize_window()
 9         self.driver.implicitly.wait(10)
10         self.base_url = "http://www.baidu.com"
11 
12     def test_baidu(self):
13         driver = self.driver
14         driver.get(self.base_url + "/")
15         driver.find_element_by_id("kw").clear()
16         driver.find_element_by_id("kw").send_key("unittest")
17         driver.find_element_by_id("su").click()
18         time.sleep(2)
19         title = assertEqual(title,"unittest_百度搜索")
20 
21     def tearDown(self):
22         self.driver.quit()
23 
24 if __name__ == "__main__":
25     unittest.main()

4、HTMLTestRunner测试报告

以上面的test_baidu.py文件为例子,生成HTMLTestRunner测试报告,代码如下:

1 from selenium import webdriver
 2 import unittest
 3 from HTMLTestRunner import HTMLTestRunner
 4 
 5 class Baidu(unittest.TestCase):
 6     def setUp(self):
 7         self.driver = webdriver.Chrome("F:\安装工具\python\chromedriver.exe")
 8         self.driver.implicitly_wait(10)
 9         self.base_url = "http://www.baidu.com/"
10 
11     def test_baidu_search(self):
12         driver = self.driver
13         driver.get(self.base_url)
14         driver.find_element_by_id("kw").send_key("HTMLTestRunner")
15         driver.find_element_by_id("su").click()
16 
17     def tearDown(self):
18         self.driver.quit()
19 
20 
21 if __name__ == "__main__":
22     baidu = Baidu("test_baidu_search")
23     testunit = unittest.TestSuite()
24     testunit.addTest(baidu)
25 
26     # 定义报告存放路径
27     fp = open('./result.html', 'wb')
28     # 定义测试报告
29     runner = HTMLTestRunner(stream=fp,
30                         title='百度搜索测试报告',
31                         description= '用例执行情况:')
32     runner.run(testunit) #运行测试用例
33     fp.close() #关闭报告文件

代码简析:

  • ①将HTMLTestRunner模块用import导入
  • ②通过open()方法以二进制写模式打开当前目录下的result.html,如果没有则自动创建该文件
  • ③调用HTMLTestRunner模块下的HTMLTestRunner类,stream指定测试报告文件,title用于定义测试报告的标题,description用于定义测试报告的副标题
  • ④通过HTMLTestRunner的run方法运行测试套件中所组装的测试用例,最后通过close()关闭测试报告文件

以上为方便展示写的例子,没有太多实际意义,具体的还是需要在工作中使用实践,关于unittest框架,后续会慢慢介绍。。。

加油吧,测试人!如果你需要提升规划,那就行动吧,在路上总比在起点观望的要好。未来的你肯定会感谢现在拼命的自己!

Selenium:HTML测试报告

 文章来源地址https://www.toymoban.com/news/detail-433428.html

到了这里,关于Selenium:HTML测试报告的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【Selenium2+python】自动化unittest生成测试报告

    前言 批量执行完用例后,生成的测试报告是文本形式的,不够直观,为了更好的展示测试报告,最好是生成HTML格式的。 unittest里面是不能生成html格式报告的,需要导入一个第三方的模块:HTMLTestRunner 一、导入HTMLTestRunner 1.这个模块下载不能通过pip安装了,只能下载后手动导

    2024年02月09日
    浏览(40)
  • selenium 自动化测试:如何搭建自动化测试环境,搭建环境过程应该注意的问题

    最近也有很多人私下问我,selenium学习难吗,基础入门的学习内容很多是3以前的版本资料,对于有基础的人来说,3到4的差别虽然有,但是不足以影响自己,但是对于没有学过的人来说,通过资料再到自己写的代码,发现有些东西没有,有些方法又不相同,导致脚本不能运行

    2024年02月10日
    浏览(48)
  • 从0到1精通自动化测试,pytest自动化测试框架,allure2生成html报告(史上最详细)(九)

    allure是一个report框架,支持java的Junit/testng等框架,当然也可以支持python的pytest框架,也可以集成到Jenkins上展示高大上的报告界面。 环境准备: python3.6 windows环境 pycharm pytest-allure-adaptor allure2.7.0 java1.8 pip安装 pytest-allure-adaptor,github地址:https://github.com/allure-framework/allure-pytest 如

    2024年02月11日
    浏览(85)
  • web自动化测试框架落地实施全过程-测试环境搭建 (Selenium+Python)

    Web自动化测试是指使用自动化工具模拟用户在Web浏览器中执行的操作,通过编写脚本来自动化执行测试用例,以验证Web应用程序的功能、性能和兼容性等方面的质量。其主要目的是降低测试成本和时间,并提高测试效率和准确性。 Web自动化测试通常包括以下步骤: 确定测试

    2024年02月09日
    浏览(83)
  • 【Selenium自动化测试】调用JavaScript与处理HTML5视频播放

    JS调用 有些页面操作不能依靠WebDriver 提供的API 来实现,如浏览器滚动条的拖动。这时就需要借助JavaScript 脚本。WebDriver 提供了execute_script()方法来执行JavaScript 代码。 下面演示一个用js调整浏览器滚动条位置的例子 window.scrollTo() 方法用于设置浏览器窗口滚动条的水平位置和垂

    2024年02月19日
    浏览(42)
  • Web UI 自动化测试框架(Pytest+Selenium+Allure/Pytest-html+Loguru)

    本框架主要是基于 Python + pytest + selenium + Allure + loguru + 邮件通知/企业微信通知/钉钉通知 实现的WEB UI自动化框架。 基于PageObject设计模式结合,该平台可实现测试用例的自动化执行及自动化测试报告的生成同时包括自动化测试执行时,用例失败的截图操作。 使用webdriver_manag

    2024年02月12日
    浏览(99)
  • Selenium UI自动化实战过程记录

    1.1项目框架 项目如何使用框架: 本项目采用unitest框架 设计模式是如何应用:本项目采用pageobject设计模式 UI对象库思想 项目设计 一个模块(被测项目的页面)对应一个py文件及一个测试类(测试文件) 每一个测试页面(系统的页面)中存储页面元素及此页面中涉及到的功能

    2024年02月04日
    浏览(39)
  • API自动化测试【postman生成报告】

    PostMan生成测试报告有两种: 1、控制台的模式 2、HTML的测试报告 使用到一个工具newman Node.js是前端的一个组件,主要可以使用它来开发异步的程序。 一、控制台的模式 1、安装node.js 双击node.js进行安装,安装成功后在控制台输入node -v,检查是否安装成功。 2、安装newman 1)在

    2024年02月06日
    浏览(50)
  • Selenium自动化测试实战之自动化测试基础

    自动化测试概念 是把以人为驱动的测试转化为机器执行的一种过程,它是一种以程序测试程序的过程。 自动化只是测试方式,跟测试阶段无关。 可以把任何测试工作写一个程序自动化实现都可以称为自动化测试。 selenium自动化测试: 2023最新的Selenium自动化测试实战,没有比

    2024年02月13日
    浏览(65)
  • selenium 自动化测试—如何搭建自动化测试环境?

    🍅 视频学习: 文末有免费的配套视频可观看 🍅 点击文末小卡片 ,免费获取软件测试全套资料,资料在手,涨薪更快 最近也有很多人私下问我,selenium学习难吗,基础入门的学习内容很多是3以前的版本资料,对于有基础的人来说,3到4的差别虽然有,但是不足以影响自己,

    2024年02月19日
    浏览(94)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包