เนื่องจากที่ผ่านมามีหลายคนถามคำถามเดียวกันเข้ามาค่ะ…
“พี่ๆ ผมไม่อยากให้มันเปิด web browser ขึ้นมาตอนรันเทสอ่ะ?”
“พี่ๆ มีวิธีทำให้ run automated test แบบ background มะ?”
วันนี้พี่พลอยก็เลยจะมาตอบว่า “มีจ้าาาาา” และจะมาสอนการ setup web browser ให้สามารถ run automated test ด้วย Chrome แบบที่ไม่มี web browser แสดงขึ้นมา หรือที่เรียกกันว่า Headless Mode นั่นเองค่า

Headless Mode feature ใหม่ของ Google Chrome

version 59 เป็นต้นไป support  Linux และ iOS
version 60 beta เป็นต้นไป support window ค่ะ
ดังนั้น เข้าไป download และติดตั้ง Google Chrome ตาม version ข้างบนกันก่อนนะคะ

Set Option Headless Mode

ในขั้นตอนของการ Set Environment ของ web driver เราจะ Set Option Headless Mode โดยการเพิ่ม Argument –headless เข้าไปดังนี้ค่ะ

ตัวอย่าง Test script สำหรับรันเทส web แบบ Headless mode ตามด้านล่างเลยค่ะ Copy แล้วเอาไป run เลยจ้า

Test Report

หาก run แล้วจะพบว่าไม่มี Chrome Browser เปิดขึ้นมาให้กวนใจอีกต่อไป แต่เมื่อเข้าไปดูใน Test Report ก็จะพบว่ายังสามารถ Run Automated Test ได้ถูกต้องและสามารถ Capture ภาพมาได้ด้วยค่ะ

Ref: Headless Mode

อันที่จริงเรามี Headless Browser ที่ใช้รันทดสอบแบบ Headless mode โดยเฉพาะอยู่แล้ว นั่นก็คือ PhantomJS ค่ะ แต่หากลูกค้าต้องการให้ทดสอบกับ Web Browser เสมือนจริง ก็ลองเอาวิธีีที่สอนนี้ไปประยุกต์ใช้กันดูนะคะ (^^)

LEAVE A REPLY

Please enter your comment!
Please enter your name here