
คำถาม ใน Playwright นั้น ถ้าเราต้องการ run test case เฉพาะที่เปลี่ยนแปลงเท่านั้น
จะต้อง run อย่างไรบ้าง ?
คำตอบมี 2 แบบคือ
- แบบที่ 1 ใช้ watch mode ใน Playwright UI mode
- แบบที่ 2 ใช้ผ่าน CLI ด้วย option –only-changed
ในแบบแรกใช้ผ่าน Playwright UI Mode ไม่น่ามีอะไร
แต่แบบที่สอง ใช้งานผ่าน CLI
ซึ่งน่าจะใช้งานบ่อยได้การ run ทั้งหมด หรือใน pipeline ของระบบ CI/CD
ปกติจะใช้งานด้วยคำสั่ง
$npx playwright test
แต่ถ้าเราต้องการ run เฉพาะ test case ที่ทำการเปลี่ยนแปลงเท่านั้น
โดยใน Playwright จะทำการตรวจสอบผ่าน git commit นั่นเอง
ด้วยคำสั่ง
$npx playwright test --only-changed
จะทำการตรวจสอบการเปลี่ยนแปลงปัจจุบันกับตำแหน่ง HEAD ใน git บนเครื่องเรานั่นเอง
ถ้าเราทำงานแบบ feature branch แล้วต้องทำการ merge ไปยัง main branch เสมอ
ก่อนการ merge เราต้องทำการ run test ใน branch ของเราก่อนเสมอ
จะทำการ run ด้วยคำสั่ง
$npx playwright test --only-changed=main
หรือนำเอาการ run test ไปใส่ใน pre-commit ก็ได้
จะได้ run test ทุก ๆ ครั้งที่ commit ได้เลย
และ run เฉพาะ test case ที่มีการเปลี่ยนแปลงเท่านั้น
เพิ่มเติมกับการ run เฉพาะ test case ที่ failure จากการ run ครั้งล่าสุดด้วย –last-failed
ลองใช้งานกันดู สะดวกสบายดี
Reference websites