ดาวไม่ได้ใช้งานดาวไม่ได้ใช้งานดาวไม่ได้ใช้งานดาวไม่ได้ใช้งานดาวไม่ได้ใช้งาน
 

     จากบทความเรื่อง วิธีการเลือกเมนูใน Dropdown (ดรอปดาวน์) โดยใช้โมดูล Selenium (ซิลิเนียม) เราก็คงจะทราบกันไปแล้ว ว่ามีวิธีในการเลือกเมนูต่างๆได้อย่างไร แต่ถ้าหาก Menu Dropdown List มีจำนวนมาก เราก็จะต้องทำการเลื่อนเพื่อหาเมนูที่เราต้องการ ซึ่งถ้าหากไม่เลื่อนหา เราก็จะไม่สามารถเข้าถึง Elements (อีลีเมนท์) เหล่านั้นได้ ซึ่งในบทความนี้เราจะมาพูดถึงการใช้คำสั่งเพื่อเลื่อนหา element ต่างๆ ใน dropdown list โดยใช้ภาษาไพทอนกัน

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

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

วิธีการเลื่อนเมนูใน Dropdown

ตัวอย่างเมนูดรอปดาวน์ที่มีจำนวนมาก
ตัวอย่างเมนูดรอปดาวน์

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

from selenium import webdriver
from selenium.webdriver.common.action_chains import ActionChains
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as ec

ขั้นตอนที่ 2 ให้เราค้นหาที่อยู่ของ ดรอปดาวน์ที่เราต้องการอาจจะใช้หาโดย Xpath , id หรืออย่างอื่นก็ได้ 

element = driver.find_element_by_xpath('...') #path ของดรอปดาวน์
actions = ActionChains(driver) #ใช้คำสั่งในการเลื่อน
actions.move_to_element(element).perform()

ขั้นตอนที่ 3 เมื่อเราเลื่อนดรอปดาวน์ลิสต์ได้แล้ว ให้เราทำการกำหนดเส้นทางของเมนูดรอปดาวน์ที่เราต้องการจะเลือก จากนั้นใช้คำสั่งคลิ๊กในการเลือก

#สั่งให้เลื่อนหาจนกว่าจะเจอเมนูที่ต้องการ จากนั้นทำการใช้คำสั่ง .click()
x = WebDriverWait(driver, 10).until(ec.element_to_be_clickable((By.XPATH,'...')))
x.click()

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

 

 

ช่องทางการศึกษาเพิ่มเติมเกี่ยวกับ : Selenium

Python - เขียนเทสเคส ด้วย Selenium

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

แนะนำคำสั่ง .click (คลิ๊ก) ของโมดูล Selenium (ซิลิเนียม) ในภาษาไพทอน

การหา X path (เอกซ์พาท) ง่ายๆเพื่อนำไปใช้กับโมดูล Selenium (ซิลิเนี่ยม)

วิธีการเลื่อนหน้าเว็บขึ้นลงโดยใช้โมดูล selenium (ซิลิเนียม)

กระทู้ล่าสุดจากเว็บบอร์ด
หัวข้อกระทู้
ตอบ
เปิดดู
ล่าสุด
โปรแกรมทางการบัญชี โปรแกรม Express
โดย Duanghathai Termtem อ 01 ธ.ค. 2020 6:56 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
22
อ 01 ธ.ค. 2020 6:56 pm โดย Duanghathai Termtem
Flow Account คืออะไร
โดย Duanghathai Termtem อ 01 ธ.ค. 2020 5:06 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
21
อ 01 ธ.ค. 2020 5:06 pm โดย Duanghathai Termtem
การประยุกต์ใช้โปรแกรม ACL และ Microsoft Excel ช่วยในการตรวจสอบ
โดย Duanghathai Termtem อ 01 ธ.ค. 2020 3:20 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
32
อ 01 ธ.ค. 2020 3:20 pm โดย Duanghathai Termtem
แนวทางแก้ปัญหา php error Uncaught Error: Call to undefined function mysql_real_escape_string() in...
โดย mindphp อ 01 ธ.ค. 2020 2:13 am บอร์ด PHP Knowledge
0
20
อ 01 ธ.ค. 2020 2:13 am โดย mindphp
วิธีการเดินทางจากกระบี่มากรุงเทพมหานคร
โดย Duanghathai Termtem จ 30 พ.ย. 2020 3:46 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
21
จ 30 พ.ย. 2020 3:46 pm โดย Duanghathai Termtem
การใช้ Canva ช่วยการนำเสนอ
โดย Duanghathai Termtem จ 30 พ.ย. 2020 3:13 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
38
จ 30 พ.ย. 2020 3:13 pm โดย Duanghathai Termtem
ภาษี หัก ณ ที่จ่าย บน ERP
โดย milk2533 ส 28 พ.ย. 2020 4:17 pm บอร์ด Accounting software & ERP โปรแกรมบัญชี ระบบอีอาร์พี
0
24
ส 28 พ.ย. 2020 4:17 pm โดย milk2533
ประโยชน์ของการใช้ปุ่ม Sendmail บน ERP
โดย milk2533 ส 28 พ.ย. 2020 1:40 pm บอร์ด Accounting software & ERP โปรแกรมบัญชี ระบบอีอาร์พี
0
15
ส 28 พ.ย. 2020 1:40 pm โดย milk2533