目录
- 一、什么是selenium
- 二、selenuim原理
* - 1.selenuim1.0版本
- 2.selenuim 2.0 版本
- 三、webdriver常用的API
* - 1.元素的定位
- 2.操作测试对象
- 3.添加等待
- 4.打印信息
- 5.浏览器的操作
- 6.键盘事件
- 7.鼠标事件
- 8.定位一组元素
- 9.多层框架/窗口定位
- 10.层级定位
- 11.下拉框处理
- 12.alert的处理
- 13.DIV对话框的处理
- 14.上传文件操作
一、什么是selenium
Selenium是ThroughtWorks公司一个强大的开源Web功能测试工具系列,支持多平台、多浏览器、多语言去实现自动化测试。
多平台:Windows,Mac等。
支持多种开发语言:java,C#,ruby,Python, JavaScript等。
支持的浏览器: Chrome ,Firefox ,edge, Opera ,IE ,Safari等。
二、selenuim原理
selenuim工具集:selenuim1.0;selenuim2.0
1.selenuim1.0版本
包含三个部分。
(1)selenuim IDE 自动化脚本录制工具
(2)selenuim GRID 分布式测试
(3)selenuim RC
1)selenuim server
launcher 启动浏览器
Http Proxy 浏览器代理设置
Core 嵌入到浏览器当中,实现用程序对浏览器进行操作。
2)Client Libraries
主要用于编写测试脚本,用来控制selenuim sever。
注:selenuim RC工作原理
先编写自动化测试脚本,用程序控制selenuim sever,sever将core嵌入到浏览器中,用程序对浏览器进行操作,设置浏览器代理,浏览器和浏览器服务器(web sever)之间信息的收发都要通过浏览器代理。
2.selenuim 2.0 版本
Selenium 2.0将浏览器原生的API封装成webdrive API,由于selenuim1.0打开新网页要手动打开或者是被拦截因此发明了webdrive,可以直接操作浏览器页面里的元素,甚至操作浏览器本身(截屏,窗口大小,启动,关闭,安装插件,配置证书之类的),所以就像真正的用户在操作一样。
三、webdriver常用的API
1.元素的定位
把鼠标放到要打开的地方,右键选检查,查到需要用的信息。
(1)id 可以唯一定位到一个元素(全局唯一)
find_element(By.ID, "id名")
(2)name 要确保是全局唯一的
find_element(By.NAME, "name名")
(3)class name 相当于样式容易重复
find_element(By.CLASS_NAME, "class名")
(4)link text 有时候不是一个输入框也不是一个按钮,而是一个文字链接,例如百度搜索界面左上角的新闻,可能重复。
find_element(By.LINK_TEXT, "link_text名称")
(5)partial link text 部分链接定位,链接的部分名称,会有重复的可能。
find_element(By.PARTIAL_LINK_TEXT, "名称")
(6)tag name 标签(很多),类似
Original: https://blog.csdn.net/stitchD/article/details/123818886
Author: 小迷糊团子
Title: selenium用法(最新版)
原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/672309/
转载文章受原作者版权保护。转载请注明原作者出处!