ใน Selenium 4 นั้นเป็นเหมือนกับการยกเครื่องใหม่ของ Selenium กันเลย
โดยหนึ่งใน API ที่เพิ่มเข้ามาก็คือ Chrome DevTool APIs
ทำให้ Selenium สามารถจัดการ browser ที่สร้างมาจาก Chromium ได้
ยกตัวอย่างเช่น Chrome, Opera และ Microsoft Edge
ช่วยให้ง่ายต่อการ debug และ investigate ปัญหาต่าง ๆ ของ web
มาดูความสามารถที่มีใน Selenium Chrome DevTool APIs
- URL filter
- เพิ่ม Header ของ HTTP Request ได้
- Intercept ทั้ง request และ response ที่เข้าและออกจาก browser ทำหน้าที่เป็นเหมือน proxy นั่นเอง
- ดึงข้อมูลเรื่อง performance metric การทำงานทั้ง browser และเรื่องของ network ได้
- จำลองการทำงานของ Network ตามที่เราต้องการ
- จัดการเรื่อง security
- ทำงานกับ console
- จัดการเรื่องของ Geo Location
ตัวอย่างการใช้งานก็ไม่ยาก
มาดูตัวอย่างง่าย ๆ ที่พัฒนาด้วยภาษา Java
เริ่มจากการเพิ่ม dependency ของ Selenium 4 Java มา
ซึ่งยังเป็น beta version อยู่
[gist id="0f9342fa5a34f97bc2cdb5148eb99007" file="pom.xml"]การสร้าง session การทำงานของ DevTools
ซึ่งสร้างจาก ChromeDriver ผลที่ได้คือ เปิด Chrome ขึ้นมา ดังนี้
[gist id="0f9342fa5a34f97bc2cdb5148eb99007" file="1.java"]ทำการ Ignore certificated ที่ Errorถ้านึกไม่ออก
คือ หน้า error แบบนี้ จะทำการ ignore ไปเลย
ตัวอย่าง code
[gist id="0f9342fa5a34f97bc2cdb5148eb99007" file="2.java"]เพียงเท่านี้ก็สามารถใช้งานได้แล้ว
ลองศึกษาเพิ่มเติมกันดูครับ
Reference Websites