Home Robot Framework

Robot Framework

แก้ปัญหา Selenium Flaky Test หน้า loading ด้วย Robot Framework Puppeteer

หนึ่งในเหตุผลที่ Selenium Test Script ไม่เสถียร เกิดจาก animation บางอย่างมีความเร็วสูงมาก และไม่สามารถตรวจจับจาก Function Synchronous ได้ วิธีที่เราจัดการกับ Loading Screen ใน Selenium คือเรามักใช้ Wait Until Element... ส่วนนี้เองที่เป็นต้นเหตุของการทดสอบที่ไม่เสถียร   ตัวอย่าง flaky test ลองนึกภาพที่คุณมี Form ที่ต้องกดปุ่มเพื่อ verify ข้อมูล ก่อนที่จะทำงานขั้นตอนถัดไปได้ ตัวอย่าง Selenium Test Script: หากคุณรันเทส ข้อนี้ซ้ำๆ คุณจะพบ Test fail...

ดึงข้อมูลที่ซับซ้อนมาตรวจสอบด้วย Regular Expression

เนื่องจากมีเพื่อนๆ Inbox มาถามเกี่ยวกับการดึงค่าเพื่อใช้ในการตรวจสอบความถูกต้องของข้อมูล บางครั้งรูปแบบของข้อมูลไม่ได้มาในแบบที่พร้อมใช้งานได้เลย แต่จำเป็นต้องทำการปรับข้อมูลก่อน เช่น ราคาสินค้า 1,000.00 บาท โดยเราอาจจำเป็นต้องนำราคาสินค้าไปคำนวนต่อ เป็นเหตุให้เราต้องทำการแปลงข้อมูลก่อนนั่นเอง   Regular Expression คืออะไร สรุปง่ายๆก็คือ ตัวช่วยการค้นหาข้อมูลจากกลุ่มคำที่มีความซับซ้อนสูง โดย Regular Expression จะมีเครื่องมือคัดกรองที่ยืดหยุ่น และมีประสิทธิภาพเป็นตัวช่วยนั่นเอง ตัวอย่าง เรามี text ที่เก็บค่าราคาสินค้า "สินค้า หูฟัง v1 ราคา 1,000.00 บาท" แล้วเราจำเป็นต้องดึงค่าราคาออกมาเพื่อใช้ในการคำนวนยอดรวมสินค้า ดังนั้นสิ่งที่เราคาดหวังคือค่า 1000.00 นั่นเอง โดยสำหรับ Regex สามารถเขียน คำสั่งได้ประมาณนี้ครับ คำสั่ง +.{2}...

คลิกไม่ได้ ถ้าปุ่มยังมี animation

บางครั้งปุ่มหรือแบบฟอร์ม ที่เราต้องการจะกรอกนั้นมี Animation เช่น เลื่อนขึ้นลง ทำให้ ถ้าเราสั่งให้ script กดปุ่ม หรือกรอกข้อมูลเลยจะทำให้ Script ทำงานไม่สำเร็จนั่นเอง ตัวอย่างเช่น เราต้องการจะกดปุ่มปิด Modal dialog ของ bootstrap ลองเขียน Script แบบเก่า
Condition-RobotFrameworkPuppteer

ใช้ Keyword เดียว จัดการกับ เงื่อนไขที่หลากหลาย ด้วย Run Async Keywords And Return First Completed

หลายคนคงเคยเจอเรื่องปวดหัวกับการต้องมาเขียน Test step หลายๆ step เพื่อจัดการกับ events ที่มีหลายๆ เงื่อนไข ใช่ไหมคะ? ลองใช้ Run Async Keywords And Return First Completed ใน robot framework puppeteer เหมือนน้องๆ ดูสิ...

Robot Framework 4.0 มาแล้ว

หลังจาก Robot Framework version 3.2 ถูกปล่อยออกมา ทุกคนก็รอการอัพเดทครั้งใหญ่ที่จะทำให้ Robot Framework สามารถเขียน Test Script ที่มีความซับซ้อนสูงได้ขึ้นอีกขั้นนึง การเปลี่ยนแปลงใหญ่นี้มีอะไรบ้างมาดูกันเลย รองรับ Native IF-ELSE Statement ก่อนหน้านี้ถ้าจะใช้ IF ELSE จะเป็นการเรียกใช้ผ่าน Keywords เช่น Run Keyword...