selenium下的webdriver方法,webdriver常见的操作方法

鼠标事件

1.常见的鼠标事件有:

在 WebDriver 中, 将这些关于鼠标操作的方法封装在 ActionChains 类提供。ActionChains 类提供了鼠标操作的常用方法:

perform(): 执行所有 ActionChains 中存储的行为;

    context_click(): 右击; double_click(): 双击; drag_and_drop(): 拖动; move_to_element(): 鼠标悬停。

2.案例:百度首页中 设置 悬停

from selenium import webdriver
from selenium.webdriver.common.action_chains import ActionChains
import time
​
# 打开浏览器
driver = webdriver.Chrome()
​
# 设置浏览器最大化
driver.maximize_window()
​
# 设置隐式等待
driver.implicitly_wait(10)
​
# 打开百度页面
driver.get("http://www.baidu.com")
​
time.sleep(3)
​
# 要定位到需要悬停的位置
setting_button = driver.find_element_by_id(s-usersetting-top)
​
# 设置鼠标悬停
"""
ActionChains(driver):进行类的实例化传入的是打开的浏览器对象driver
move_to_element(setting_button) 设置悬停 里面传入的定位到这个元素
perform() 执行前面的操作
"""
​
ActionChains(driver).move_to_element(setting_button).perform()

获取断言信息

断言就是用来判断本次自动化测试是否成功的依据,常见的断言方式有:

    根据文本内容断言 根据网页的title断言 根据网页的url地址断言

优先考虑根据文本信息断言,其次考虑根据title断言,再是根据url断言

from selenium import webdriver
import time
​
# 打开浏览器
driver = webdriver.Chrome()
​
# 设置浏览器最大化
driver.maximize_window()
​
# 设置隐式等待
driver.implicitly_wait(10)
​
# 打开百度页面
driver.get("http://www.baidu.com")
​
time.sleep(3)
​
# 获取文本信息
# ele = driver.find_element_by_xpath(//*[@id="s-top-left"]/a[2])
# if ele.text == "hao123":
#     print("测试通过")
# else:
#     print("测试不通过")
​
# 根据网页的标题进行断言
# print("当前网页title:", driver.title)
# if driver.title == "百度一下,你就知道":
#     print("测试通过")
# else:
#     print("测试失败")
​
# 根据url进行断言
print(driver.current_url)
经验分享 程序员 微信小程序 职场和发展