这篇文章主要讲解了如何实现Python selenium键盘鼠标事件,内容清晰明了,对此有兴趣的小伙伴可以学习一下,相信大家阅读完之后会有帮助。

引言

----在实际的web测试工作中,需要配合键盘按键来操作,webdriver的 keys()类提供键盘上所有按键的操作,还可以模拟组合键Ctrl+a,Ctrl+v等。

举例:

#cording=gbkimport osimport timefrom selenium import webdriverfrom selenium.webdriver.common.by import By #导入by方法from selenium.webdriver.common.action_chains import ActionChains ##对鼠标事件操作from selenium.webdriver.common.keys import Keys # 对键盘事件操作current_path=os.path.dirname(__file__)firefox_path=current_path+"/../webdriver/geckodriver.exe"driver=webdriver.Firefox(executable_path=firefox_path)driver.get("http://www.baidu.com")# 先输入百度driver.find_element_by_id('kw').send_keys('百度')time.sleep(3)# 1.删除度driver.find_element_by_id('kw').send_keys(Keys.BACK_SPACE)time.sleep(3)#2.清空输入框,重新输入值driver.find_element_by_id('kw').clear()driver.find_element_by_id('kw').send_keys('安琪儿')time.sleep(5)# 3.ctrl+a 全选输入框里的内容driver.find_element_by_id('kw').send_keys(Keys.CONTROL, 'a')time.sleep(3)# 4.ctrl+x 剪切输入框里的内容driver.find_element_by_id('kw').send_keys(Keys.CONTROL, 'x')time.sleep(3)# 5. ctrl+v 粘贴剪切的内容driver.find_element_by_id('kw').send_keys(Keys.CONTROL, 'v')time.sleep(3)# 6. 回车driver.find_element_by_id('su').send_keys(Keys.ENTER)time.sleep(3)

在实际的web产品测试中,对于鼠标的操作,不单单只有click(),有时候还要用到右击、双击、拖动等操作,这些操作包含在ActionChains类中。

ActionChains类中鼠标操作常用方法:

context_click() :右击double_click() :双击drag_and_drop() :拖动move_to_element() :鼠标移动到一个元素上

举例:

#cording=gbkimport osfrom selenium import webdriverfrom selenium.webdriver.common.by import By #导入by方法from selenium.webdriver.common.action_chains import ActionChains ##对鼠标事件操作current_path=os.path.dirname(__file__)firefox_path=current_path+"/../webdriver/geckodriver.exe"driver=webdriver.Firefox(executable_path=firefox_path)driver.get("http://127.0.0.1/zentao/user-login-L3plbnRhby9teS5odG1s.html")mouse=ActionChains(driver) #创建一个鼠标对象# element1=driver.find_element(By.XPATH,"//img[@src='/zentao/theme/default/images/main/zt-logo.png']") #Xpath利用属性定位element1=driver.find_element(By.XPATH,"//img[contains(@src,'images/main/zt-logo.png')]") #xpath使用包含属性方法定位mouse.context_click(element1).perform() #执行鼠标右击,.perform() 表示执行element2=driver.find_element(By.XPATH,"//button[@type='button' and @class='btn' ]") #多属性定位mouse.move_to_element(element2).perform() #移动到这个元素上#对元素进行截图driver.find_element(By.XPATH,"//button[@id='submit'][@type='submit']").screensh

看完上述内容,是不是对如何实现Python selenium键盘鼠标事件有进一步的了解,如果还想学习更多内容,欢迎关注亿速云行业资讯频道。