Chain locator เป็นรูปแบบการค้นหา Web Element แบบใหม่ที่ได้มาจาก Library Playwright ของ Microsoft สำหรับใครที่ต้องการใช้ความสามารถนี้จำเป็นต้อง upgrade Robot Framework Puppeteer เป็น version 3 ซะก่อน ด้วยคำสั่งด้านล่างนี้เลย


pip install robotframework-puppeteerlibrary==3.0.2

Chain locator เป็นการนำ CSS locator และ X Path locator มาใช้ร่วมกัน ทำให้บางจุดที่เราต้องการใช้งานจุดเด่นจอง XPath ที่เก่งในเรื่อง index แต่ทำงานได้ช้า มาผสมรวมกับ CSS locator ที่เก่งในเรื่องการคนหาจาก class หรือ attribute ทำให้การค้นหาทำได้ครอบคลุมและมีประสิทธิภาพมากยิ่งขึ้น

ตัวอย่าง Chain locator

  • เริ่มต้นจากกำหนดประเภทของ locator ให้เป็น chain เสมอ
  • >> ใช้เพื่อขั้นระหว่าง sub locator ย่อยๆ

chain=form >> input

จากตัวอย่างจะเป็นการค้นหา tag ที่ชื่อว่า form ก่อน และไล่หา tag input ที่อยู่ข้างใต้ form อีกทีหนึ่ง

chain=(//form)[1] >> input.email

ตัวอย่างเป็นการใช้ XPath locator หา form จาก Index ที่ 1 แล้วใช้ CSS locator หา tag input ที่มี class email ต่อ

ตัวอย่างการนำไปใช้งาน

Submit register form
Open browser to test page http://127.0.0.1:7272/register-form-example.html
Input Text chain=(//form)[2] >> input.username [email protected]
Input Text chain=(//form)[2] >> input.password 123456789
Click Element css=button[type=”submit”]