初学者的Selenium自动化测试指南,基于Python(四)——常用鼠标事件

    上一节 基于Python的Selenium自动化测试(三)——控制浏览器窗口大小、前进、后退、刷新介绍了一些常用的操作浏览器的方法,这一节我们继续介绍关于鼠标操作的方法。

    在 WebDriver 中,ActionChains 类提供的常用鼠标操作方法有:

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

    click()                       点击(左击)

    context_click()          右击

    double_click()           双击

    drag_and_drop()      拖动

    move_to_element()  鼠标悬停

1、鼠标点击操作(不用引入ActionChains类)

from selenium import webdriver

driver=webdriver.Chrome()
driver.get("http://www.csdn.net/")
driver.find_element_by_xpath("//cite[@id='login']/a").click();

driver.find_element_by_id("username").clear()
driver.find_element_by_id("username").send_keys("zhangsan")
driver.find_element_by_id("password").clear()
driver.find_element_by_id("password").send_keys("123456")
driver.find_element_by_class_name("logging").click()

driver.quit()

2、鼠标右击操作

from selenium import webdriver
from selenium.webdriver.common.action_chains import ActionChains

driver=webdriver.Chrome()
driver.get("http://www.csdn.net/")
#定位到要右击的元素
right_click=driver.find_element_by_xpath("//cite[@id='login']/a")
#对定位到的元素执行点击右键的操作
ActionChains(driver).context_click(right_click).perform()

driver.quit()

3、鼠标悬停

from selenium import webdriver
from selenium.webdriver.common.action_chains import ActionChains

driver=webdriver.Chrome()
driver.get("http://www.baidu.com")

#定位到要悬停的元素
above=driver.find_element_by_xpath("//div[@id='u1']/a[8]")
#对定位到的元素执行悬停操作
ActionChains(driver).move_to_element(above).perform()

driver.quit()

4、鼠标双击操作

from selenium import webdriver
#引入 ActionChains 类
from selenium.webdriver.common.action_chains import ActionChains

driver = webdriver.Chrome()
....
#定位到要悬停的元素
double_click = driver.find_element_by_id("xx")
#对定位到的元素执行双击操作
ActionChains(driver).double_click(double_click).perform()
....
5、鼠标拖放操作

drag_and_drop(source, target)在源元素上按下鼠标左键,然后移动到目标元素上释放。
source: 鼠标拖动的源元素。
target: 鼠标释放的目标元素。

……
from selenium import webdriver
#引入 ActionChains 类
from selenium.webdriver.common.action_chains import ActionChains

driver = webdriver.Chrome()

....
#定位元素的源位置
element = driver.find_element_by_name("xxx")
#定位元素要移动到的目标位置
target = driver.find_element_by_name("xxx")
#执行元素的拖放操作
ActionChains(driver).drag_and_drop(element,target).perform()
....

    下一节 基于Python的Selenium自动化测试(五)——常用键盘事件我们将继续介绍常用的键盘事件。

    更多关于Selenium自动化测试的源码,欢迎查看我的github


  • 4
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值