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元素操作的主要内容,如果未能解决你的问题,请参考以下文章

python-selenium自动化测试网页

[Selenium自动化测试学习]Python+Selenium环境搭建

第一章 python+selenium自动化测试实战

python+selenium自动化软件测试(第5章):Selenium Gird

Selenium+Python自动化测试实战元素定位

python+selenium自动化测试之登录