หลังจากที่เรานั้นได้ศึกษาการใช้งานโมดูล selemium (ซิลิเนียม)  เกี่ยวกับการใช้งานเมธอดหรือคำสั่งต่างๆ เช่น บทความ วิธีการเลื่อนหน้าเว็บขึ้นลงโดยใช้โมดูล selenium (ซิลิเนียม)วิธีการใส่ข้อความไปในช่องข้อความที่มี placeholder (เพลซโฮลเดอร์) โดยโมดูล selenium (ซิลิเนียม)แนะนำคำสั่ง .click (คลิ๊ก) ของโมดูล Selenium (ซิลิเนียม) ในภาษาไพธอน กันมาบ้างแล้ว ในบทความนี้จะมาแนะนำอีกเมธอดหนึ่งซึ่งจะช่วยเราในการเลือกเมนูในดรอปดาวน์

 

Dropdown (ดรอปดาวน์) คืออะไร

                      ดรอปดาวน์  คือ  รายชื่อเมนูที่เมื่อ ใช้เมาส์กดแล้วจะมีรายการแสดงให้เลือก ซึ่งเจ้าตัวโมดูล selenium (ซิลิเนียม) นั้นสามารถเลือกเมนูใน Dropdown (ดรอปดาวน์) ได้ด้วยซึ่งเป็น ความสามารถที่สำคัญมากในการทำเว็บเทสติ้ง เพราะแทบทุกเว็บมักจะมีเมนูดรอปดาวน์ ดั้งนั้นการที่สามารถเลือกเมนูในดรอปดาว์จึงเป็นสิ่งที่สำคัญมาก

 

 

วิธีการเลือกเมนูใน  Dropdown (ดรอปดาวน์) โดยใช้โมดูล Selenium (ซิลิเนียม)   

                                                                                                                 ตัวอย่างเมนูดรอปดาวน์

Dropdown
                                                                                                       Dropdown

                         1.ให้เรานั้นนำทำการอิมพอร์ตโมดูล select ที่อยู่ใน selenium มาใช้งานก่อน

from selenium.webdriver.support.select import Select

                         2.ค้นหาที่อยู่ของ ดรอปดาวน์ที่เราต้องการอาจจะใช้หาโดย Xpath , id หรืออย่างอื่นก็ได้ในที่นี่หาโดย name ของดรอปดาวน์ และครอบด้วยเมธอด select

select = Select(driver.find_element_by_name('md_header_doc'))

                         3.เราสามารถเลือกเมนูในดรอปดาวน์ได้ 2 วิธี คือ วิธีแรก คือเลือกโดยอ้างอิงจาก index  ในตัวอย่าง index จะมีตั้งแต่ 0-3  โดย  0 = ช่องว่าง  1 = INVOICE                        2 = INVOICE/TAX INVOICE   3 = INVOICE(None Vat)     วิธีที่ 2 เลือกโดยอ้างอิงจาก ข้อความในเมนูในดรอปดาวน์

                        โค้ดตัวอย่างการเลือก โดย index

select.select_by_index(1)

                          โค้ดตัวอย่างการเลือก โดยข้อความในเมนูในดรอปดาวน์

select.select_by_visible_text('INVOICE/TAX INVOICE')

 

 

สามารถศึกษาเพิ่มเติมได้จากบทความ

 

กระทู้ล่าสุดจากเว็บบอร์ด
หัวข้อกระทู้
ตอบ
เปิดดู
ล่าสุด
การทำ natural language processing ด้วยภาษา python
โดย wightfall พ 24 เม.ย. 2024 12:54 pm บอร์ด Python Knowledge
0
6
พ 24 เม.ย. 2024 12:54 pm โดย wightfall View Topic การทำ natural language processing ด้วยภาษา python
การเขียนโปรแกรมเชิงวัตถุด้วยภาษา python
โดย wightfall อ 23 เม.ย. 2024 4:13 pm บอร์ด Python Knowledge
0
25
อ 23 เม.ย. 2024 4:13 pm โดย wightfall View Topic การเขียนโปรแกรมเชิงวัตถุด้วยภาษา python
แนะนำการเดินทางและสถานที่ท่องเที่ยวในจังหวัดตรังและการเดินทางไปกรุงเทพ
โดย wightfall จ 22 เม.ย. 2024 3:41 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
40
จ 22 เม.ย. 2024 3:41 pm โดย wightfall View Topic แนะนำการเดินทางและสถานที่ท่องเที่ยวในจังหวัดตรังและการเดินทางไปกรุงเทพ
ติดตั้ง ESXi ใหม่ จำเป็นต้อง Format Harddisk ก่อนติดตั้งไหมครับ
โดย จิ๊กโก๋ ส 20 เม.ย. 2024 2:29 pm บอร์ด ถาม - ตอบ คอมพิวเตอร์
3
161
อ 23 เม.ย. 2024 2:24 pm โดย mindphp View Topic ติดตั้ง ESXi ใหม่ จำเป็นต้อง Format Harddisk ก่อนติดตั้งไหมครับ
แจ้งปัญหาโพสบทความลงในเว็บบอร์ดส่วนตัวไม่ได้
โดย internTk21 ศ 19 เม.ย. 2024 11:56 am บอร์ด MindPHP News & Feedback
1
54
ศ 19 เม.ย. 2024 12:15 pm โดย internTk21 View Topic แจ้งปัญหาโพสบทความลงในเว็บบอร์ดส่วนตัวไม่ได้
สอบถาม Google Structure ที่เหมาะกับคอร์สเรียนควรใช้แบบไหนดีค่ะ
โดย eange08 ศ 19 เม.ย. 2024 9:56 am บอร์ด Programming - PHP
1
101
ศ 19 เม.ย. 2024 10:28 am โดย mindphp View Topic สอบถาม Google Structure ที่เหมาะกับคอร์สเรียนควรใช้แบบไหนดีค่ะ
คำสั่งรวมไฟล์ และ บีบอัดในคำสั่งเดียว tar, zip
โดย mindphp พ 17 เม.ย. 2024 7:42 pm บอร์ด Linux - Web Server
0
136
พ 17 เม.ย. 2024 7:42 pm โดย mindphp View Topic คำสั่งรวมไฟล์ และ บีบอัดในคำสั่งเดียว  tar, zip
เช็คขนาดพื้นที่ฐานข้อมูล แต่ละก้อน แต่ละฐานข้อมูลว่าใช้พื้นที่ไปเท่าไหร่ ด้วย Comamnd Line
โดย mindphp จ 15 เม.ย. 2024 11:10 pm บอร์ด PostgreSQL
1
307
จ 15 เม.ย. 2024 11:14 pm โดย mindphp View Topic เช็คขนาดพื้นที่ฐานข้อมูล แต่ละก้อน แต่ละฐานข้อมูลว่าใช้พื้นที่ไปเท่าไหร่ ด้วย Comamnd Line