selenium + python自动化测试unittest框架学习webdriver元素操作
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了selenium + python自动化测试unittest框架学习webdriver元素操作相关的知识,希望对你有一定的参考价值。
上一篇是元素的定位,那么定位元素的目的就是对元素进行操作,例如写入文本,点击按钮,拖动等等的操作
(1)简单元素操作
简单元素操作
find_element_by_id("kw").clear() #文本框清空 find_element_by_id("kw").send_keys("selenium") #文本框输入 find_element_by_id("button").click() #点击按钮操作
(2)webElement接口常用的操作:
WebElement类内容:获取元素属性、位置、是否可见、元素尺寸、元素截图等
from selenium.webdriver.remote import webelement find_element_by_id("kw").get_attribute("type") #获取元素的属性值 find_element_by_id("submit").submit() #提交表单 flag = find_element_by_id("kw").is_displayed() #获取元素是否可见,值为True或False size = find_element_by_id("kw").size #获取元素的大小
(3)鼠标操作:双击,鼠标右键,鼠标移动,拖动到元素上等操作
ActionChains(driver):存储鼠标的操作
perform():对指定的鼠标操作的执行
from selenium.webdriver.common.action_chains import ActionChains right = driver.find_element_by_id("id") ActionChains(driver).context_clcik("right").perform() #鼠标右键 left = driver.find_element_by_id("id") ActionChains(driver).click_and_hold("left").perform() #鼠标左键 double = driver.find_element_by_id("id") ActionChains(driver).double_clcik("double").perform() #鼠标双击 move = driver.find_element_by_id("id") ActionChains(driver).move_to_element("move").perform() #鼠标移动到某个元素上 start = driver.find_element_by_id("id1") end = driver.find_element_by_id("id2") ActionChains(driver).drag_and_drop(start,end).perform() #鼠标拖动某个元素从start位置到end的位置
(4)键盘操作
键盘的操作基于send_keys()方法
from selenium.webdriver.common.Keys import Keys driver.find_element_by_id("kw").send_keys(KEY.BACK_SPACE) #删除键 driver.find_element_by_id("kw").send_keys(KEY.ENTER) #回车键 driver.find_element_by_id("kw").send_keys(KEY.SPACE) #空格键 driver.find_element_by_id("kw").send_keys(KEY.TAB) #制表符 driver.find_element_by_id("kw").send_keys(KEY.ESCAPE) #退出键 driver.find_element_by_id("kw").send_keys(KEY.CONTROL,‘a‘) #全选 driver.find_element_by_id("kw").send_keys(KEY.CONTROL,‘c‘) #复制 driver.find_element_by_id("kw").send_keys(KEY.CONTROL,‘v‘) #粘贴 driver.find_element_by_id("kw").send_keys(KEY.CONTROL,‘x‘) 剪切
以上是关于selenium + python自动化测试unittest框架学习webdriver元素操作的主要内容,如果未能解决你的问题,请参考以下文章
[Selenium自动化测试学习]Python+Selenium环境搭建