ตรวจสอบองค์ประกอบปัจจุบัน & รอคำสั่งเข้า Selenium

ตรวจสอบการมีอยู่ขององค์ประกอบ

เราสามารถใช้คำสั่งสองคำสั่งต่อไปนี้เพื่อตรวจสอบการมีอยู่ขององค์ประกอบ:

  • ตรวจสอบองค์ประกอบปัจจุบัน – คืนค่า TRUE หากพบองค์ประกอบที่ระบุในหน้า คืนค่า FALSE หากไม่เป็นเช่นนั้น
  • ตรวจสอบองค์ประกอบไม่ปัจจุบัน – คืนค่า TRUE หากไม่พบองค์ประกอบที่ระบุที่ใดก็ได้ในเพจ FALSE หากมีอยู่

สคริปต์ทดสอบด้านล่างนี้จะตรวจสอบว่ากล่องข้อความชื่อผู้ใช้มีอยู่ภายใน Mercury หน้าแรกของทัวร์ในขณะที่กล่องข้อความชื่อจริงไม่ใช่ กล่องข้อความชื่อจริงเป็นองค์ประกอบที่มีอยู่ในหน้าการลงทะเบียนของ Mercury ทัวร์ไม่อยู่ในหน้าแรก

ตรวจสอบการมีอยู่ขององค์ประกอบ

ตรวจสอบการมีอยู่ของข้อความบางอย่างในคำสั่งใน Selenium

  • ตรวจสอบข้อความปัจจุบัน – คืนค่า TRUE หากพบสตริงข้อความที่ระบุในเพจที่ใดที่หนึ่ง คืนค่า FALSE หากไม่เป็นเช่นนั้น
  • ตรวจสอบ TextNotPresent – ส่งคืน TRUE หากไม่พบสตริงข้อความที่ระบุที่ใดก็ได้ในเพจ เป็นเท็จหากพบ

โปรดจำไว้ว่าคำสั่งเหล่านี้คำนึงถึงขนาดตัวพิมพ์

ตรวจสอบการมีอยู่ของข้อความบางอย่างในคำสั่งใน Selenium

ในสถานการณ์ข้างต้น “แอตแลนตาไปลาสเวกัส” ได้รับการปฏิบัติที่แตกต่างจาก “แอตแลนตาไปลาสเวกัส” เนื่องจากตัวอักษร “A” ของ “แอตแลนตา” เป็นตัวพิมพ์ใหญ่ที่ตัวแรกและตัวพิมพ์เล็กที่อีกอัน เมื่อใช้คำสั่ง VerifyTextPresent กับแต่ละคำสั่ง คำสั่งหนึ่งผ่านไปในขณะที่อีกคำสั่งหนึ่งล้มเหลว

ตรวจสอบตำแหน่งเฉพาะขององค์ประกอบ

Selenium IDE ระบุตำแหน่งขององค์ประกอบโดยการวัด (เป็นพิกเซล) ว่าอยู่ห่างจากขอบด้านซ้ายหรือด้านบนของหน้าต่างเบราว์เซอร์เพียงใด

  • ตรวจสอบองค์ประกอบตำแหน่งซ้าย – ตรวจสอบว่าจำนวนพิกเซลที่ระบุตรงกับระยะห่างขององค์ประกอบจากขอบด้านซ้ายของหน้าหรือไม่ สิ่งนี้จะส่งกลับ FALSE หากค่าที่ระบุไม่ตรงกับระยะห่างจากขอบด้านซ้าย
  • ตรวจสอบองค์ประกอบตำแหน่งด้านบน – ตรวจสอบว่าจำนวนพิกเซลที่ระบุตรงกับระยะห่างขององค์ประกอบจากขอบด้านบนของหน้าหรือไม่ สิ่งนี้จะส่งกลับ FALSE หากค่าที่ระบุไม่ตรงกับระยะห่างจากขอบด้านบน

ตรวจสอบตำแหน่งเฉพาะขององค์ประกอบ

รอคำสั่งใน Selenium

ต่อไปนี้เป็นประเภทของคำสั่งรอใน Selenium

และคำสั่งรอ

คำสั่งเหล่านี้เป็นคำสั่งที่จะรอให้โหลดหน้าใหม่ก่อนที่จะย้ายไปยังคำสั่งถัดไป

ตัวอย่างเช่น

  • คลิกและรอ
  • พิมพ์และรอ
  • เลือกและรอ

และคำสั่งรอ

คำสั่ง waitFor

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

  • waitForTitle
  • รอข้อความปัจจุบัน
  • รอการแจ้งเตือน

พิจารณาสถานการณ์ Facebook ด้านล่าง

คำสั่งรอ

เราสามารถใช้การผสมผสานระหว่าง "คลิก" และ "waitForTextPresent" เพื่อยืนยันการมีอยู่ของข้อความ "ระบุวันเกิดของคุณ"

คำสั่งรอ

เราไม่สามารถใช้ clickAndWait ได้เนื่องจากไม่มีการโหลดหน้าเว็บเมื่อคลิกที่ "เหตุใดฉันจึงต้องระบุวันเกิดของฉัน" ลิงค์ ถ้าเราทำเช่นนั้นการทดสอบจะล้มเหลว

คำสั่งรอ

สรุป

  • คำสั่งที่ใช้บ่อยที่สุดสามคำสั่งในการตรวจสอบองค์ประกอบของหน้าคือ:
  • ตรวจสอบองค์ประกอบปัจจุบัน/ ตรวจสอบองค์ประกอบไม่นำเสนอ
  • ตรวจสอบ TextPresent / ตรวจสอบ TextNotPresent
  • ตรวจสอบตำแหน่งองค์ประกอบด้านซ้าย / ตรวจสอบตำแหน่งองค์ประกอบด้านบน
  • คำสั่ง Wait แบ่งออกเป็น 2 คำสั่ง:
  • คำสั่ง andWait – ใช้เมื่อคาดว่าจะโหลดเพจ
  • คำสั่ง waitFor - ใช้เมื่อคาดว่าจะไม่มีการโหลดหน้าใหม่