Selenium (ซิลิเนี่ยม) เป็น Software Testing (ซอฟต์แวร์ เทสติ้ง) Framework (เฟรมเวิร์ก)  (ซอฟแวร์ เทสติ้ง เฟรมเวิร์ค) ที่มีประสิทธิภาพตัวหนึ่ง เอาไว้ใช้สำหรับทำ Automated Testing (ออโต้เมท เทสติ้ง) เขียน Test case (เทสเคส) เพื่อทดสอบWeb Application (เว็บ แอพพลิเคชั่น) ซึ่งซิลิเนียมนั้น สามารถพัฒนาได้จากภาษาคอมพิวเตอร์ที่หลากหลาย เช่น Java, Python, Ruby เป็นต้น โดยสามารถทำงานบนเว็บเบราว์เซอร์ต่างๆ ได้ เช่น Google Chrome, Firefox, Safari เป็นต้น โดยในบทความนี้เราจะมาพูดการใช้คำสั่ง switch to frame จัดการหน้าต่าง pop-up ด้วยซิลิเนียมกัน

     คำสั่ง switch to frame

     คำสั่งหรือเมธอด switch to frame มีไว้สำหรับการเปลี่ยนเป็นเฟรมในซิลีเนียม ซึ่ง iFrame ในซิลีเนียม Webdriver คือหน้าเว็บหรือเฟรมแบบอินไลน์ซึ่งฝังอยู่ในหน้าเว็บหรือเอกสาร HTML โดย iframe มักใช้เพื่อเพิ่มเนื้อหาจากแหล่งอื่นๆ ซึ่งเราไม่สามารถตรวจจับเฟรมได้เพียงแค่เห็นหน้าหรือโดยการตรวจสอบ แต่เราสามารถใช้คำสั่ง switch to frame เพื่อเข้าถึงได้ โดย iframe จะถูกกำหนดด้วยแท็ก <iframe>

 

วิธีการใช้คำสั่ง switch to frame 

ขั้นตอนที่ 1 เริ่มจากการหา element หรือหน้าต่าง pop-up ที่เราต้องการการจะเข้าถึง ซึ่งเราจะเห็นแท็ก <iframe>

หาชื่อแท็ก iframe เพื่อทำการเข้าถึง
หาชื่อแท็ก iframe

 

ขั้นตอนที่ 2 จากนั้นให้เราทำการคัดลอกชื่อของแท็กนั้นมา และใช้คำสั่ง

driver.switch_to.frame('field-user-modal') #ชื่อของแท็กนั้น

ขั้นตอนที่ 3 เมื่อเราเข้าถึงเฟรมดังกล่าวและจัดการกับ pop-up เสร็จเรียบร้อยแล้ว เราจำเป็นต้องใช้คำสั่งเพื่อกลับมายังเฟรมหลัก ซึ่งทำได้โดยใช้คำสั่ง

driver.switch_to.default_content()

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

 

 

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

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

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

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

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

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

กระทู้ล่าสุดจากเว็บบอร์ด
หัวข้อกระทู้
ตอบ
เปิดดู
ล่าสุด
เมธอด dict() ในการพัฒนาระบบ Python การสร้างพจนานุกรมอย่างมีประสิทธิภาพ
โดย athirach.offcial พฤ 28 มี.ค. 2024 12:33 pm บอร์ด Python Knowledge
0
312
พฤ 28 มี.ค. 2024 12:33 pm โดย athirach.offcial View Topic เมธอด dict() ในการพัฒนาระบบ Python การสร้างพจนานุกรมอย่างมีประสิทธิภาพ
การใช้งาน filter() กรองตัวเลขหรือตัวอักษรในภาษา Python
โดย athirach.offcial พฤ 28 มี.ค. 2024 12:16 pm บอร์ด Python Knowledge
0
106
พฤ 28 มี.ค. 2024 12:16 pm โดย athirach.offcial View Topic การใช้งาน filter() กรองตัวเลขหรือตัวอักษรในภาษา Python
เมธอด strip() ใน Python การใช้งานเพื่อลบตัวอักษรที่กำหนด
โดย athirach.offcial พฤ 28 มี.ค. 2024 12:03 pm บอร์ด Python Knowledge
1
329
ศ 29 มี.ค. 2024 9:24 am โดย athirach.offcial View Topic เมธอด strip() ใน Python การใช้งานเพื่อลบตัวอักษรที่กำหนด
Attribute ในภาษา Python: วิธีกำหนดค่าและใช้งาน
โดย athirach.offcial พฤ 28 มี.ค. 2024 11:37 am บอร์ด Python Knowledge
0
86
พฤ 28 มี.ค. 2024 11:37 am โดย athirach.offcial View Topic Attribute ในภาษา Python: วิธีกำหนดค่าและใช้งาน
คำสั่ง eval() ใน Python วิธีการใช้งานการประมวลผลสตริงเป็นโค้ด
โดย athirach.offcial พฤ 28 มี.ค. 2024 11:07 am บอร์ด Python Knowledge
3
550
ศ 29 มี.ค. 2024 9:18 am โดย athirach.offcial View Topic คำสั่ง eval() ใน Python วิธีการใช้งานการประมวลผลสตริงเป็นโค้ด
การใช้งานเมทอด zip() ใน Python: รวมข้อมูลจาก objects หลายๆ อันเข้าด้วยกันเป็น tuple อธิบายและตัวอย่าง
โดย athirach.offcial พฤ 28 มี.ค. 2024 10:51 am บอร์ด Python Knowledge
1
122
พฤ 28 มี.ค. 2024 8:55 pm โดย athirach.offcial View Topic การใช้งานเมทอด zip() ใน Python: รวมข้อมูลจาก objects หลายๆ อันเข้าด้วยกันเป็น tuple อธิบายและตัวอย่าง
ปิดโหมดข้อความธรรมดาในอีเมลแล้ว แต่เครื่องมือไม่ขึ้น ต้องตั้งค่ายังไง
โดย Narisara พฤ 28 มี.ค. 2024 10:46 am บอร์ด ถาม - ตอบ คอมพิวเตอร์
1
126
พฤ 28 มี.ค. 2024 11:13 am โดย Narisara View Topic ปิดโหมดข้อความธรรมดาในอีเมลแล้ว แต่เครื่องมือไม่ขึ้น ต้องตั้งค่ายังไง
ตัวแปร List ใน Python เหมาะสำหรับงานแบบไหน
โดย athirach.offcial พ 27 มี.ค. 2024 11:34 am บอร์ด Python Knowledge
0
98
พ 27 มี.ค. 2024 11:34 am โดย athirach.offcial View Topic ตัวแปร List ใน Python เหมาะสำหรับงานแบบไหน