python selenium模拟键盘,python鼠标事件 详解

  python selenium模拟键盘,python鼠标事件 详解

  本文主要带你学习硒元素的基本操作和鼠标键盘模拟事件的操作。文章中的样例代码讲解的很详细,感兴趣的朋友可以看看。

  00-1010元素的基本操作鼠标和键盘模拟事件操作使用Keys模块模拟键盘操作事件,使用Action类模拟鼠标操作事件。当我们定位到一个特定的元素时,我们可以对这个元素执行特定的操作,比如上一章执行的点击操作。这是最简单的操作,webdriver还有其他操作。比如元素的基本操作(点击、回车、清除),以及一些高级操作如鼠标键盘模拟事件、弹出框处理、多页面切换等.这些都是我们需要了解的内容,也是我们在做自动化测试时经常遇到的一些基本场景。在今天的章节中,我们先来学习元素的基本操作和鼠标键盘模拟事件的操作。

  

目录

 

  使用我们之前使用的本地form.html文件,练习元素的基本点击、输入和清除操作。

  代码示例如下:

  #编码:utf-8

  从时间进入睡眠

  从selenium导入web驱动程序

  Driver=webdriver。Chrome() #启动Chrome浏览器的驱动

  driver . maximize _ window()# Chrome浏览器最大化

  driver . get( file ://users/workspace/web _ test _ html/form.html )#打开本地“form . html”文件

  睡眠(1)

  email _ element=driver . find _ element _ by _ xpath(/*[@ id= input email ])#通过XPath定位邮件输入框。

  Email _ element.send _ keys(用户名)#在电子邮件输入框中输入用户名

  睡眠(1)

  Email_element.clear() #清除电子邮件输入框的内容。

  睡眠(1)

  email _ element . send _ keys( admin )#在电子邮件输入框中输入 admin

  driver . find _ element _ by _ XPath(/*[@ id=输入密码])。send _ keys (123456) #密码输入框,输入 123456

  睡眠(1)

  driver . find _ element _ by _ XPath(/html/body/form/div[3]/div/button )。单击()#通过XPath找到“登录”按钮,然后单击

  driver.quit()

  运行结果如下:

  以上是元素的基本操作,其实也是最简单最基本的操作。接下来,我们继续看更难的操作——鼠标键盘模拟事件操作。

  

元素的基本操作

 

  使用我们的本地sendkeys.html文件,我们可以实现鼠标和键盘的模拟事件操作。sendkeys.html文件的页面元素如下:

  

鼠标键盘模拟事件操作

 

  Ps,使用密钥模块需要“从selenium.webdriver.common.Keys导入密钥”的导入操作:

  键盘模拟事件代码的示例如下:

  #编码:utf-8

  从时间进入睡眠

  从selenium导入web驱动程序

  从selenium.webdriver.common.keys导入密钥

  Driver=webdriver。Chrome() #启动Chrome浏览器的驱动

  driver . maximize _ window()# Chrome浏览器最大化

  driver . get( file ://users/workspace/web _ test _ html/sendkeys . html )#打开本地的 f

  orm.html" 文件

  sleep(1)

  # 这里需要注意一下,因为我使用的是 Mac ,所以键盘 ctrl 事件是 "Keys.COMMAND" ,如果是 Win 系统的话,ctrl 事件是 "Keys.CONTROL"

  driver.find_element_by_id(A).send_keys((Keys.COMMAND, a)) # 通过 id 定位 "id = A" 的元素,执行键盘事件 command + a

  driver.find_element_by_id(A).send_keys((Keys.COMMAND, x)) # 通过 id 定位 "id = A" 的元素,执行键盘事件 command + x

  sleep(1)

  driver.find_element_by_id(B).send_keys((Keys.COMMAND, v)) # 通过 id 定位 "id = B" 的元素,执行键盘事件 command + v

  sleep(1)

  driver.find_element_by_id(B).send_keys((Keys.COMMAND, a)) # 通过 id 定位 "id = B" 的元素,执行键盘事件 command + a

  sleep(1)

  driver.find_element_by_id(B).send_keys((Keys.COMMAND, c)) # 通过 id 定位 "id = B" 的元素,执行键盘事件 command + c

  sleep(1)

  driver.find_element_by_id(A).send_keys((Keys.COMMAND, v)) # 通过 id 定位 "id = A" 的元素,执行键盘事件 command + v

  sleep(1)

  driver.quit()

  

  运行结果如下:

  

 

  

 

  

利用 Action 类模拟鼠标操作事件

 

  PS:模拟鼠标操作的场景并不是很多,了解即可。同时 Action 类需要执行 "from selenium.webdriver import ActionChains"

  先来看一下,Action 类都支持哪些鼠标的常用操作。

  

  • key_down:模拟鼠标按键按下

  • key_up:模拟鼠标按键弹起

  • click:模拟鼠标按键点击(单击)

  • context_click:点击鼠标右键

  • double_click:模拟鼠标按键点击(双击)

  • send_keys:发送某个键到当前焦点的元素

  • click_and_hold:点击鼠标左键,不松开(拖拽)

  • release:释放、松开按住的鼠标按钮

  • move_to:鼠标移动到…

  • drag_and_drop:拖拽起来丢掉那里去…

  • perform:无论做了什么操作,最后都需要 perform 去提交

 

  PS:实际场景中不会是用很复杂的鼠标操作事件来进行 自动化Case的编写,所以我们演示的也是比较简单的场景。

  模拟鼠标事件 代码示例如下:

  

# coding:utf-8

 

  运行结果如下:

  

 

  以上就是使用 Action 类实现一些特殊场景的模拟,比较常用的就是 双击、右击、拖拽 等场景使用的略多一些,其他的场景使用 Action 类就会特别少。

  到此这篇关于Python+Selenium键盘鼠标模拟事件操作详解的文章就介绍到这了,更多相关Python Selenium键盘鼠标事件内容请搜索盛行IT软件开发工作室以前的文章或继续浏览下面的相关文章希望大家以后多多支持盛行IT软件开发工作室!

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: