云计算百科
云计算领域专业知识百科平台

Web自动化测试8-下拉框处理(Select类)

Select操作

在 Selenium 中,Select 类用于处理 HTML 中的下拉框(<select> 元素)。下拉框在表单中非常常见,例如选择省份、城市、日期等场景。通过 Select 类,可以方便地根据选项的索引、value 属性或可见文本来选择对应的选项,从而完成自动化测试中的表单填写操作。

使用 Select 类前,需要先导入对应的模块,导入方式如下:

from selenium.webdriver.support.ui import Select

创建 Select 对象时,需要传入定位到的下拉框元素,示例代码如下:

select = Select(driver.find_element_by_id("city"))

Select 类提供了多种选择选项的方法,常用的方法如下:

方法含义
select_by_value(value) 根据选项的 value 属性值进行选择
select_by_index(index) 根据选项的索引进行选择,索引从 0 开始
select_by_visible_text(text) 根据选项的可见文本进行选择
deselect_all() 取消所有已选中的选项,仅适用于多选下拉框

要注意的是,select_by_index 的索引从 0 开始,即第一个选项的索引为 0;select_by_value 需要传入选项的 value 属性值;select_by_visible_text 需要传入下拉框中显示的文本内容。在实际使用中,可以根据页面结构选择最合适的方法。

Options方法

对返回选项options信息也提供了三种常用的方法

方法含义
options 返回下拉框中的所有选项
all_selected_options 返回下拉框中已选中的选项
first_selected_option 返回第一个被选中的选项

实操案例

from selenium import webdriver
from selenium.webdriver.edge.service import Service
from selenium.webdriver.common.by import By

#导入Select类
from selenium.webdriver.support.ui import Select

path = Service('D:\\\\软件\\\\edgedriver_win64\\\\msedgedriver.exe')
driver = webdriver.Edge(service=path)
driver.get("https://seleniumbase.io/demo_page")

#定位到select元素并包装
select_element = driver.find_element(By.ID,"mySelect")
select = Select(select_element)

#index索引是从零开始的,表示选择下拉列表的第加一个选项
#如以下实例,意为选第一个选项
select.select_by_index(0)
print("当前选中:",select.first_selected_option.text)

#选择value值为50%的选项
select.select_by_value("50%")
print("当前选中:",select.first_selected_option.text)

#选择文本为Set to 75%的选项
select.select_by_visible_text("Set to 75%")
print("当前选中:",select.first_selected_option.text)

赞(0)
未经允许不得转载:网硕互联帮助中心 » Web自动化测试8-下拉框处理(Select类)
分享到: 更多 (0)

评论 抢沙发

评论前必须登录!