selenium自动化测试学习记录
环境搭建步骤
- 安装
python
环境 - 通过
pip
下载selenium
- 打开控制台或者终端
python -m pip install --upgrade pip
更新pip
到最新版本- 如果安装失败可试添加
--user
如python -m pip install --user --upgrade pip
- 安装
selenium
:pip install [-U] selenium
自动化环境搭建完毕
模仿鼠标键盘的链式操作ActionChains
1 | from selenium import webdriver |
操作js代码进行标签属性的删除
1 | # 百度主页 |
driver.implicitly_wait()与time.sleep()的区别
作者:乐乐熊小妹
来源:https://www.cnblogs.com/lelexiong/p/9875157.html
1 | # 隐式等待,5秒钟内只要找到了元素就开始执行,5秒钟未找到超时 |
如何灵活运用这两种方式:
当某个页面元素变化多,影响多的情况下,用sleep,等页面元素稳定了,再定位。
如果用implicitly_wait(5),还没等页面元素稳定后就定位 ,导致定位不准确,比如操作某个元素后,会出现提示框,影响了后面元素的位置,导致定位不准确;所以用sleep,等提示框消失后开始定位
执行JavaScript
语句实现相应操作
driver.execute_script('')
在’’里输入js语句
比如:
1 | # 页面滚动300px |
使用select
类进行下拉框值的选择
可使用selenium
提供的select
类进行下拉框值的选择
这里使用的Java语言来描述,演示的是用下拉框文本来选择对应条目
也可以用index
或value
来实现,select
类都提供了相应的方法
1 | Select select = new Select(WebElement arg); |
关于浏览器(含国产)和webdriver
等环境配置
这里以配置国产QQ浏览器为例
1 | // 通过 chrome options 配置QQ浏览器启动 |
frame/iframe相关
frame / iframe
操作常用的语句:
1 | // 通过 frame / iframe 在页面中的索引进行定位 |