Selenium—8小时入门版
一、一句话简介
selenium 是一个 web 应用程序的测试工具。
二、安装
浏览器驱动,注意一定要和你的浏览器版本匹配;
selenium 驱动:https://npm.taobao.org/mirrors/chromedriver/
三、常用控制方法
启动浏览器
浏览器控制
8种元素定位方法
1.id
2.name
3.class_name
4.tag_name
5.link_text
6.partial_link_text
7.css_selector
.class,比如:.bg选择类为bg的所有元素;#id,比如:#kw选择id为kw的元素;element>element,比如:span>input选择span下的所有input子元素(不含孙);element element,比如:span input选择span下的所有input子元素(含孙);element+element,比如:span+input选择与span同级的,且紧接着的input元素(只有一个);[attribute^=value],比如:a[class^="bg"]选择类是以bg开头的a元素($是以什么结尾);:nth-child,比如:input:nth-child(2)选择父元素下第 2 个位置为input的元素(先找位置,再找元素);:nth-of-type,比如:input:nth-of-type(2)选择父元素下元素input的第 2 个(先找元素,再找位置);
8.xpth
(1)绝对定位
从 /html 开始,一层一层的往下找。
(2)相对定位,以 // 开头
-
元素属性定位
-
层级属性结合
-
使用逻辑运算符
-
使用
contains
其他常用
定位一组元素
返回的是一个列表;
使用By类
四、简单元素操作
1.清除文本
2.模拟按键输入
3.单击元素
4.提交表单
5.获取元素信息
6.元素再操作
五、鼠标事件
1.实例
2.常用的鼠标事件
六、键盘事件
1.实例
2.常用的键盘事件
七、Select类
1.实例
八、内联框架
1.一个网页里面可能会遇到多个frame,不同的frame之间需要切换才能进行操作
2.逐级进入
3.跳转到兄弟级
先调到上一级,在进入兄弟级
4.跳出所有的frame
九、窗口切换
十、其他常见控件
1.日期控件
能够写的直接写日期,不能写的,去掉readonly属性;
2.单选或复选框
找到用click即可;
3.表格
十一、警告框处理
在处理警告弹窗之前,仍然需要先点击触发的按钮
1.切换到alert页面
2.引入Alert类
十二、截图
-
driver.save_screenshot("screnshot.png")返回一个图片文件; -
浏览器换成
PhantomJS,可截整个网页; -
截下一页,可以先将光标移动到下一页,然后截图即可;
十三、设置等待
1.强制等待
2.隐式等待
一般在打开浏览器后进行声明,表示:30秒内一旦加载完毕,就执行下一条语句,如果没有,就抛异常。
3.显式等待
针对某一个步骤,隐式等待时间不够长,可以专门设置一个显式等待。
十四、上传文件
1.input标签
2.非 input 标签(弹窗形式)
用三方工具 Auto Windows Info
十五、验证码
1.去掉验证码
2.设置万能验证码
3.验证码识别技术
4.操作 cookie
声明:本站所有文章,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。-- mikigo
