
K6 เป็นเครื่องมือสำหรับการทำ performance testingซึ่งเขียนอธิบายการใช้งานง่าย ๆ ไปที่ Load testing with K6โดย K6 นั้นพัฒนาด้วยภาษา Goแต่เขียน script ของการทดสอบด้วยภาษา JavaScriptซึ่งใช้งานผ่าน library ชื่อว่า Goja นั่นเอง

ปัญหาเรื่องระบบล่มเนื่องมาจากผู้ใช้งานเข้ามาใช้ระบบจำนวนมากพร้อม ๆ กัน เป็นปัญหาที่ผมคิดว่า นักพัฒนาพบเห็นประจำ เช่น Pizza Hut ออก promotion 1 บาท Pokémon Go ล่ม ระบบลงทะเบียนล่ม AirAsia ล่มสำหรับ promotion BIG SALE ระบบจองตั๋วต่าง ๆ ล่ม ดังนั้นสิ่งที่ควรต้องเตรียมตัวไว้เสมอคือ การทดสอบปริมาณการใช้งานแบบพุ่งสูงอย่างรวดเร็ว (Spike Traffic) เพื่อให้เราสามารถรับมือกับปัญหาต่าง ๆ ได้อย่างรวดเร็ว มิฉะนั้นระบบไฟไหม้อย่างแน่นอน

คำถามที่น่าสนใจ สำหรับการพัฒนาระบบงาน ระบบทำงานได้อย่างรวดเร็วใช่หรือไม่ ? ระบบสามารถรองรับการจำนวนการใช้งานสูง ๆ ได้หรือไม่ ? คุณทำการทดสอบประสิทธิภาพการทำงานของระบบบ่อยไหม ? คุณทำการทดสอบประสิทธิภาพการทำงานของระบบตอนไหน ? จะเริ่มทดสอบระบบเมื่อใด ? ลองตอบกันดูนะ แต่มีคำถามที่มักได้ยิน ได้ถามกันบ่อย คือ แล้วมีเครื่องมืออะไรบ้างสำหรับ Performance Testing หรือการทดสอบประสิทธิภาพการทำงานของระบบบ้างล่ะ

ทำการแปลบางส่วนจากบทความเรื่อง Performance Testing in a Nutshell ซึ่งทำการอธิบายเรื่องของ Performance Testing ได้อย่างน่าสนใจ ทั้งแนวคิด และ แนวทางในการทดสอบ ทั้งการเตรียม environment ต่าง ๆ ทั้งการเขียน script เพื่อทดสอบ ทั้งการวิเคราะห์ผลการทดสอบ ทั้งการ monitoring ระบบ และ Lesson learn ต่าง ๆ ดังนั้น เรามาเริ่มเดินทางไปยัง Performance Testing กันเลย