Mock Service Worker คือ library สำหรับการจำลองงาน
ฝั่ง backend ที่ทางฝั่ง frontend เรียกใช้งาน
พัฒนาด้วยภาษา JavaScript
สามารถจำลองได้ทั้ง REST API และ GraphQL API

Library ตัวนี้จะใช้งาน Service Worker API ใน modern web browser
โดยทำการ intercept หรือดักจับ request ต่าง ๆ ที่ออกจาก browser นั่นเอง

ขั้นตอนการทำงานของ MSW เป็นดังรูป

ทำให้การทดสอบระบบ web application ได้ง่ายขึ้น
ไม่ว่าจะพัฒนาด้วย React, Angular หรือ Vue ก็ตาม

การใช้งานก็ง่ายมาก ๆ มีขั้นตอนดังนี้

  • Import mock utility ของ MSW
  • ทำการกำหนด request และ response ที่ต้องการจำลอง
  • ทำการ start mock server

จากนั้นลองดูผลการดักจับ request จาก URL ที่วิ่งไปยัง GitHub.com ดังนี้

เพียงเท่านี้ก็สามารถใช้งานได้แบบง่าย ๆ แล้ว
โดยการทำงานจะเหมือนกับ library อื่น ๆ เช่น Nock เป็นต้น