bun นั้นได้ปล่อย feature ต่าง ๆ ออกมามากมาย
ทั้งการปรับปรุงเรื่องของ performance จากการ build
และลดการใช้งาน memory ในขณะ runtime
รวมทั้งยังได้ปรับปรุงแนวทางการทดสอบอีกด้วย

โดยปัญหาหนึ่งที่มักจะเจอประจำคือ
เมื่อจำนวนของ test case มากขึ้น จะใช้เวลาทดสอบมากนั่นเอง
ดังนั้นทาง bun 1.3.13 จึงได้เพิ่มความสามารถการทดสอบใหม่ ๆ ออกมา คือ

  • isolated test ทำการ run แยกไฟล์ test แต่อยู่ใน process เดียวกัน โดยจะมี global object ของแต่ละไฟล์ test จะแยกกัน
  • parallel test ทำการ run แยกไฟล์ test เหมือน isolate mode และแยก process กันไป ตามจำนวน core ของ CPU ที่กำหนด (ค่า default คือจำนวน core CPU ที่มี)

มาลองใช้งานกันดู

เริ่มด้วยการ upgrade Bun และ สร้าง project กัน

โดยใน project จะสนับสนุน Claude code และ Cursor ให้เลย
มีทั้ง CLAUDE.md และ cursor rule ให้เลย

จากนั้นมาลอง test กันดูทั้ง isolate mode และ parallel mode
ทำการทดสอบดังนี้

ยังไม่พอนะ ยังสามารถ detect change จาก git commit ได้อีกด้วย
เพื่อทำการ run เฉพาะส่วนที่ change เท่านั้น
ซึ่งสามารถทำงานร่วมกับ watch mode ได้อย่างดี

และใน version ก่อนนี้ Bun นั้นสนับสนุน Headless Web Browser Automation แล้ว

ช่วยให้สามารถควบคุม web browser ได้เลย
ทั้ง WebKit ใน MacOS และ Chrome สำหรับ OS อื่น ๆ อีกด้วย
โดยจะมีความสามารถเหมือนกับ Playwright เลย คือ auto-wait
และทำการ capture หน้จอมาดูผลการทำงานได้อีกด้วย
มาลองใช้กันดูได้ เช่น

ลองทำการ upgrade และลองใช้งานกันดูครับ
มีประโยชน์มาก ๆ ต่อการพัฒนาและทดสอบระบบงาน
ขอให้สนุกกับการ coding

Tags: