หากใครเคยเขียน Web Automate Test มาบ้างคงจะคุ้นเคยกับคำสั่ง Wait Until Page Contains Element กันดี ปกติเรามักจะใช้ในกรณีที่เราต้องการเช็คเพื่อให้แน่ใจว่า Element ที่เราต้องการจะใช้งานแสดงบนหน้าเพจแล้วหรือยัง เช่น หากเราจะกดปุ่ม Submit ก่อนจะกดเราก็มักจะใช้คำสั่ง Wait Until Page Contains Element ก่อนนั่นเอง
Auto-Waiting คืออะไร
การทำงานของ Auto-Waiting ก็ตรงตามชื่อเลยคือ ระบบจะมีการรอแบบอัตโนมัติก่อนที่เราจะทำ Action ต่างๆเช่น กดปุ่ม กรอกข้อมูล หรือรอหน้าเพจโหลด ซึ่งรูปแบบการรอแบบอัตโนมัติผมสรุปรวมไว้ด้านล่างนี้แล้วครับ
Action | Attached | Visible | Stable | Enabled | Editable |
Click Element | Yes | Yes | Yes | Yes | – |
Input Text | Yes | Yes | Yes | Yes | Yes |
Get Text | Yes | Yes | – | – | – |
Get Value | Yes | – | – | – | – |
ประโยชน์ของ Auto-Waiting
- ทำให้ code ของเราสั้นลงมาก ลดการที่เราลืม Wait ก่อนที่จะส่งคำสั่งต่างๆไปได้เยอะมาก
- ช่วยป้องกันการทำงานผิดผลาดของการรันคำสั่งก่อนที่ Element จะพร้อมทำงานเช่น กดปุ่มทั้งที่ปุ่มยังไม่ Enabled นั่นเอง
จะเปิดใช้ Auto-Waiting ยังไง
Puppeteer ตั้งแต่ version 3 ขึ้นไปจะมีความสามารถ Auto-Waiting ติดมาให้แบบอัตโนมัติ หากยังใช้ version เก่าสามารถอัพเกรดโดยใช้คำสั่ง
pip install --upgrade robotframework-puppeteerlibrary
สนใจเรียนรู้แบบเจาะลึก
Basic Robot Framework Puppeteer
Web Automated Test ด้วย
Robot Framework Puppeteer