การพัฒนาระบบงานด้วยภาษา JavaScript นั้น
มีทางเลือกมากมาย ซึ่งยากต่อผู็เริ่มต้นมาก
การทดสอบก็เช่นกัน มีมากมายสุด ๆ

แต่ถ้ามองในมุมกลับกัน แสดงว่า
มีความพยายามในการทดสอบระบบที่พัฒนาด้วยภาษา JavaScript
ทั้ง Unit testing, Integration testing และ Functional testing

ดังนั้นเรามาดูกันหน่อยว่ามีอะไรกันบ้าง
มี library จำนวนมากเพียงใด
มาเริ่มกันเลย

1. สำหรับการกำหนดโครงสร้าง และ environment ของการทดสอบ

ประกอบไปด้วย

2. สำหรับการตรวจสอบการทำงาน หรือ Assertion

ประกอบไปด้วย

3. สำหรับการแสดงผลและดูผลการทดสอบ

ประกอบไปด้วย Jasmine, Mocha, Jest และ Karma

4. สิ่งที่ขาดไม่ได้ในการทดสอบคือ Test double เช่น Mock, Stub และ Spy

เพื่อจำลองระบบหรือ dependency ต่าง ๆ ในระบบ
ประกอบไปด้วย

5. ว่าด้วยเรื่องของ Code coverage หรือดูว่า test ที่สร้างขึ้นมาครอบคลุม code จำนวนเท่าไร ?

ประกอบไปด้วย

6. สำหรับการทดสอบผ่าน Browser หรือ environemt ที่เหมือน Browser

ช่วยทำให้การทดสอบระบบงานผ่าน browser ง่ายและเร็วขึ้น
ประกอบไปด้วย

คำถามที่น่าสนใจต่อมาคือ ใช้อะไรบ้าง ?