web自动化:6.selenium下拉选择框的操作-Select

在做web自动化测试时,下拉框肯定是难以避免的,简单讲下其实现方式

下拉选择框,前端实现的2种方式:

1、原生方式

 <select> </select>  

2、通过js控制选项的显示或隐藏来达到与select标签同样的效果

<div> </div> 

下拉框选择的实现方法

1、常规操作,适用于以上两种方式
先定位并点击选择框元素;待下拉框选项展示出来后,再定位并点击选项元素。

2、Select类,仅适用于select标签实现的下拉框
原理其实就是常规操作的步骤,只是selenium提供了Select类,将代码封装起来使用比较方便。

练习

我自己用python语言写一个简单的html文件,方便练习,代码如下:

<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>select选择框的操作</title>
</head>
<body>
    <h6>花测试  select选择框的操作</h6>
    <select id="test">
        <option value="hsl">何时了</option>
        <option value="qy">秋月</option>
        <option value="ch">春花</option>
    </select>
</body>
</html>

1、常规操作

from selenium import webdriver

driver = webdriver.Chrome()
driver.implicitly_wait(10)
driver.maximize_window()
url = '根据实际填写:在本地打开上面的html文件,然后复制浏览器上的url粘贴过来'
driver.get(url)

# 常规通用法
select_cl = driver.find_element('id', 'test')
select_cl.click()
select_cl = driver.find_element('xpath', '//option[text()="秋月"]')
select_cl.click()

2、使用Select类

from selenium import webdriver
from selenium.webdriver.support.select import Select

driver = webdriver.Chrome()
driver.implicitly_wait(10)
driver.maximize_window()
url = '根据实际填写:在本地打开上面的html文件,然后复制浏览器上的url粘贴过来'
driver.get(url)

select_cl = driver.find_element('id', 'test')   # 定位选择框元素
s = Select(select_cl)   # 初始化一个 select 对象

# 方法1:通过option选项中的 value 属性选中选项
s.select_by_value('qy')

# 方法2:通过索引选中选项
s.select_by_index(1)   # 从0开始

# 方法3:通过文本选中选项
s.select_by_visible_text('秋月')

猜你喜欢

转载自blog.csdn.net/weixin_48415452/article/details/120163959