
Web自动化测试
文章平均质量分 85
基于Python语言,结合Selenium3分享系列技术文章
Leo_Eagle
这个作者很懒,什么都没留下…
展开
-
Selenium3自动化测试【40】Html测试报告
HTMLTestRunner 是 Python 标准库的 unittest 模块的一个扩展, 它可以生成HTML的测试报告。原创 2022-05-13 10:29:16 · 511 阅读 · 0 评论 -
Selenium3自动化测试【39】单元测试Pytest(2)
pytest测试框架也是主流的一个测试框架,推荐使用该框架,对比unnitest框架来说,其效率更高。原创 2022-05-09 12:33:57 · 238 阅读 · 0 评论 -
Selenium3自动化测试【38】单元测试Pytest(1)
pytest测试框架也是主流的一个测试框架,推荐使用该框架,对比unnitest框架来说,其效率更高原创 2022-05-07 14:08:59 · 801 阅读 · 0 评论 -
Selenium3自动化测试【37】单元测试Unittest(2)
unittest可以组织执行测试用例,并且提供了丰富的断言方法,可以判断测试用例是否通过,最终生成测试结果。原创 2022-05-05 15:31:09 · 875 阅读 · 0 评论 -
Selenium3自动化测试【36】单元测试Unittest(1)
unittest是Python标准库中自带的单元测试框架。unittest可以组织执行测试用例,并且提供了丰富的断言方法,可以判断测试用例是否通过,最终生成测试结果。用uinittest单元测试框架可以进行web自动化测试。原创 2022-04-24 19:25:46 · 862 阅读 · 0 评论 -
Selenium3自动化测试【35】执行JS脚本(2)
自动化通过JS处理多窗口与video。原创 2022-04-18 21:03:18 · 379 阅读 · 0 评论 -
Selenium3自动化测试【34】执行JS脚本
页面上的操作,有时通过Selenium是无法实现的,如滚动条、时间控件等,此时就需要借助JavaScript来完成。原创 2022-04-12 13:54:05 · 1925 阅读 · 0 评论 -
Selenium3自动化测试【33】屏幕截图
观察脚本运行错误是我们常用的方法,如果可以把当前步骤所操作的场景,通过图形展现出来,就更容易让自动化测试工程师,判别测试脚本执行失败的原因了原创 2022-04-07 22:00:34 · 960 阅读 · 0 评论 -
Selenium3自动化测试【30】文件下载
Selenium针对文件下载也提供了丰富的下载方案原创 2022-03-07 11:56:46 · 474 阅读 · 0 评论 -
Selenium3自动化测试【29】文件上传
日常在访问页面时,文件上传与下载操作也常常用到,因此在Web自动化测试中也会遇到文件上传的情况。针对上传功能,WebDriver并没有提供对应的方法。针对上传文件的场景主要有两种解决思路原创 2021-12-28 09:45:19 · 408 阅读 · 0 评论 -
Selenium3自动化测试【28】单选框、复选框、下拉选择框
Html页面中的单选按钮、复选框、下拉框均可通过WebDriver实现操做。本节结合案例一起来看看WebDriver如何操做这些控件。设计Html测试页面设计Html的页面命名为Radio&Select&CheckBox.html,代码如下:<html> <head> <title>单选|复选|下拉框</title> </head> <style> .box{ w.原创 2021-12-21 15:22:10 · 2359 阅读 · 0 评论 -
Selenium3自动化测试【26】显式等待
“ 系统讲解Python3+Selenium3如何解决元素加载缓慢的情况”显示等待显示等待显性等待(WebDriverWait),WebDriverWait配合该类的until()和until_not()方法,能够根据判断条件而进行灵活地等待了。它主要的意思是:程序每隔多少秒检查一次,如果条件成立了,则执行下一步,否则继续等待,直到超过设置的最长时间,然后抛出TimeoutException。WebDriverWait等待也是我们推荐的方法。在使用前我们需要导入WebDriverWait。使用Web原创 2021-10-25 11:37:25 · 218 阅读 · 0 评论 -
Selenium3自动化测试【27】Frame的操作
本篇文章内容摘要 “ 讲解Python3+Selenium3如何处理Frame窗体”Frame窗体我们在使用Selenium定位页面元素的时候,有时会遇到定位不到的问题,在页面上看到元素就在那儿,用浏览器的开发者工具也能够看到,而代码运行就是定位不到。当遇到这种情况时,很有可能是有Frame存在。Frame标签有Frameset、Frame、IFrame三种,Frameset跟其他普通标签没有区别,不会影响到正常的定位。在页面中我们经常能看到Frame或IFrame(Frame是整个页面的框架,I.原创 2021-10-25 11:35:53 · 255 阅读 · 0 评论 -
Selenium3自动化测试【25】强制等待&隐式等待
强制等待因为有些元素还没加载出来就对其进行操作了,这样必然是无法成功的,所以我们加入等待时间来尽可能的不因为元素没加载出来而报错。在自动化测试中,元素等待是必须要掌握的。因为在自动化测试中,必然会遇到环境不稳定、网络加载缓慢等情况。当觉得定位没有问题,但程序运行时却报了元素不存在(不可见)时,那就需要思考是否因为程序运行太快或者页面加载太慢而造成了元素不可见,必须要进行等待,直到元素可见程序再继续运行。UI自动化页面元素不存在,异常发生的原因常见有如下几点:页面加载时间过慢,需要查找的元素程序代码执原创 2021-09-06 15:01:10 · 503 阅读 · 0 评论 -
Selenium3自动化测试【24】定位一组元素
selenium3如何定位一组元素原创 2021-08-31 15:12:32 · 3126 阅读 · 0 评论 -
Selenium3自动化测试【23】元素的操作方法
前面章节的代码书写过程中,其实已经接触到了元素的操做方法,如click()与send_keys()方法。click()方法用于单击元素,如。driver.find_element_by_xpath("//*[@id='sb_form_go']").click()send_keys()用于模拟在元素上输入内容,如。driver.find_element_by_xpath("//*[@id='sb_form_q']").send_keys("bella")本节一起来看看元素的操做方法还有哪些。1原创 2021-08-22 11:19:00 · 3021 阅读 · 0 评论 -
Selenium3自动化测试【22】操作浏览器方法
WebDriver也提供了一些操做浏览的方法,例如浏览器的最大化、浏览器的尺寸、浏览器的前进与后退等。1.浏览器的大小控制很多时候我们希望打开浏览器后,浏览器能够全屏,也就是最大化。WebDriver提供了maximize_window()方法来将浏览器最大化。from selenium import webdriverfrom time import sleepdriver = webdriver.Firefox()driver.get("http://cn.bing.com/")dr原创 2021-08-16 10:16:27 · 164 阅读 · 0 评论 -
Selenium3自动化测试【21】find_element定位元素
前面连载的内容,我们介绍了如下8种定位元素的方法。find_element_by_id:通过元素的ID属性值来定位元素;find_element_by_name:通过元素的name属性值来定位元素;find_element_by_class_name:通过元素的class属性值来定位元素;find_element_by_xpath:通过Xpath来定位元素;find_element_by_tag_name:通过元素的tag name来定位元素;find_element_by_css_selec原创 2021-07-27 17:03:00 · 3710 阅读 · 4 评论 -
Selenium3自动化测试【19】CSS定位元素
CSS 指层叠样式表 (CascadingStyleSheets),CSS一种用来表现HTML或XML等文件样式的计算机语言,其能够灵活的为页面提供丰富样式的风格。CSS使用选择器为页面元素绑定属性(如ID、class等),这些选择器可以被Selenium使用来进行定位元素。CSS较为灵活的选择控件的任意属性,CSS定位元素的速度比xpath速度快。CSS定位是通过find_element_by_css_selector方法。仍然以bing搜索页为例介绍CSS定位的用法。要操作Bing搜索页。原创 2021-07-08 08:31:45 · 477 阅读 · 0 评论 -
Selenium3自动化测试【18】XPath定位元素(2)
层级与属性结合定位如果被定为的元素,无法通过自身属性来唯一标识自己,此时可以考虑借助上级元素来定位自己。举生活中的例子,一个婴儿刚出生,还没有姓名与身份证号,此时给婴儿进行检查时往往会标注为“某某之女”。因为婴儿的母亲是确定的,找到母亲也就找到了婴儿。XPath的层级与属性结合定位就是如此。假设bing页面的搜索框与搜索按钮元素,无法通过自身属性来定位。则可以借助其上一级(父对象)元素来定位,前端代码如图所示。搜索框元素的上一级是1个div标签,该div标签的clalss属性等于b_searchbo原创 2021-06-03 11:09:05 · 270 阅读 · 0 评论 -
Selenium3自动化测试【18】XPath定位元素(1)
XPath即为XML路径语言(XML Path Language),它是一种用来确定XML文档中某部分位置的语言。通俗一点讲就是通过元素的路径来查找到这个元素的,相当于通过定位一个对象的坐标,来找到这个对象。Selenium WebDriver支持使用XPath表达式来定位元素。当发现通过ID、name或class属性值无法定位元素时,可以尝试使用XPath的方式。通过XPath可以灵活的应用绝对或相对路径来定位元素。1. 通过绝对路径定位XPath表达式表示从html代码的最外层逐层查找,最后定位原创 2021-05-17 10:35:26 · 395 阅读 · 0 评论 -
Selenium3自动化测试【17】元素定位之Link定位
Link定位find_element_by_link_text方法是通过文本链接来定位元素。以Bing首页中顶部的【学术】链接为例,如图所示。查看对应的html代码。从html中我们能看出这是一个a标签具有href属性的链接,所以我们使用link定位来操作【学术】链接,如图所示。<a id="scpl2" aria-owns="scpc2" aria-controls="scpc2" aria-expanded="false" onclick="hpulc4hdr();selectScop原创 2021-05-05 17:30:59 · 1939 阅读 · 0 评论 -
Selenium3自动化测试【15】元素定位之Class、Name
python3+Selenium3自动化测试:元素定位方法Class、Name原创 2021-03-26 09:39:51 · 1774 阅读 · 0 评论 -
Selenium3自动化测试【16】元素定位之Tag
Selenium3自动化测试元素定位方法Tag原创 2021-03-26 09:32:16 · 787 阅读 · 0 评论 -
Selenium3自动化测试【14】元素定位之ID
元素定位Selenium需要告知其如何去定位元素,来模拟用户动作。例如要操作Bing搜索页。 首先要找到搜索框与搜索按钮; 通过键盘输入检索的关键字; 用鼠标单击搜索按钮; 提交搜索请求。Selenium能够模拟上面描述的动作,但Selenium并不理解如何在搜索框中输入关键字或单击搜索按钮的操作。Selenium需要代码告诉其如何定位搜索框或搜索按钮,从而实现模拟人工的操作。Selenium提供了多种方法用于定位元素(find_element_by_),其中号代表可变的方法,例如id原创 2021-02-24 22:23:58 · 537 阅读 · 0 评论 -
Selenium3自动化测试【13】FireFox与Chrome浏览器元素定位
目前大部分浏览器都内置了相关插件或组件,能够帮助我们快速、简洁地展示各类元素的属性定义、DOM结构、CSS样式等属性。本书中使用的浏览器主要是FireFox、Chrome(这2款浏览器也是作为开发者常用的浏览器),因此本节介于这2款浏览器一起看看这些工具(组件)的使用方法。火狐(FireFox)浏览器如果大家对火狐浏览器较为熟知,在旧版本上的FireBug,大家一定影响深刻,FireBug功能非常强大。2016年12月FireBug宣布停止更新,新版本的火狐浏览器已经看不到FireBug影子。而原创 2021-02-01 22:52:19 · 555 阅读 · 0 评论 -
Selenium3自动化测试【12】元素定位认知
Web页面主要由HTML、CSS、JavaScript脚本构成的web页面。随着互联网技术的发展,当下大部分页面都是动态页面。Web页面中的各类视觉元素,例如文本框、按钮、复选框、图片、超链接、表等。这些元素在Selenium中都被称为页面元素(WebElements),在其他自动化工具中常常被称为对象(如UFT中)。当我们想让Selenium自动地操作浏览器时,就必须告诉Selenium如何去定位元素。大家都知道,Web页面是由HTML、CSS和JavaScript等组成的,可以通过查看页面源文件原创 2021-02-01 22:47:21 · 441 阅读 · 0 评论 -
Selenium3自动化测试【11】Katalon Studio案例
基于前面Katalon Studio案例,通过Katalon Recorder轻松实现数据驱动测试。测试场景,启动录制后,以bing搜索页面中进行如下操作: 输入Bella; 单击搜素按钮 ; 关闭浏览器; Katalon Recorder工具栏中单击Stop。(1) 录制完毕停止后,形成基础场景,,如图所示。(2) 创建一个JSON文件,文件命名为【SearchWord.json】,内容如下:[ { "SearchValue": "Bella" },原创 2020-12-30 08:46:25 · 362 阅读 · 1 评论 -
Selenium3自动化测试【10】Katalon Studio的认知
Katalon Studio是一款功能强大的测试自动化解决方案,适用于Web应用程序,移动和Web服务。 基于Selenium和Appium框架构建,Katalon Studio利用这些解决方案实现集成软件自动化。在2018全球十大自动化测试工具中,Katalon超过了自动化测试工具UFT(HP的自动化测试工具)排名第二,仅次于大家熟知的Selenium(Selenium也是本教材讲授的自动化工具),可以说是实力新秀。更重要的是,Katalon号称永久免费。Katalon特点:* 上手简单,无需任何.原创 2020-12-07 11:37:20 · 315 阅读 · 0 评论 -
Selenium3自动化测试【9】Selenium-IDE的运行
selenium3自动化测试中seleniumIDE的运行原创 2020-11-22 14:49:30 · 292 阅读 · 0 评论 -
Selenium3自动化测试【8】Selenium-IDE安装
Selenium-IDE多种安装方式的介绍原创 2020-11-19 09:07:12 · 159 阅读 · 0 评论 -
Selenium3自动化测试【7】浏览器driver的安装(Chrome)
有些小伙伴,在实际应用过程中,更喜欢使用Google浏览器Chrome。Selenium如何与Chrome相结合使用呢?1. 下载chromedriver.exechromedriver.exe文件是调用chrome的驱动文件,因此该文件的版本要和chrome的版本必须兼容chromedriver.exe可在如下网址中下载:http://chromedriver.storage.googleapis.com/index.html; http://npm.taobao.org/mirrors/原创 2020-10-31 19:05:06 · 479 阅读 · 0 评论 -
Selenium3自动化测试【6】浏览器driver的安装(FireFox)
Selenium支持各种浏览器,读者可以在不同的浏览器中开展自动化测试。它支持的浏览器包括IE、FireFox、Chrome、Opera、Safari等。本讲就围绕常用的FireFox、Chrome与Selenium的结合进行讲解。由于Selenium3.0调用FireFox48(含48)以上的版本,需要先安装浏览器的驱动driver,因此小节讲解下浏览器驱动driver的安装。FireFox浏览器geckodriver部署下载FireFox的driver(geckodriver.exe)。Fire原创 2020-10-26 17:14:19 · 2571 阅读 · 0 评论 -
Selenium3自动化测试【5】安装Selenium
在线安装(pip) 以管理员身份运行cmd,然后在cmd命令窗口中输入【pip install Selenium】进行安装。对于想安装指定版本的Selenium进行安装(如 pip install Selenium==3.12.0),如图所示。安装过程中可能由于网络问题,安装缓慢或中断。如果中途安装失败,可以重新输入命令【pip install Selenium】尝试再次安装,直到进度100%完成为止。在本书进入校稿阶段,Selenium的最新版本为3.141.59(可在https://w...原创 2020-09-29 23:11:45 · 329 阅读 · 0 评论 -
Selenium3自动化测试【4】selenium全面认知
Selenium工具集如图所示, Selenium工具集的呈现。Selenium IDESelenium IDE (集成开发环境) 是一个创建测试脚本的工具,如图所示。它是一个FireFox 插件,实现浏览器的录制与回放功能,提供创建自动化测试的建议接口。Selenium IDE 有一个记录功能,能记录人工的操作,并且能选择多种语言把它们导出到一个可重用的脚本中用于后续执行。如果没有编程经验,可以通过Selenium IDE来熟悉Selenium的命令。实际自动化测试脚本开发过程中Selen原创 2020-09-26 17:16:40 · 255 阅读 · 0 评论 -
Selenium3自动化测试【3】年度最佳自动化测试工具
年度最佳自动化测试工具2019年自动化测试工具的排名(不限于功能性测试或性能测试),供读者参考。SeleniumSelenium目前是B/S应用程序最流行的开源测试自动化框架。 Selenium经过十多年的发展,其已成为Web自动化测试人员的首选自动化框架,尤其适用于拥有高级编程和脚本编写技能的人员。 Selenium已成为其他开源测试自动化工具的核心框架,如Katalon Studio,Watir,Protractor和Robot Framework。Selenium支持多种系统原创 2020-09-25 20:47:34 · 402 阅读 · 0 评论 -
Selenium3自动化测试【2】自动化测试的优势及应用场景
1.1自动化测试的优势自动化测试的开展究竟能给测试工作带来哪些改进,带来哪些突破与欣喜呢?其实,自动化测试的特点即能够很好的概括自动化测试的优势。其主要特点如下:1.可重复不可否认,软件测试有时确实是繁杂且重复性较高的工作。关键性功能模块要在不断迭代的测试版本中重复的测试,而这些工作,随着软件测试版本的迭代将一直持续下去。当开展自动化测试后,即可通过自动化工具来替代这些重复性工作。大大缩减回归测试的工作量与压力,有效提高工作效率,缩短回归测试的时间。1.可程序化...原创 2020-09-25 18:59:53 · 1610 阅读 · 0 评论 -
Selenium3自动化测试【1】自动化测试
目录1. 自动化测试1. 1. 自动化测试定义1.2 何时开展自动化测试1. 自动化测试为何要开展自动化测试?手工测试与自动化测试相比孰优孰劣呢?本节针对该问题展开讨论与讲解。测试工作中,往往需要面对很多问题。经常可以听到测试工程师的抱怨,其抱怨内容大体如下: 重复、频繁的工作太多; 同样的工作,人工重复做的次数越多,抵触情绪较大; 测试工作任务重,测试周期短,工作压力大; 创新性的工作太少,无法体现自己的能力与自己的人生价...原创 2020-09-10 22:23:37 · 343 阅读 · 0 评论