Catch up on everthing we announced at this year's Firebase Summit. Learn more

บทนำสู่ Firebase Local Emulator Suite

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

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

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

ก่อนจะเริ่ม

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

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

Firebase Local Emulator Suite คืออะไร

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

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

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

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

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

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

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

คลาวด์
Firestore
เรียลไทม์
ฐานข้อมูล
คลาวด์
พื้นที่จัดเก็บ
การตรวจสอบสิทธิ์ คลาวด์
ฟังก์ชั่น
คลาวด์
ผับ/ย่อย
Android SDK n/a
iOS SDK n/a
เว็บ SDK n/a
Node.js ผู้ดูแลระบบ SDK 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 ไม่รองรับในปัจจุบัน ได้แก่ Cloud Storage, Pub/Sub, Analytics, Remote Config, Storage, Auth และ Crashlytics
  • Firebase Test SDK สำหรับ Cloud Functions ซึ่งเป็น Node.js ที่มีเฟรมเวิร์กมอคค่าสำหรับการพัฒนาฟังก์ชัน ผลที่ได้คือ SDK การทดสอบฟังก์ชันระบบคลาวด์ให้การทำงานอัตโนมัติบนเชลล์ของ Cloud Functions

ท่านสามารถหาข้อมูลเพิ่มเติมเกี่ยวกับฟังก์ชั่นคลาวด์เปลือกและฟังก์ชั่นการทดสอบเมฆ SDK ที่ ฟังก์ชั่นการทดสอบการโต้ตอบ และ การทดสอบฟังก์ชั่นของระบบคลาวด์หน่วย

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