โดยปกตินั้นในการทดสอบระบบ web application มักจะใช้งาน Playwright อยู่แล้ว
แต่พอ Jev mode จาก TypeSafe ปล่อยออกมา
จึงนำมาลองใช้งานร่วมกับ Playwright MCP กันดู
น่าจะช่วยให้การทดสอบระบบงานผ่าน web browser ง่ายและเร็วมากขึ้น
มาลองทำ PoC (Proof of Concept) กัน
แนวคิดพื้นฐานของการทำ PoC
- ผู้ใช้งานทำการกำหนด scenario ที่ต้องการทดสอบ ซึ่งต้องมีรายละเอียดของระบบงาน
- ใช้ LLM ทำการ extract หรือแยก task ย่อย ๆ ออกมาจาก scenario
- ทำการควบคุมและอ่านข้อมูลของ web ด้วย Playwright MCP (context/state)
- ใช้งาน Jev สำหรับการตัดสินใจเลือกว่า แต่ละ task นั้นจะใช้ action หรือ tool อะไรจาก Playwright MCP
- ถ้าค่า confidence จากผลลัพธ์ของ Jev มาค่ามากกว่าเท่า 80% จะทำงานตามผลลัพธ์นั้น
- แต่ถ้า confidence ต่ำกว่า จะไปเรียกใช้งานผ่าน LLM แทน (fallback)
แสดงการทำงานดังรูป

มาดูรายละเอียดในแต่ละขั้นตอนกัน
ขั้นตอนที่ 1 ทำการ extract scenario ออกเป็น task ย่อย ๆ ด้วย LLM
ขั้นตอนที่ 2 ทำการ execute ทีละ task ไปเรื่อย ๆ โดยให้ Jev ทำการตัดสินใจ
ในขั้นตอนนี้จะใช้ Playwright MCP สำหรับเปิดหน้า web ปัจจุบัน
จากนั้นทำการอ่าน element/locator มา (state/context)
ตัวอย่างข้อมูลที่ได้
และทำการสร้าง question ให้ Jev แบบ choice ให้เลือกว่าจะทำอะไรต่อไปดี
ทั้ง Action (Click, Fill in และ Assert)
ทั้ง Element และ value ที่จะใช้งาน
และมีการถามเรื่องต่าง ๆ เพิ่มเติม เช่น page ready หรือยังด้วย noul
ตัวอย่าง code เป็นดังนี้
จะทำงานก็ต่อเมื่อค่า confidence มากกว่า 80% ขึ้นไปเท่านั้น
จึงทำงานงานด้วยการเรียกว่า Playwright MCP
ยกตัวอย่างเช่นการ click element ดังนี้
ตัวอย่างการทำงานแบบเต็ม ๆ
ผลที่ได้คือความเร็วในการทำงาน
ซึ่งปกติถ้าใช้งานผ่าน Playwright MCP ตรง ๆ จะใช้เวลาเกือบ 1 นาที
แต่วิธีการนี้ใช้งานไม่กี่วินาที
แต่ก็ต้องเขียนอธิบาย scenario ให้ชัดเจนด้วยเช่นกัน
เห็นในไทยก็มี model ปล่อยออกมาให้ใช้งานแบบ local กันแล้ว
iapp/OpenThai-SystemOne
ลองใช้งานเล่นกันดูครับ
และมีการรวบรวม project ต่าง ๆ ที่ใช้งาน Jev
ใน Awesome TypeSafe และ Jevable
เพิ่ม Jev experiment