ข้อมูลเบื้องต้นเกี่ยวกับ Firebase Local Emulator Suite

Firebase Local Emulator Suite คือชุดเครื่องมือขั้นสูงสำหรับนักพัฒนาซอฟต์แวร์ที่ต้องการสร้างและทดสอบแอปในเครื่องโดยใช้ Cloud Firestore, Realtime Database, Cloud Storage สำหรับ Firebase, การตรวจสอบสิทธิ์, โฮสติ้งของ Firebase, Cloud Functions (เบต้า), Pub/Sub (เบต้า) และ Firebase Extensions (เบต้า) โดยมีอินเทอร์เฟซผู้ใช้ที่สมบูรณ์ซึ่งช่วยให้คุณใช้งานและสร้างต้นแบบได้อย่างรวดเร็ว

การพัฒนาในเครื่องด้วยชุดโปรแกรมจำลองภายในอาจเหมาะสำหรับการประเมิน การสร้างต้นแบบ การพัฒนา และเวิร์กโฟลว์การผสานรวมอย่างต่อเนื่อง

การเพิ่ม Firebase Local Emulator Suite ลงในเวิร์กโฟลว์การพัฒนา

ก่อนเริ่มต้น

ก่อนที่จะสำรวจชุดโปรแกรมจำลองภายในของ Firebase เราขอแนะนำให้คุณทำความคุ้นเคยกับผลิตภัณฑ์ Firebase และรูปแบบการพัฒนาของ Firebase ดังนี้

  • อ่านหัวข้อเริ่มต้นใช้งาน Firebase สำหรับแพลตฟอร์มและผลิตภัณฑ์ของคุณ (Apple, Android หรือเว็บ)
  • ดาวน์โหลดแอปเริ่มต้นอย่างรวดเร็วที่พร้อมใช้งานบนแพลตฟอร์มที่ต้องการ จากนั้นอ่านผ่านและเรียกใช้โค้ด แอปการเริ่มต้นอย่างรวดเร็ว EasyEats เป็นตัวเลือกที่ดี (iOS, Android หรือเว็บ)

ชุดโปรแกรมจำลองภายในของ Firebase คืออะไร

Firebase Local Emulator Suite ประกอบด้วยโปรแกรมจำลองบริการแต่ละรายการที่สร้างขึ้นเพื่อเลียนแบบลักษณะการทำงานของบริการ Firebase อย่างถูกต้อง ซึ่งหมายความว่าคุณจะเชื่อมต่อแอปกับโปรแกรมจำลองเหล่านี้ได้โดยตรงเพื่อทำการทดสอบการผสานรวมหรือ QA โดยไม่ต้องสัมผัสข้อมูลเวอร์ชันที่ใช้งานจริง

เช่น คุณเชื่อมต่อแอปกับโปรแกรมจำลอง Cloud Firestore เพื่ออ่านและเขียนเอกสารในการทดสอบได้อย่างปลอดภัย การเขียนเหล่านี้อาจทริกเกอร์ฟังก์ชันในโปรแกรมจำลอง Cloud Functions แต่แอปจะยังคงสื่อสารกับบริการ Firebase เวอร์ชันที่ใช้งานจริงต่อไปเมื่อไม่มีหรือกำหนดค่าโปรแกรมจำลองไว้

ชุดโปรแกรมจำลองในเวิร์กโฟลว์ในเครื่องของคุณ

ต้นแบบและเวิร์กโฟลว์การทดสอบสามารถใช้ชุดโปรแกรมจำลองภายในเครื่องได้หลายวิธีดังนี้

  • การทดสอบ 1 หน่วย: คุณใช้ Firebase Test SDK เขียนการทดสอบ 1 หน่วยใน Node.js ได้โดยใช้ตัวดำเนินการทดสอบ mocha โดย SDK ทดสอบมีวิธีมากมายที่สะดวกสำหรับการโหลดกฎความปลอดภัย การล้างข้อมูลฐานข้อมูลในเครื่องระหว่างการทดสอบ และการจัดการการโต้ตอบแบบซิงโครนัสกับโปรแกรมจำลอง เหมาะสำหรับการเขียนการทดสอบง่ายๆ สำหรับการโต้ตอบกับฐานข้อมูลที่ไม่ต้องใช้ตรรกะของแอป
  • การทดสอบการผสานรวม: โปรแกรมจำลองผลิตภัณฑ์แต่ละรายการในโปรแกรมจำลองจะตอบสนองต่อการเรียก SDK และ REST API เช่นเดียวกับบริการ Firebase เวอร์ชันที่ใช้งานจริง คุณจึงใช้เครื่องมือทดสอบของตัวเองเขียนการทดสอบการผสานรวมแบบจบในตัวซึ่งใช้ Local Emulator Suite เป็นแบ็กเอนด์ได้
  • การทดสอบด้วยตนเอง: คุณเชื่อมต่อแอปพลิเคชันที่ทำงานอยู่กับชุดโปรแกรมจำลองภายในเพื่อทดสอบแอป Firebase ด้วยตนเองได้โดยไม่ต้องเสี่ยงกับข้อมูลที่ใช้งานจริงหรือกำหนดค่าโปรเจ็กต์ทดสอบ
  • การประเมินผลิตภัณฑ์: คุณจะติดตั้งและจัดการ Firebase Extensions ในสภาพแวดล้อมในเครื่องที่ปลอดภัย รวมถึงเข้าใจความสามารถได้ดีขึ้นในขณะเดียวกันก็ลดค่าใช้จ่ายในการเรียกเก็บเงิน

รองรับฟีเจอร์และแพลตฟอร์มใดบ้างของ Firebase

ชุดโปรแกรมจำลองภายในของ Firebase ให้คุณทดสอบโค้ดกับผลิตภัณฑ์หลักของเราด้วยวิธีการทำงานร่วมกัน โปรแกรมจำลอง Cloud Functions รองรับฟังก์ชัน HTTP, ฟังก์ชันที่เรียกใช้ได้ และฟังก์ชันพื้นหลังที่ทริกเกอร์โดย Cloud Firestore, Realtime Database, Cloud Storage สำหรับ Firebase, การตรวจสอบสิทธิ์ และ Pub/Sub โปรแกรมจำลอง Cloud Firestore, Realtime Database และ Cloud Storage for Firebase มีการจำลองกฎการรักษาความปลอดภัยของ Firebase ในตัว

ระบบคลาวด์
Firestore
ฐานข้อมูล
แบบเรียลไทม์
Cloud
พื้นที่เก็บข้อมูล
สำหรับ Firebase
การตรวจสอบสิทธิ์ ฟังก์ชัน
ระบบคลาวด์
Cloud
Pub/Sub
ส่วนขยาย
Android SDK ไม่มี ไม่มี
iOS SDK ไม่มี ไม่มี
SDK ของเว็บ ไม่มี ไม่มี
SDK ผู้ดูแลระบบ Node.js ไม่มี ไม่มี

ขั้นตอนถัดไป

เครื่องมืออื่นๆ สำหรับการสร้างต้นแบบและการทดสอบ

ส่วนชุดโปรแกรมจำลองเป็นส่วนเสริมจากเครื่องมือต้นแบบและเครื่องมือทดสอบอื่นๆ

เครื่องมือทดสอบ Cloud Functions สภาพแวดล้อม Firebase CLI มีวิธี สร้างต้นแบบและทดสอบฟังก์ชันหลายวิธี ดังนี้

  • โปรแกรมจำลอง Cloud Functions ซึ่งเป็นส่วนหนึ่งของชุดโปรแกรมจำลอง โปรแกรมจำลองนี้สามารถทำงานร่วมกับข้อมูลสดในเครื่องและกฎความปลอดภัยในโปรแกรมจำลองและ/หรือโปรแกรมจำลองฐานข้อมูลเรียลไทม์ของ Firestore
  • Shell ฟังก์ชันระบบคลาวด์ ซึ่งช่วยให้สร้างต้นแบบและการพัฒนาฟังก์ชันแบบอินเทอร์แอกทีฟและทำซ้ำได้ Shell ใช้โปรแกรมจำลอง Cloud Functions ที่มีอินเทอร์เฟซรูปแบบ REPL สำหรับการพัฒนา ไม่มีการผสานรวมกับ Cloud Firestore หรือโปรแกรมจำลอง Realtime Database คุณสามารถใช้ Shell เพื่อจำลองข้อมูลและเรียกใช้ฟังก์ชันเพื่อจำลองการโต้ตอบกับผลิตภัณฑ์ที่ชุดโปรแกรมจำลองภายในยังไม่รองรับ ซึ่งได้แก่ Analytics, การกำหนดค่าระยะไกล และ Crashlytics
  • Firebase Test SDK สำหรับ Cloud Functions ซึ่งเป็น Node.js ที่มีเฟรมเวิร์ก Mocha สำหรับการพัฒนาฟังก์ชัน Cloud Functions Test SDK จะทำให้ระบบทำงานอัตโนมัติบนเชลล์ Cloud Functions

ดูข้อมูลเพิ่มเติมเกี่ยวกับ Shell ฟังก์ชัน Cloud และ Cloud Functions Test SDK ได้ที่ทดสอบฟังก์ชันแบบอินเทอร์แอกทีฟและการทดสอบหน่วยของ Cloud Functions

เครื่องมือทดสอบกฎการรักษาความปลอดภัย ชุดโปรแกรมจำลองเป็นชุดเครื่องมือที่แนะนำให้ใช้ในการทดสอบกฎการรักษาความปลอดภัย อย่างไรก็ตาม คุณยังสามารถใช้: