Selenium(三)Webdriver API常用方法
在自动化测试过程中,对元素进行定位之后还需要对这个元素进行操作,下面就来认识一下Webdriver中常用的几个操作方法:
- 模拟按键输入:send_keys(value)
from selenium import webdriver
driver = webdriver.Chrome()
driver.get("https://www.baidu.com/")
driver.find_element_by_id("kw").send_keys("selenium") #文本框输入
- 清除文本方法方法:clear()
from selenium import webdriver
driver = webdriver.Chrome()
driver.get("https://www.baidu.com/")
driver.find_element_by_id("kw").send_keys("selenium") #文本框输入
driver.find_element_by_id("kw").clear() #清除文本框数据
- 单击元素:click()
from selenium import webdriver
driver = webdriver.Chrome()
driver.get("https://www.baidu.com/")
driver.find_element_by_id("su").click() #单击元素
- 提交表单:submit()
(例如:有的搜索框不提供搜索按钮,而是通过“enter”键进行搜索完成搜索内容提交,就可通过submit()进行提交
from selenium import webdriver
driver = webdriver.Chrome()
driver.maximize_window()
driver.get("https://www.baidu.com/")
driver.find_element_by_id("kw").send_keys("selenium") #文本框输入
driver.find_element_by_id("su").submit() #提交搜索内容,相当于click()
- 返回元素的尺寸:size
from selenium import webdriver
driver = webdriver.Chrome()
driver.maximize_window()
driver.get("https://www.baidu.com/")
#获得元素的尺寸
size = driver.find_element_by_id("kw").size
print(size)
#{'height': 40, 'width': 1920}
- 获取元素文本:text
from selenium import webdriver
driver = webdriver.Chrome()
driver.maximize_window()
driver.get("https://www.baidu.com/")
#获得元素的尺寸
text = driver.find_element_by_id("bottom_layer").text
print(text)
#关于百度About Baidu使用百度前必读帮助中心企业推广京公网安备11000002000001号京ICP证030173号互联网新闻信息服务许可证11220180008网络文化经营许可证: 京网文〔2023〕1034-029号信息网络传播视听节目许可证 0110516互联网宗教信息服务许可证编号:京(2022)0000043
- 获取属性值:get_attritube()
from selenium import webdriver
driver = webdriver.Chrome()
driver.maximize_window()
driver.get("https://www.baidu.com/")
#获得元素的尺寸
attribute1 = driver.find_element_by_id("kw").get_attribute("id") ##获取元素ID
attribute2 = driver.find_element_by_id("kw").get_attribute("name") ##获取元素name
print("attribute1="+attribute1+" "+"attribute2="+attribute2)
# attribute1=kw attribute2=wd
- 判断该元素是否用户可见:is_displayed()
from selenium import webdriver
driver = webdriver.Chrome()
driver.maximize_window()
driver.get("https://www.baidu.com/")
#获得元素的尺寸
result = driver.find_element_by_id("kw").is_displayed()
print(result)
#True