Puppeteer เป็น Node library พัฒนาจาก Google
เตรียมชุดของ API สำหรับการควบคุม Google Chrome (Headless และ Non-headless)
หรือ Chromium ผ่าน DevTool protocol
ที่สำคัญไม่ต้องทำงานผ่าน Web Driver อีกต่อไป
ซึ่งถ้าใครใช้งานผ่าน Selenium จะรู้ว่ามันน่าเบื่อมาก ๆ
เพราะว่าต้อง update version ตาม Google Chrome !!
ข้อดีคือ ลด dependency ต่าง ๆ
สำหรับการควบคุมหรือจัดการ Google Chrome
แต่ก็ต้องแลกมาด้วยการเรียนรู้เพิ่มเติมนะ
นั่นคือต้องเขียนชุดการทดสอบด้วย NodeJS
แต่งานสายนี้ก็ต้องเรียนรู้อยู่แล้ว
ดังนั้นมาเริ่มใช้งานกัน
เริ่มด้วยการติดตั้ง module Puppeteer เข้า project
[code] $npm i puppeteer [/code]จากนั้นมาเริ่มเขียนชุดการทดสอบดีกว่า
เริ่มด้วยสิ่งที่ต้องการคือ การค้นหาข้อมูลที่ google- ต้องการทดสอบในหน้าจอขนาดต่าง ๆ
- โดยค่า default จะเป็น headless mode แต่ใน demo จะกำหนด headless = false เพื่อดูการทำงาน
- ค้นหาข้อมูล สวัสดี Puppeteer (ทำการกรอกคำที่ต้องการและกดปุ่ม Enter)
- ตรวจสอบผลการทำงาน
- ทำการ capture หน้าจอของแต่ละขั้นตอนด้วย (บันทึกเป็น PDF ก็ได้)