Firebase Local Emulator Suite เป็นชุดเครื่องมือขั้นสูงสำหรับนักพัฒนาที่ต้องการสร้างและทดสอบแอปในพื้นที่โดยใช้ Cloud Firestore, ฐานข้อมูลเรียลไทม์, ที่เก็บข้อมูลบนคลาวด์สำหรับ Firebase, การตรวจสอบสิทธิ์, โฮสติ้ง Firebase, ฟังก์ชั่นคลาวด์ (เบต้า), Pub/Sub (เบต้า) และส่วนขยายของ 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 |
ขั้นตอนถัดไป
เริ่มต้น ด้วยคำแนะนำแบบ Local Emulator Suite ที่แสดงวิธีการสร้างต้นแบบออฟไลน์ของฐานข้อมูลและ Cloud Functions
เรียนรู้วิธี ติดตั้งและกำหนดค่า Local Emulator Suite
เครื่องมืออื่นๆ สำหรับการสร้างต้นแบบและการทดสอบ
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 เป็นชุดเครื่องมือที่เหมาะสำหรับการทดสอบกฎความปลอดภัย อย่างไรก็ตาม คุณสามารถใช้:
- Rules Playground ซึ่งเป็นส่วนหนึ่งของคอนโซล Firebase Rules Playground มอบประสบการณ์การเริ่มต้นแบบโต้ตอบที่ยอดเยี่ยมด้วยการออกแบบกฎความปลอดภัย สำหรับข้อมูลเพิ่มเติม โปรดดูที่ ตรวจสอบกฎความปลอดภัยของ Firebase อย่างรวดเร็ว