为什么80%的码农都做不了架构师?>>>   

在页面中不是每个元素都是可见的,很多时候需要鼠标操作后才会显示那个元素,因此selenium提供了ActionChains类专门处理这类操作,这个动作可以是单一的,也可以是组合的,来弥补之前定位元素的不足

ActionChains
perform()                       执行所有ActionChain的动作
context_click()                 右击
double_click()                  双击
drag_and_drop()                 拖动
move_to_element()               鼠标悬停

下面这个例子展示的是在360云盘中,右击一个文件夹,显示很多选项,再把鼠标移到移动item,进行点击的过程

from selenium import webdriver
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.common.action_chains import ActionChains
import timedriver = webdriver.Firefox()
driver.get('http://yunpan.360.cn')
driver.implicitly_wait(10)
driver.find_element_by_name("account").send_keys('XXX')
driver.find_element_by_name("password").send_keys('XXX')
driver.find_element_by_name("password").submit()
time.sleep(10)
#right click by mouse
right_click = driver.find_element_by_xpath("/html/body/div[3]/div[4]/div[1]/div[6]/div[2]/div/ul/li[1]")    #"视频"文件夹
move = driver.find_element_by_xpath("//div[7]/ul/li[6]/a/span")        #右击视频文件夹后的移动选项
ActionChains(driver).context_click(right_click).perform()
driver.get_screenshot_as_file("c:\\work\\360.png")#move mouse to motivation item
ActionChains(driver).move_to_element(move).perform()
time.sleep(5)
driver.get_screenshot_as_file("c:\\work\\move.png")
#click motivation item to move the file[]
ActionChains(driver).double_click(move).perform()                      #点击移动选项
#

参考:

《Selenium2自动化测试实战》

《selenium python buildings release 2》

转载于:https://my.oschina.net/hding/blog/725979

selenium webdriver (12) -- 鼠标和键盘相关推荐

  1. selenium webdriver模拟鼠标键盘操作

    在测试使用Selenium webdriver测试WEB系统的时候,用到了模拟鼠标.键盘的一些输入操作. 1.鼠标的左键点击.双击.拖拽.右键点击等: 2.键盘的回车.回退.空格.ctrl.alt.s ...

  2. 【Selenium自动化测试】鼠标与键盘操作

    在 WebDriver 中,与鼠标操作相关的方法都封装在ActionChains 类中,与键盘操作相关的方法都封装在Keys类中.下面介绍下这两个类中的常用方法. 鼠标操作 ActionChains类 ...

  3. 总结Selenium WebDriver中一些鼠标和键盘事件的使用

    在使用 Selenium WebDriver 做自动化测试的时候,会经常模拟鼠标和键盘的一些行为.比如使用鼠标单击.双击.右击.拖拽等动作:或者键盘输入.快捷键使用.组合键使用等模拟键盘的操作.在 W ...

  4. Selenium之鼠标和键盘操作及扩展

    概念 在使用 Selenium WebDriver 做自动化测试的时候,会经常模拟鼠标和键盘的一些行为.比如使用鼠标单击.双击.右击.拖拽等动作:或者键盘输入.快捷键使用.组合键使用等模拟键盘的操作. ...

  5. Selenium:浏览器及鼠标、键盘事件

    目录 一.控制浏览器 二.鼠标事件 三.键盘事件 一.控制浏览器 webdriver主要提供操作页面上各种元素的方法,但它也提供操作浏览器的一些方法,例如控制浏览器大小.前进和后退等. 1.控制浏览器 ...

  6. WebDriver鼠标、键盘操作

    1. 鼠标事件 说明:WebDriver库对模拟鼠标操作封装的一些方法,此知识点作为了解 WebDriver操作鼠标方法 说明:在WebDriver中将操作鼠标的方法封装在ActionChains类中 ...

  7. selenium+Python(鼠标和键盘事件)

    本篇总结了 web 页面常用的一些操作元素方法,可以统称为行为事件 有些 web 界面的选项菜单需要鼠标悬停在某个元素上才能显示出来(如百度页面的设置按钮). 1 简单操作 1.点击(鼠标左键)页面按 ...

  8. Selenium自动化测试-6.鼠标键盘操作

    ------·今天距2020年77天·------ 这是ITester软件测试小栈第59次推文 大家好 我是vivi小胖虎 作为测试 好像对于点点点这事一直放不下 如何让点点点变得更简单 让人变得更懒 ...

  9. pythonselenium教程模拟鼠标和键盘_【02篇】python+selenium实现Web自动化:鼠标操作和键盘操作!...

    一.前言 最近问我自动化的人确实有点多,个人突发奇想:想从0开始讲解python+selenium实现Web自动化测试,请关注博客持续更新! 这是python+selenium实现Web自动化第二篇博 ...

最新文章

  1. C# 实现对接电信交费易自动缴费 续(winio/winring0 自动填密码)
  2. 游戏的「隐藏身份」:AI与现实世界的「王牌训练师」
  3. QQ交流群,欢迎有兴趣的同学加入。
  4. Scala学习笔记--Akka
  5. BZOJ 1968 [Ahoi2005]COMMON 约数研究
  6. 软件工程概论 课堂练习 第3次作业6【流图;计算环形复杂度;找独立路径】
  7. 洛谷树剖模板题 P3384 | 树链剖分
  8. java不同进程的相互唤醒_JAVA多线程之线程间的通信方式
  9. cas5.3:CAS Server搭建
  10. JS中同时支持切割中英文符号,例如分号,冒号
  11. U盘安装CentOS 7解决方案 (fat系统文件4g限制)
  12. 8192网卡linux,记录Ubuntu14.04安装Realtek USB无线网卡(RTL8192)驱动
  13. 时序分析模型——MMMC
  14. MTK6735/37 插入USB开机
  15. Python 离散小波变换(DWT) pywt库
  16. win10可以上网但显示无法连接到Internet
  17. js统计英文单词数量
  18. 机器学习笔记--神经网络--Rosenblatt
  19. python计算选手最后得分_哪位大侠帮我做做这些题目啊要用python的哦,跪求啊 做5个就成...
  20. 我推荐这几个好玩有趣的小网站

热门文章

  1. 动物麻醉剂量和途径相关要点
  2. java pdf 书签_Java PDF书签——添加、编辑、删除、读取书签
  3. ul去掉li前面的点_一年级语文上册期末考点:拼音重、难点总结,全面,建议收藏...
  4. Acrobat XI安装教程
  5. Visual Studio中检测内存泄漏的方法(一)
  6. 数学之路(2)-数据分析-R基础(5)
  7. vue 模板字符串循环_使用React四年后转而使用Vue,是一种什么样的体验?
  8. tomcat访问oracle卡死,tomcat无法连接到oracle
  9. 石河子大学计算机专业录取分数线,石河子大学2018年各省及各专业录取分数线及最低录投档线【理科 文科】...
  10. python调用c优缺点_Python调用C模块以及性能分析