web自动化测试—selenium鼠标操作

ActionChains类操作  --鼠标操作
  在web产品中提供了丰富的鼠标交互方式,如鼠标右击、双击、悬停、拖动等功能
  在WebDriver中将这些鼠标操作的方法封装在ActionChains类中
  调用ActionChains()类需要将游览器驱动driver作为参数传入,代码中用dr表示
  所有操作方法需要传入已定位到的element,后面必须加上perform(),否则此方法不能执行
ActionChains类提供了鼠标操作的常用方法
1、perform(): 执行所有ActionChains中存储的行为
2、context_click(): 右击
3、double_click(): 双击
4、drag_and_drop():拖动
5、move_to_element(): 鼠标悬停
1 from selenium import webdriver
 2 from selenium.webdriver.common.action_chains import ActionChains
 3 from time import sleep
 4 dr=webdriver.Chrome()
 5 dr.maximize_window()
 6 dr.implicitly_wait(30)
 7 dr.get("http://www.baidu.com")
 8 input=dr.find_element_by_id('kw')
 9 ele=dr.find_element_by_link_text('设置')
10 
11 #鼠标悬浮操作
12 ActionChains(dr).move_to_element(ele).perform()
13 dr.find_element_by_link_text('搜索设置').click()
14 
15 #鼠标右击操作
16 ActionChains(dr).context_click(input).perform()
17 
18 #鼠标双击操作
19 ActionChains(dr).double_click(input).perform()
20 
21 #鼠标拖动操作
22 先定位元素原位置,再定位元素需要移动到的目标位置,然后执行拖放操作
23 element= dr.find_element_by_id("xx")
24 target=dr.find_element_by_id('xx')
25 ActionChains(dr).drag_and_drop(element,target).perform()
26
27 dr.quit()

 



posted @ 2019-06-06 22:29  菩提306  阅读(151)  评论(0)    收藏  举报