在web自动化测试中,经常会遇到下拉框,对列出的选项进行选择,或者判断选择的选项,本文将介绍如何使用Selenium去操作下拉框,实现自动化测试。
测试页面
URL http://sahitest.com/demo/selectTest.htm
Select方法
使用WebElement类的send_keys(value)方法也可以选择下拉框(select标签)的值,但它只能使用选项的value值来定位:
1 | self.driver.get("http://sahitest.com/demo/selectTest.htm") |
结果:
1 | o1 |
select类所有方法:
- select_by_index(index):通过选项index选择
- select_by_value(value):通过选项value值选择
- select_by_visible_text(text):过显示的文本选择
- deselect_by_index(index):取消选择,用于多选
- deselect_by_value(value):取消选择,用于多选
- deselect_by_visible_text(text):取消选择,用于多选
- deselect_all():全部取消,用于多选
- options:所有选项
- first_selected_option:第一个选择的选项(多选情况下)或者当前选择的选项(单选)
- all_selected_options:所有已经选择的选项
选择
select_by_index、select_by_value、select_by_visible_text三种方法选择
first_selected_option.text返回当前所选择的选项值
1 | self.driver.get("http://sahitest.com/demo/selectTest.htm") |
结果:
1 | o1 |
取消选择
取消选择deselect不能用于下拉框选择,只能用于多选,即属性multiple=”multiple”的select标签。
取消选择有deselect_by_index、deselect_by_value、deselect_by_visible_text、deselect_all四种方法
all_selected_options返回所有已选择的选项
1 | self.driver.get("http://sahitest.com/demo/selectTest.htm") |
结果:
1 | ###### |
本文标题:Web自动化测试 | Select下拉框
文章作者:hiyo
文章链接:https://hiyongz.github.io/posts/selenium-select/
许可协议:本博客文章除特别声明外,均采用CC BY-NC-ND 4.0 许可协议。转载请保留原文链接及作者。