Selenium: 利用select模塊操作下拉框


在利用selenium進行UI自動化測試過程中,經常會遇到下拉框選項,這篇博客,就介紹下如何利用selenium的Select模塊來對標准select下拉框進行操作。。。

 

首先導入Select模塊:

1 # coding=utf-8
2 from selenium import webdriver
3 from selenium.webdriver.support.select import Select

感興趣的可以將鼠標指向Select,然后按住Ctrl鼠標單擊,查看Select模塊的源碼,是如何定義封裝Select的各個方法的。

1、Select提供了三種選擇某一項的方法

1 select_by_index          # 通過索引定位
2 select_by_value          # 通過value值定位
3 select_by_visible_text   # 通過文本值定位

注意事項:

index索引是從“0”開始;

value是option標簽的一個屬性值,並不是顯示在下拉框中的值;

visible_text是在option標簽中間的值,是顯示在下拉框的值;

 

2、Select提供了三種返回options信息的方法

1 options                  # 返回select元素所有的options
2 all_selected_options     # 返回select元素中所有已選中的選項
3 first_selected_options   # 返回select元素中選中的第一個選項

注意事項:

這三種方法的作用是查看已選中的元素是否是自己希望選擇的:

options:提供所有選項的元素列表;

all_selected_options:提供所有被選中選項的元素列表;

first_selected_option:提供第一個被選中的選項元素;

 

3、Select提供了四種取消選中項的方法

1 deselect_all             # 取消全部的已選擇項
2 deselect_by_index        # 取消已選中的索引項
3 deselect_by_value        # 取消已選中的value值
4 deselect_by_visible_text # 取消已選中的文本值

注意事項:

在日常的web測試中,會經常遇到某些下拉框選項已經被默認選中,這種時候就需要用到這里所說的四種方法;

 

下面以實際的代碼來做個示例,被測試網頁與源碼截圖如下:

比如要選擇3線,那么三種選擇方法示例代碼如下:

復制代碼
 1 # coding=utf-8
 2 from selenium import webdriver
 3 from selenium.webdriver.support.select import Select
 4 from time import sleep
 5 
 6 # 登錄
 7 driver = webdriver.Chrome()
 8 ......
 9 
10 # 根據索引選擇
11 Select(driver.find_element_by_name("storeDeclare.cityLine")).select_by_index("3")
12 # 根據value值選擇
13 Select(driver.find_element_by_name("storeDeclare.cityLine")).select_by_value("3線")
14 # 根據文本值選擇
15 Select(driver.find_element_by_name("storeDeclare.cityLine")).select_by_visible_text("3線")
16 sleep(5)
17 driver.quit()
復制代碼
 
轉自:https://www.cnblogs.com/imyalost/p/7846653.html

 

以上就是關於selenium的Select模塊提供的幾種方法的用法,示例代碼只是示例,具體實踐還需要結合實際的工作需要來進行,后續會介紹關於Xpath以及CSS定位等相關的內容。。。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM