| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 开发测试 -> 开学了软测的同学也该跟上了--selenium介绍+简单操作 -> 正文阅读 |
|
[开发测试]开学了软测的同学也该跟上了--selenium介绍+简单操作 |
??????? Hi,大家好,关注过我的应该知道前面其实是有写selenium的,为什么要重新写,因为前面写的不是特别的明白,有很多小伙伴私信我说没怎么看懂,所以,这里写这一系列的手把手教写。 ??????? 我的微信是qing_an_an,公众号是Sea_Cha,有兴趣的可以加我一起学习,我也有一个学习群,群内都是刚刚学习的朋友,更有大佬的加持,分分钟教导 目录 ?5. 截屏:get_screenshot_as_file(保存路径) 什么是自动化?????????让程序代替人为,自动化验证web项目功能的过程
????????1. 解决回归测试(新版本正式测试之前的问题回归以及周边功能的验证) ????????2. 解决压力测试(多用户操作软件,统计软件服务器处理多用户请求的能力) ????????3. 解决兼容性测试(兼容不同的软件环境,如浏览器,操作系统,分辨率等) ????????4. 提高测试效率,保证产品质量
????????功能测试完毕(手工测试)》》》web UI自动化
????????优点: ????????????????1. 较少的时间内运行更多的测试用例; ????????????????2. 自动化脚本可重复运行 ????????????????3. 较少人为的错误; ????????????????4. 测试数据存储? ????????缺点: ????????????????1. 不能取代手工测试; ????????????????2. 手工测试比自动化测试发现的缺陷更多; ????????????????3. 测试人员技能要求高 ????????误区: ????????????????1. 自动化测试完全替代手工测试 ????????????????2. 自动化测试一定比手工测试厉害 ??????????????? 3. 自动化可以发现更多的bug
????????1. 需求变动不频繁 ????????2. 项目周期长 ????????3. 项目需要回归测试
????????主流工具 ????????????????1. web自动化测试:Selenium、Robot Framework ????????????????2. App自动化测试:Appium、MonkeyRunner、UIautomation ????????????????3. PC客户端自动化测试:QTP、WinRunner ????????????????4. 接口自动化测试:Jmeter、Postman、HttpUnit、RestClient、Python+requests ????????????????5. 云测平台:Testin、Testbird --》app兼容性测试 ????????????????6. 性能测试:Jmeter、LoadRunner 初识selenium特点: ????????1. 开源软件:源代码开放,可以根据需要来增加工具的某些功能; ????????2. 跨平台:Linux、Windows、MacOS ????????3. 核心功能:就是可以在多个浏览器上进行自动化测试,Chrome,Firefox,IE,Safari,opear ????????4. 多语言:java、python、C#、JavaScript、Ruby等 ????????5. 成熟稳定:目前已被百度、腾讯等公司广泛使用 ????????6. 功能强大:能够实现类似商业工具的大部分功能,因为开源,可实现定制化功能。 Selenium+WebDriver环境搭建????????1. WebDriver是一种用于web应用程序的自动化测试工具; ????????2. 它提供了一套友好的API; ????????3. WebDriver完全就是一套类库,不依赖与任何测试框架,除了必要的浏览器驱动; webDriver原理????????1. WebDriver API(基于Java、Python、C#等语言),对于java语言来说,就是下载下来的selenium的Jar包,比如 selenium-java-3.8.1.zip包,代表Selenium3.8.1的版本 ????????2. 浏览器的驱动(browser driver),每个浏览器都有自己的驱动,均以exe文件形式存在比如谷歌的 chromedriver.exe、火狐的geckodriver.exe、IE的IEDriverServer.exe ????????3. 浏览器,浏览器当然就是我们很熟悉的常用的各种浏览器(IE、Firefox、Chrome)。 ????????简单一点就是,有一把刀,它的作用就是削水果,也可以切菜等,这把刀相当于webDriver,你呢就是写代码的人,你想让它干嘛,切菜,削水果还是其他的,写一系列的代码,然后水果刀完成它要做的动作。 ??????? 道理讲完了,我们也该进入正题了,一些简单的操作,也是非常实用的。 简单的操作?1. 打开网页:get(url)
??????? 其他的浏览器方法类似,通过实例化驱动,指定浏览器,打开百度网址。至于驱动,在这里之说下载自己浏览器所对应的版本的驱动即可。如果你浏览器版本是2.1.1,驱动没有的只有2.3.3也没关系,是兼容的,但是你不能下载比你浏览器版本低的驱动。 ?2. 刷新:refresh()
?3. 前进:forward()
?4. 后退:back() ???????
????????注意:4、5这两个操作,只能在你浏览了其他页面的情况下才能使用,这里还没有讲到元素定位,所以这里先做了解,后续熟悉元素定位后,可自行操作 ?5. 截屏:get_screenshot_as_file(保存路径)
?6. 退出:close(),quit()
??????? 注意,这里两者是有区别的,quit是关闭打开浏览器中的所有窗口,而close是关闭当前窗口,所以,用的时候可别搞混了,搞混不得。 ??????? 看看下面的例子,就明白了:
??????? 这里我用js重新打开了一个窗口,然后用close的方法关闭一个窗口,此时,你会觉得关闭的是京东的窗口吧。其实不然,你错了哦。我没有切换窗口,所以关闭了还是第一次打开的窗口,也就是百度窗口。至于为什么要做窗口切换操作,这一点后续会有一章专门讲到。敬请期待吧。 |
|
开发测试 最新文章 |
pytest系列——allure之生成测试报告(Wind |
某大厂软件测试岗一面笔试题+二面问答题面试 |
iperf 学习笔记 |
关于Python中使用selenium八大定位方法 |
【软件测试】为什么提升不了?8年测试总结再 |
软件测试复习 |
PHP笔记-Smarty模板引擎的使用 |
C++Test使用入门 |
【Java】单元测试 |
Net core 3.x 获取客户端地址 |
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/18 0:36:29- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |