Selenium-03-常用方法
时间:2022-07-26
本文章向大家介绍Selenium-03-常用方法,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
常用方法
- 控制浏览器大小:set_window_size()方法来设置浏览器的宽高。
- 控制浏览器前进、后退:back()、forward()方法来模拟后退和前进。
- 模拟浏览器刷新:refresh()刷新当前页面。
- clear():清除文本。
- click():元素单击。
- submit():表单提交。
- size:返回元素的尺寸。
- text:获取元素的文本。
- get_attribute:获取属性值。
- is_displayed:设置元素是否可见。
键盘方法
- send_keys():模拟键盘输入。
- 键盘F1到F12:send_keys(Keys.F1) 把F1改成对应的快捷键
- 复制Ctrl+C:send_keys(Keys.CONTROL,'c')
- 粘贴Ctrl+V:send_keys(Keys.CONTROL,'v')
- 全选Ctrl+A:send_keys(Keys.CONTROL,'a')
- 剪切Ctrl+X:send_keys(Keys.CONTROL,'x')
- 制表键Tab: send_keys(Keys.TAB)
鼠标方法
- preform():执行所有的ActionChains中存储的动作。
- context_click():右击鼠标。
- double_click():双击鼠标。
- drag_and_drop():拖动。
- move_to_element():鼠标悬浮。
设置元素等待
- 显示等待WebDriver等待某个条件成立时继续执行,否则在达到最大时长时
- 抛出超时异常(TimeoutException)。
- WebDriverWait类是由WebDriver提供的方法
隐式等待
- WebDriver提供了implicitly_wait()方法来实现隐式等待
sleep等待
"""
* Create by dell on 2020/9/24
* Author :wencheng
* 微信公众 :自动化测试 To share
"""
from selenium import webdriver
class run_case(object):
def __init__(self):
self.C_driver = webdriver.Chrome()
def run_baidu(self):
self.C_driver.get("http://www.baidu.com")
# 常用定位方式
self.C_driver.find_element_by_xpath('//*[@id="kw"]').send_keys("Cypress端到端")
self.C_driver.find_element_by_id('su').click()
val_text = self.C_driver.find_element_by_xpath('//*[@id="su"]').text
print(val_text)
val_size = self.C_driver.find_element_by_xpath('//*[@id="su"]').size
print(val_size)
val_get_attribute = self.C_driver.find_element_by_xpath('//*[@id="su"]').get_attribute
print(val_get_attribute)
self.C_driver.back()
self.C_driver.refresh()
self.C_driver.forward()
self.C_driver.quit()
if __name__ == '__main__':
run_case().run_baidu()
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家的支持。更多文章关注小编公众号:自动化测试 To share
- XGoServer 一个基础性、模块完整且安全可靠的服务端框架
- Bing 每日一图 & 随机图片 API
- 可视化数据库MapD安装——GPU模式
- 12步轻松搞定Python装饰器
- 使用shell脚本检测数据库连接访问情况(r10笔记第98天)
- 贝叶斯分类器及Python实现
- Docker 简介与安装
- 三种决策树算法(ID3, CART, C4.5)及Python实现
- Logistic 回归算法及Python实现
- MySQL主从不一致的修复过程(r10笔记第96天)
- ML中相似性度量和距离的计算&Python实现
- Oracle中的ROWID实现(r10笔记第95天)
- 100个Numpy练习【3】
- 100个Numpy练习【4】
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- Lambda什么时候使用+简化匿名内部类
- PreparedStatement连接数据库实现登录验证,避免sql注入问题
- 自己封装数据库工具类
- Git---->Linux常用命令+主干、分支合并,发生冲突+当紧急任务来时,文件暂存+忽略文件不提交
- 使用servlet完成简单的登录功能(servlet与html之间跳转(重定向))
- gitee配置
- idea--->先交给git本地仓库--->再push到远程仓库
- 图书系统优化分页与搜索跳转
- 解决ie浏览器回车不刷新验证码问题
- jsp跳转jsp----------和------------jsp跳转servlet跳转jsp
- idea中下载并配置稳定版本的MAVEN,电脑环境配置 + setting.xml文件配置
- Python代码性能分析之cProfile
- 自己写一个简单的MyBatis工具类代码+注释
- 多对一和一对多
- 使用C3P0连接数据库