Selenium Python บทช่วยสอนการใช้งาน WebDriver (ตัวอย่าง)
⚡ สรุปอย่างชาญฉลาด
Selenium สีสดสวย Python จับคู่ไลบรารีการทำงานอัตโนมัติ WebDriver กับ Python ไวยากรณ์ที่กระชับเพื่อทดสอบเว็บแอปพลิเคชันต่างๆ FirefoxChrome และ Internet Explorer คู่มือนี้จะตั้งค่า PyDev in Eclipseเขียนสคริปต์การเข้าสู่ระบบ และอธิบายว่าทำไมทีมต่างๆ จึงเลือกใช้ Python เกินกว่า Java.

Selenium สีสดสวย Python
Selenium สนับสนุน Python จึงสามารถใช้เป็น Selenium เว็บไดร์เวอร์ด้วย Python สำหรับการทดสอบ
- Python เมื่อเทียบกับภาษาโปรแกรมอื่นๆ แล้ว ภาษาโปรแกรมนี้ใช้งานง่ายกว่า เนื่องจากมีไวยากรณ์ที่ไม่ซับซ้อนมากนัก
- การขอ Python API ช่วยให้คุณสามารถเชื่อมต่อกับเบราว์เซอร์ผ่านทาง Selenium.
- Selenium ส่งมาตรฐาน Python สามารถส่งคำสั่งไปยังเบราว์เซอร์ต่างๆ ได้ แม้ว่าการออกแบบเบราว์เซอร์จะแตกต่างกันก็ตาม
คุณสามารถเรียกใช้ Selenium สีสดสวย Python สคริปต์สำหรับ Firefoxเช่น Chrome, IE เป็นต้น บนระบบปฏิบัติการต่างๆ
ความหมายของ Python?
Python เป็นภาษาสคริปต์เชิงวัตถุระดับสูง ได้รับการออกแบบในลักษณะที่เป็นมิตรต่อผู้ใช้ Python ใช้คำหลักภาษาอังกฤษที่เข้าใจง่าย มีโครงสร้างไวยากรณ์ที่ซับซ้อนน้อยกว่าภาษาอื่นๆ ภาษาโปรแกรม.
ดูตัวอย่างบางส่วนในตารางด้านล่าง
| คำหลัก | ความหมาย | การใช้ |
|---|---|---|
| elif | อย่างอื่นถ้า | อย่างอื่นถ้า |
| อื่น | อื่น | ถ้า: X; เอลฟ์: ใช่; ความหมายอื่นๆ :เจ |
| ยกเว้น | หากเกิดข้อผิดพลาด ให้ทำตามขั้นตอนนี้ | ยกเว้น ValueError, a: พิมพ์ a |
| exec | เรียกใช้สตริงเป็น Python | exec 'พิมพ์ "สวัสดีชาวโลก !"' |
ความหมายของ Selenium?
Selenium เป็นเครื่องมือสำหรับทดสอบเว็บแอปพลิเคชันของคุณ คุณสามารถทำได้หลายวิธี เช่น:
- อนุญาตให้แตะปุ่มต่างๆ ได้
- กรอกข้อมูลลงในแบบฟอร์ม
- อ่านเว็บไซต์ของคุณเพื่อดูว่าทุกอย่าง “ตกลง” หรือไม่ และอื่นๆ
วิธีการติดตั้งและกำหนดค่า PyDev in Eclipse
PyDev คือ Python สภาพแวดล้อมการพัฒนาสำหรับ Eclipse.
ขั้นตอน 1) ไปที่ Eclipse Marketplace. ความช่วยเหลือ > ติดตั้งซอฟต์แวร์ใหม่
ขั้นตอนต่อไปคือการติดตั้ง “pydev IDE” สำหรับ Eclipse.
ขั้นตอน 2) ในขั้นตอนนี้:
- ค้นหา “http://pydev.org/updates” ในหัวข้อ “ทำงานร่วมกับ” จากนั้น
- เลือกรายการทั้งหมดที่แสดง และคลิกปุ่มถัดไปสองครั้ง
- ยอมรับข้อตกลงใบอนุญาตและคลิก เสร็จสิ้น
ขั้นตอน 3) คุณอาจพบข้อความเตือนด้านความปลอดภัย คลิก “ติดตั้งต่อไป”
ขั้นตอน 4) ตั้งค่ากำหนดเพื่อให้คุณสามารถใช้งานได้ Python ตามความต้องการของโครงการ ไปที่ Window > Preferences > PyDev > ล่าม > Python ล่าม.
ตั้งค่าเริ่มต้น Python ตัวแปลภาษา ตามที่คุณตั้งค่าไว้ Java คอมไพเลอร์สำหรับการทำงาน Java โค้ด หากต้องการเปลี่ยนชื่อตัวแปลภาษา ให้คลิกปุ่ม Browse for python/pypy exe
ขั้นตอน 5) ในขั้นตอนนี้ ให้ระบุ "ชื่อล่าม" และเส้นทางไฟล์ "exe" Python.
- คลิกที่ 'เรียกดู' และค้นหา python.exe ที่คุณติดตั้งไว้ Python.
- คลิกปุ่ม 'ตกลง'
- เลือกโฟลเดอร์ทั้งหมดแล้วคลิก ตกลง
- คลิกที่ "ใช้และปิด"
ขั้นตอน 6) สร้างโปรเจ็กต์ใหม่ใน Pythonในขั้นตอนนี้:
- คลิกขวา PyDev สำรวจแพ็คเกจ > ใหม่
- เลือกตัวเลือกอื่น ๆ
- เลือก "PyDev > PyDev โครงการ".
- กดปุ่ม 'ถัดไป'
- ตั้งชื่อโปรเจ็กต์ของคุณ
- คลิก "เสร็จสิ้น"
คุณสามารถเห็นใหม่ Python (PyDev) โครงการถูกสร้างขึ้น
ขั้นตอน 7) หลังจากสร้าง 'PyDev โครงการ' คุณจะสร้างใหม่ Python บรรจุภัณฑ์
- คลิกขวาที่โครงการ > ใหม่ > PyDev บรรจุภัณฑ์
- ตั้งชื่อแพ็กเกจของคุณแล้วคลิก เสร็จสิ้น
ขั้นตอน 8) จากภาพหน้าจอด้านล่าง จะเห็นว่ามีการสร้างแพ็กเกจใหม่ขึ้นมา
ถัดไป สร้าง a PyDev โมดูล โมดูลนี้ประกอบด้วย Python ไฟล์สำหรับการเริ่มต้นระบบ ซึ่งฟังก์ชันต่างๆ สามารถนำเข้าในโมดูลอื่นได้ โดยไม่ต้องเขียนโปรแกรมใหม่ทั้งหมด
ขั้นตอน 9) สร้างใหม่ PyDev โมดูล. คลิกขวาที่แพ็คเกจ > ใหม่ > PyDev โมดูล.
ตั้งชื่อโมดูลของคุณแล้วคลิก “เสร็จสิ้น”
เลือก "เทมเพลตว่างเปล่า" แล้วคลิก "ตกลง"
ขั้นตอน 10) เขียนรหัสของคุณสำหรับ Selenium สีสดสวย Python ที่แสดงด้านล่าง
วิธีสร้างสคริปต์ทดสอบใน Selenium สีสดสวย Python
ในการนี้ Selenium เว็บไดร์เวอร์ด้วย Python ตัวอย่างเช่น เราใช้ระบบอัตโนมัติสำหรับ "หน้าเข้าสู่ระบบ Facebook" โดยใช้ Firefox คนขับรถ
Selenium สีสดสวย Python ตัวอย่างที่ 1: เข้าสู่ระบบ Facebook
from selenium import webdriver from selenium.webdriver.common.keys import Keys user_name = "YOUR EMAILID" password = "YOUR PASSWORD" driver = webdriver.Firefox() driver.get("https://www.facebook.com") element = driver.find_element_by_id("email") element.send_keys(user_name) element = driver.find_element_by_id("pass") element.send_keys(password) element.send_keys(Keys.RETURN) element.close()
ภาพถ่ายของ Code
คำอธิบายของรหัส
- Code สาย 1: จากโมดูล selenium ให้ทำการ import webdriver
- Code สาย 2: จากโมดูล selenium ให้ทำการ import Keys
- Code สาย 3: user_name เป็นตัวแปรที่ใช้เก็บค่าชื่อผู้ใช้
- Code สาย 4: ตัวแปร “password” จะถูกใช้เพื่อเก็บค่าของรหัสผ่าน
- Code สาย 5: เริ่มต้น “Firefox” โดยการสร้างวัตถุของมัน
- Code สาย 6: เมธอด “driver.get” จะนำทางไปยังหน้าเว็บที่กำหนดโดย URLWebDriver จะรอจนกว่าหน้าเว็บจะโหลดเสร็จสมบูรณ์ก่อนที่จะส่งการควบคุมกลับไปยังสคริปต์ของคุณ
- Code สาย 7: ค้นหาองค์ประกอบช่องข้อความ (textbox) ที่ต้องกรอก "อีเมล"
- Code สาย 8: ส่งค่าต่างๆ ไปที่ส่วนอีเมล
- Code สาย 9: รหัสผ่านก็เช่นกัน
- Code สาย 10: ส่งค่าไปยังส่วนรหัสผ่าน
- Code สาย 11: element.send_keys(Keys.RETURN) จะกด Enter หลังจากใส่ค่าแล้ว
- Code สาย 12: ปิด
Output: ป้อนค่าชื่อผู้ใช้ “guru99” และรหัสผ่าน
หน้าเพจ Facebook จะล็อกอินด้วยอีเมลและรหัสผ่าน หน้าเพจเปิดขึ้นแล้ว (ดูภาพด้านล่าง)
Selenium สีสดสวย Python ตัวอย่างที่ 2: เข้าสู่ระบบ Facebook และตรวจสอบชื่อเรื่อง
ในตัวอย่างนี้ เราจะเปิดหน้าล็อกอิน กรอกข้อมูลในช่องที่จำเป็น ได้แก่ "ชื่อผู้ใช้" และ "รหัสผ่าน" และตรวจสอบชื่อหน้าเว็บ
from selenium import webdriver from selenium.webdriver.support.ui import WebDriverWait # Step 1) Open Firefox browser = webdriver.Firefox() # Step 2) Navigate to Facebook browser.get("http://www.facebook.com") # Step 3) Search & Enter the Email or Phone field & Enter Password username = browser.find_element_by_id("email") password = browser.find_element_by_id("pass") submit = browser.find_element_by_id("loginbutton") username.send_keys("YOUR EMAILID") password.send_keys("YOUR PASSWORD") # Step 4) Click Login submit.click() wait = WebDriverWait( browser, 5 ) page_title = browser.title assert page_title == "Facebook"
ภาพรวมของรหัส
คำอธิบายของรหัส:
- Code บรรทัดที่ 1-2: นำเข้าแพ็กเกจ Selenium
- Code สาย 4: เริ่มต้น Firefox โดยการสร้างวัตถุขึ้นมา
- Code สาย 6: เข้าสู่หน้าล็อกอิน (Facebook)
- Code บรรทัดที่ 8-10: ดึงข้อมูลช่องป้อนชื่อผู้ใช้และรหัสผ่าน รวมถึงปุ่มส่งข้อมูล
- Code บรรทัดที่ 11-12: ป้อนข้อมูลลงในช่องป้อนชื่อผู้ใช้และรหัสผ่าน
- Code สาย 14: คลิกที่ปุ่ม "ส่ง"
- Code สาย 15: สร้างอ็อบเจ็กต์รอ (wait object) โดยตั้งค่าหมดเวลาไว้ที่ 5 วินาที
- Code สาย 16: ดึงชื่อเรื่องจากออบเจ็กต์ “browser”
- Code สาย 17: ทดสอบสตริงชื่อเรื่องที่บันทึกไว้ด้วยคำว่า “Facebook”
ทำไมถึงต้องเลือก Python เกินกว่า Java in Selenium
มีข้อดีอยู่บ้างหลายประการ Python เกินกว่า Java ที่จะใช้กับ Selenium คือ:
- Java โปรแกรมมีแนวโน้มที่จะทำงานช้าลงเมื่อเทียบกับ Python โปรแกรม
- Java ใช้ตัวยึดแบบดั้งเดิมในการเริ่มต้นและสิ้นสุดบล็อก ในขณะที่ Python ใช้การเยื้อง
- Java ใช้ ty แบบคงที่pingในขณะที่ Python ถูกพิมพ์แบบไดนามิก
- Python ง่ายกว่าและกะทัดรัดกว่าเมื่อเทียบกับ Java.




















