Phantom Mock: ส่วนขยาย Chrome สำหรับการจำลอง API ในเบราว์เซอร์
Phantom Mock ซึ่งพัฒนาโดยทีม Phantom Mock เป็นส่วนขยายของ Chrome ที่ดักจับคำขอเครือข่ายของเบราว์เซอร์เพื่อจำลองการตอบสนองของแบ็กเอนด์สำหรับการทดสอบด้านหน้า เครื่องมือนี้จับกิจกรรม Fetch และ XHR เพื่อให้นักพัฒนาสามารถเลียนแบบสถานะเซิร์ฟเวอร์ต่าง ๆ ขณะทำงานในเครื่องท้องถิ่น มันทำการตลาดตัวเองในฐานะโซลูชันที่เน้นการทำงานในเครื่องเป็นหลักและไม่ต้องการการกำหนดค่าใด ๆ ที่ทำงานทั้งหมดภายในเบราว์เซอร์ ผู้ใช้ที่ตั้งใจคือ นักพัฒนาด้านหน้าและวิศวกร QA ที่ต้องการทดสอบอินเทอร์เฟซโดยไม่ขึ้นกับแบ็กเอนด์ที่ใช้งานอยู่。
คุณสามารถทดสอบอะไรได้บ้างด้วย Phantom Mock?
นักพัฒนาสามารถทดสอบการจัดการข้อผิดพลาดของส่วนหน้าและความแปรผันของสถานะข้อมูลโดยไม่ต้องเปลี่ยนแปลงโค้ดเซิร์ฟเวอร์ ส่วนขยายนี้ทำให้สามารถสร้างกรณีขอบของ API ได้อย่างมีประสิทธิภาพเพื่อให้สามารถตรวจสอบส่วนประกอบ UI ข้อความข้อผิดพลาด และตรรกะการลองใหม่ได้ตามการตอบสนองที่คาดการณ์ได้ ความสามารถนี้สนับสนุนการทดสอบที่กำหนดได้และลดการพึ่งพาแบ็กเอนด์ที่เปลี่ยนแปลงระหว่างการพัฒนาและ QA ข้อมูลทดสอบสามารถรวมถึงฟิลด์ที่ขาดหายไปและค่าขอบสำหรับความทนทานของส่วนประกอบ
- รหัสข้อผิดพลาด HTTP เช่น 404 หรือ 500
- Payload JSON ที่กำหนดเอง สำหรับสถานะข้อมูลที่หลากหลาย
- การตอบสนองที่ล่าช้าหรือว่างเปล่า เพื่อตรวจสอบตรรกะการโหลดและการสำรองข้อมูล
คุณสามารถใช้ mocks และเปลี่ยนกฎได้เร็วแค่ไหน?
ส่วนขยายนี้ใช้กฎ mock ในเวลาจริงในหลายสถานการณ์การพัฒนา ดังนั้นการเปลี่ยนแปลงมักจะมีผลโดยไม่ต้องโหลดหน้าใหม่ คุณสามารถตั้งค่าความล่าช้าตามกฎเพื่อลอกเลียนการหน่วงเวลาและเปิดหรือปิดกฎเดียวหรือทั้งส่วนขยายด้วยการคลิกเพื่อสลับกรณีทดสอบ ความเร่งด่วนนี้ช่วยลดเวลาการวนซ้ำ เมื่อวินิจฉัยพฤติกรรม UI ภายใต้เงื่อนไข API เฉพาะ
การเลือกคำขอมีความละเอียดแค่ไหนและมันทำงานที่ไหน?
การกำหนดเป้าหมายคำขอสนับสนุนการจับคู่รูปแบบ URL ตัวกรองวิธี HTTP และนิพจน์ปกติเพื่อให้กฎสามารถกำหนดเป้าหมายไปยังจุดสิ้นสุดเฉพาะหรือกลุ่มการเรียก การขยายนี้จะดักจับการจราจรทั้ง Fetch และ XMLHttpRequest และรวมถึง การเปิดใช้งานตามกฎ เพื่อรักษาขอบเขตการทดสอบให้แคบ มันถูกแจกจ่ายสำหรับ Chrome และเบราว์เซอร์ที่ใช้ Chromium อื่น ๆ เช่น Edge, Brave และ Vivaldi โดยรักษาการดำเนินการในท้องถิ่นโดยไม่ต้องใช้พร็อกซีภายนอก
ตัวเลือกที่ใช้งานได้จริงสำหรับการจำลอง API ในท้องถิ่น โดยมีข้อจำกัดของเบราว์เซอร์
Phantom Mock เป็นตัวเลือกที่ใช้งานได้จริงสำหรับนักพัฒนาส่วนหน้าและวิศวกร QA ที่ต้องการควบคุมการตอบสนองของ API ในท้องถิ่นอย่างรวดเร็วระหว่างการทดสอบ UI ขอบเขตของมันจำกัดอยู่ที่เบราว์เซอร์ที่ใช้ Chromium ซึ่งจำกัดทีมงานที่ใช้เอนจินอื่น ๆ เป็นเคล็ดลับที่ใช้งานได้จริง ให้เปิดการตั้งค่า Allow in Incognito ของเบราว์เซอร์ก่อนที่จะเรียกใช้สถานการณ์การทดสอบในโหมดส่วนตัว ส่วนขยายนี้เหมาะกับการทำงานที่ให้ความสำคัญกับการจัดการการจำลองในเบราว์เซอร์อย่างรวดเร็วมากกว่าการตั้งค่าพร็อกซีภายนอก.
ข้อดี
- ดักจับคำขอโดยไม่ต้องแก้ไขโค้ดของแอปพลิเคชัน
- รองรับการตอบกลับ JSON แบบกำหนดเองและรหัสสถานะ HTTP ที่ปรับแต่งได้
- การตอบสนองตามกฎล่าช้าเพื่อจำลองสภาพเครือข่ายที่ช้า
- การจับคู่รูปแบบและการกรองวิธีการสำหรับการกำหนดเป้าหมายคำขออย่างแม่นยำ
ข้อเสีย
- ใช้ได้เฉพาะสำหรับเบราว์เซอร์ที่ใช้ Chromium เท่านั้น
- การใช้โหมดไม่ระบุตัวตนต้องเปิดใช้งานด้วยตนเองในการตั้งค่าเบราว์เซอร์
- กฎการจำลองบางข้ออาจยังต้องการการโหลดหน้าใหม่ในบางสถานการณ์