Catch up on everything announced at Firebase Summit, and learn how Firebase can help you accelerate app development and run your app with confidence. Learn More

บทนำสู่ Firebase Local Emulator Suite

จัดทุกอย่างให้เป็นระเบียบอยู่เสมอด้วยคอลเล็กชัน บันทึกและจัดหมวดหมู่เนื้อหาตามค่ากำหนดของคุณ

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

การพัฒนาในพื้นที่ด้วย Local Emulator Suite อาจเหมาะสมกับการประเมิน การสร้างต้นแบบ การพัฒนา และเวิร์กโฟลว์การรวมอย่างต่อเนื่อง

การเพิ่ม Firebase Local Emulator Suite ให้กับเวิร์กโฟลว์การพัฒนาของคุณ

ก่อนจะเริ่ม

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

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

Firebase Local Emulator Suite คืออะไร

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

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

Emulator Suite ในเวิร์กโฟลว์ในพื้นที่ของคุณ

เวิร์กโฟลว์ต้นแบบและการทดสอบของคุณสามารถใช้ Local Emulator Suite ได้หลายวิธี:

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

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

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

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

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

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

Emulator Suite เสริมด้วยเครื่องมือต้นแบบและทดสอบอื่นๆ

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

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

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

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