
จากคำถามในการแบ่งปันเรื่อง Full Stack Testing ที่ Skooldio มานั้น
มีคำถามที่น่าสนใจคือ
ในการทดสอบระบบงานด้วย Playwright นั้น
ถ้าเราต้องการสร้าง dashboard กลางด้วย Grafana
เพื่อแสดงผลการทดสอบ จะทำได้หรือไม่ อย่างไรบ้าง ?
มาดูหนึ่งในแนวทางกัน
โครงสร้างของแนวทางเป็นดังรูป
- ทำการส่งข้อมูลผลการทดสอบไปยัง Prometheus Pushgateway ด้วย Playwright Prometheus Reporter
- จากนั้นทำการเก็บข้อมูลทั้งหมดไว้ที่ Promethus ซึ่งเป็น metric time-serie database
- สุดท้ายสร้าง dashboard ใน Grafana และกำหนด datasource ไปที่ Prometheus นั่นเอง

โดยใน Playwright ให้ทำการ config ดังนี้
ในไฟล์ playwright.config.ts ให้เปลี่ยน report ไปยัง Promethus reporter
ตัวอย่าง
จากนั้นใน folder ที่เก็บชุดการทดสอบต่าง ๆ ให้ทำการสร้างไฟล์ config.conf ขึ้นมา
เพื่อทำการ config การจัดเก็บข้อมูลของ report จากขั้นแรก เช่น
เมื่อทุกอย่างเรียนร้อยก็ทำการ setup ระบบจัดเก็บข้อมูลทั้ง 3 ส่วน คือ
ทำการ run test ปกติ จะได้ผลดังนี้
ให้ทำการตรวจสอบผลการทดสอบและ report ต่าง ๆ ใน Prometheus ได้
ตาม key เหล่านี้
- suite_execution_total
- suite_execution_failed
- test_execution_total
แสดงตัวอย่างดังรูป

และทำการสร้าง dashboard ใน Grafana ต่อไป แสดงตัวอย่าง ดังรูป

ลองใช้งานกันดูครับ
ตัวอย่าง source code และการติดตั้งอยู่ที่ GitHub::Up1