มีอะไรใหม่ใน Pest V2 บ้าง

16 เมษายน 2567 เวลาอ่าน 1 นาที
มีอะไรใหม่ใน Pest V2 บ้าง

ปกติแล้วผมจะใช้ PHPUnit สำหรับทำ Unit Testing และ Feature Testing ใน Laravel เป็นหลัก วันนี้มีโอกาสจะขึ้น Project Laravel ใหม่ เลยจะลองนำ Pest มาใช้งานแทน PHPUnit ดูบ้าง 

เห็น Clip นี้ นาย Nuno Maduro ซึ่งเป็นผู้เขียน Pest ได้มาอธิบายว่าใน Pest V2 นั้นมีฟีเจอร์อะไรน่าสนใจบ้าง เลยลองเอามาแปะสรุปไว้ในบทความนี้ครับ

เขียน Test ด้วย Pest

เบื้องต้นแล้ว Code Test จะสั้นกว่า PHPUnit มาก ๆ เลยครับ เนื่องจาก ตัดเรื่องการ ประกาศ class ประกาศ method พวกนี้ออกไปเยอะ เหลือแต่ function เพียว ๆ ที่เราต้องการเขียน Test เลย 

นอกจากนี้ผลลัพธ์ ที่แสดงใน Terminal ยังดู Clean กว่าเดิมมาก ๆ เมื่อเทียบกับ PHP Unit ครับ

Architecture Testing

- ตรวจว่าห้ามมี dd, dump ใน code ของเราได้เลย

Strees Test

ทดสอบปริมาณการรับ Load ภายใต้ web ของเรา (หรือเวปใครก็ได้ 😎)  โดยเราสามารถระบุ config ที่จะ run ได้ประมาณนี้ครับ

- url เวปที่ต้องการ test - อาจไม่ใช่เวป Laravel ที่เรา run เองก็ได้

- ระยะเวลาในการ run test ปกติ default จะอยู่ที่ 5 วินาที

- จำนวน Concurrent User โดย default 1 user

เมื่อ Run Test เรียบร้อยแล้วจะให้ผลลัพธ์ ดังนี้

- Success Rate จำนวน Request ที่ run สำเร็จ

- จำนวน Request ที่ Server รองรับได้ภายในระยะเวลาที่กำหนด

จากตัวอย่างที่นาย Nuno ได้โชวน์ใน Clip ได้มีการลอง Stress Test Laravel App ที่ run บน Laravel Octane อีกด้วย โดยความเร็วที่ได้นัน้น น่าสนใจมากจริง ๆ ครับ

สำหรับเรื่อง Stress Test นี้ยังได้มีอีก Clip ที่นาย Nuno ได้อธิบายการทำงานของ Stress Test โดยเแพาะแบบระเอียดมากขึ้น ตาม clip นี้เลยครับ

 

อ้างอิง

นอกจากสองเรื่องนี้แล้ว Pest ยังมีความสามารถอื่น ๆ ที่น่าสนใจอีกมาก สามารถศึกษารายละเอียดเพิ่มเติมเกี่ยวกับ Pest ได้ที่ Documentation เลยครับ https://pestphp.com/docs/ 

Phattarachai Chaimongkol

เกี่ยวกับ phattarachai.dev

ผมอ๊อฟนะครับ เป็นผู้ประกอบการอิสระ ที่ปรึกษาทางด้าน Web Application Development ให้แก่องค์กร ธุรกิจ SME และหน่วยงานราชการ
Web Developer ผู้มีใจรักใน Laravel เป็นพาร์ทเนอร์บริษัท Digital Agency ชั้นนำทางด้าน UX/UI เพื่อพัฒนาโปรเจคให้แก่ลูกค้า ผมช่วยสร้างเครื่องมือทางด้าน Web ที่มีคุณภาพให้ผู้ประกอบการดำเนินธุรกิจได้ง่ายขึ้นใช้งานได้จริง เน้นประสบการณ์ ความชำนาญ ผลงานคุ้มค่าเทียบเท่าจ้างงานกับบริษัทใหญ่ ๆ

ยามว่าง ๆ ชอบเล่นเกมส์บน Steam ครับ

เรื่องที่เกี่ยวข้อง

สรุป Taylor Otwell Keynote ใน Laracon US 2024 - Inertia 2.0, VS Code Extension และ Laravel Cloud
16 เมษายน 2567
สรุป Taylor Otwell Keynote ใน Laracon US 2024 - Inertia 2.0, VS Code Extension และ Laravel Cloud
วิธีการ fix คอลัมน์ในตาราง html table ให้ชิดซ้ายไว้เวลา Horizontal scrolling เหมือนใน Excel
16 เมษายน 2567
วิธีการ fix คอลัมน์ในตาราง html table ให้ชิดซ้ายไว้เวลา Horizontal scrolling เหมือนใน Excel
วิธีการเคลียร์ไฟล์ Binary Log ใน MySQL
16 เมษายน 2567
วิธีการเคลียร์ไฟล์ Binary Log ใน MySQL