מבוא לחבילת האמולטור המקומי של Firebase

Firebase Local Emulator Suite היא קבוצה של כלים מתקדמים למפתחים שרוצים לפתח ולבדוק אפליקציות באופן מקומי באמצעות Cloud Firestore,‏ Realtime Database,‏ Cloud Storage for Firebase,‏ Authentication,‏ Firebase Hosting,‏ Cloud Functions (בטא),‏ Pub/Sub (בטא) ו-Firebase Extensions (בטא). הוא מספק ממשק משתמש עשיר שעוזר לכם להתחיל לעבוד ולפתח אב טיפוס במהירות.

פיתוח מקומי באמצעות Local Emulator Suite יכול להתאים לתהליכי העבודה שלכם של הערכה, יצירת אב טיפוס, פיתוח ושילוב רצוף.

הוספת Firebase Emulator Suite לתהליכי הפיתוח.

לפני שמתחילים

לפני שמתחילים להשתמש ב-Firebase Local Emulator Suite, מומלץ להכיר את מוצרי Firebase ואת מודל הפיתוח של Firebase:

  • כדאי לקרוא את הנושאים בנושא תחילת העבודה עם Firebase שמותאמים לפלטפורמה ולמוצרים שלכם (Apple, ‏ Android או אינטרנט).
  • מורידים אפליקציה למתחילים מוכנה לריצה בפלטפורמה הרצויה, קוראים את הקוד ומריצים אותו. אפליקציית FriendlyEats למתחילים היא בחירה טובה (iOS, ‏ Android או אינטרנט).

מה זה Firebase Local Emulator Suite?

חבילה של אמולטורים מקומיים ל-Firebase, שמכילה אמולטורים נפרדים של שירותים שנועדו לחקות במדויק את ההתנהגות של שירותי Firebase. כלומר, תוכלו לחבר את האפליקציה ישירות למהדמנים האלה כדי לבצע בדיקות שילוב או בדיקות איכות בלי לגעת בנתוני הייצור.

לדוגמה, אפשר לחבר את האפליקציה לאמולטור Cloud Firestore כדי לקרוא ולכתוב מסמכים בצורה בטוחה במהלך הבדיקה. פעולות הכתיבה האלה עשויות להפעיל פונקציות במהנת Cloud Functions. עם זאת, האפליקציה תמשיך לתקשר עם שירותי Firebase בסביבת הייצור גם אם הסימולטורים לא זמינים או לא מוגדרים.

חבילה של אמולטורים בתהליכי העבודה המקומיים

תוכלו להשתמש בכלים לאמולטור המקומי במספר דרכים בתהליך העבודה שלכם עם אב טיפוס ובדיקות:

  • בדיקות יחידה: באמצעות Firebase Test SDK, אפשר לכתוב בדיקות יחידה ב-Node.js באמצעות מפעיל הבדיקות mocha. ב-Test SDK יש כמה שיטות נוחות לטעינה של כללי אבטחה, לניקוי המסד המקומי בין בדיקות ולניהול אינטראקציה סינכרונית עם המהדמנים. הוא מצוין לכתיבה של בדיקות פשוטות לאינטראקציות עם מסדי נתונים שלא תלויות בלוגיקה של האפליקציה.
  • בדיקות שילוב: כל אמולטור מוצרים בנפרד ב-Emulator Suite מגיב לקריאות ל-SDK ול-REST API בדיוק כמו שירותי Firebase בסביבת הייצור. כך תוכלו להשתמש בכלי הבדיקה שלכם כדי לכתוב בדיקות שילוב עצמאיות שמשתמשות ב-Local Emulator Suite כקצה העורפי.
  • בדיקות ידניות: אפשר לחבר את האפליקציה שפועלת ל-Local Emulator Suite כדי לבדוק את אפליקציית Firebase באופן ידני, בלי לסכן את נתוני הייצור או להגדיר פרויקט בדיקה.
  • בדיקות מוצרים: אפשר להתקין ולנהל את Firebase Extensions בסביבה מקומית בטוחה, להבין טוב יותר את היכולות שלו ולצמצם את עלויות החיוב.

אילו תכונות ופלטפורמות של Firebase נתמכות?

בעזרת 'כלים לאמולטור מקומי ב-Firebase' תוכלו לבדוק את הקוד שלכם עם המוצרים המרכזיים שלנו באופן שמאפשר פעולה הדדית. במהדורת ה-emulator של Cloud Functions יש תמיכה בפונקציות HTTP, בפונקציות שניתן להפעיל אותן ובפונקציות רקע שמופעל על ידי Cloud Firestore,‏ Realtime Database,‏ Cloud Storage for Firebase,‏ Authentication ו-Pub/Sub. באמולטורים Cloud Firestore,‏ Realtime Database ו-Cloud Storage for Firebase יש אמולציה מובנית של Firebase Security Rules.

Cloud
Firestore
מסד נתונים
בזמן אמת
Cloud
Storage
for Firebase
אימות Cloud
Functions
Cloud
Pub/Sub
תוספים
Android SDK לא רלוונטי לא רלוונטי
iOS SDK לא רלוונטי לא רלוונטי
Web SDK לא רלוונטי לא רלוונטי
Node.js Admin SDK לא רלוונטי לא רלוונטי

השלבים הבאים

כלים אחרים ליצירת אב טיפוס ולבדיקה

חבילת הכלי של המהדמנים כוללת גם כלים אחרים ליצירת אב טיפוס ולבדיקה.

כלי בדיקה של Cloud Functions בסביבת Firebase CLI יש כמה דרכים ליצור אב טיפוס של פונקציות ולבדוק אותן:

  • הסימולטור של Cloud Functions, חלק מ-Emulator Suite. אפשר להשתמש במהדר הזה עם נתונים מקומיים פעילים וכללי אבטחה במהדר Firestore ו/או במהדר Realtime Database.
  • מעטפת Cloud Functions, שמאפשרת פיתוח ויצירת אב טיפוס של פונקציות אינטראקטיביות וחזרתיות. המעטפת משתמשת במהנתח של Cloud Functions עם ממשק בסגנון REPL לפיתוח. אין שילוב עם המהדמנים Cloud Firestore או Realtime Database. באמצעות המעטפת, אפשר ליצור נתונים מדומים ולבצע קריאות לפונקציות כדי לדמות אינטראקציה עם מוצרים ש-Local Emulator Suite לא תומך בהם כרגע: Analytics,‏ Remote Config ו-Crashlytics.
  • Firebase Test SDK for Cloud Functions, ‏ Node.js עם מסגרת mocha לפיתוח פונקציות. למעשה, Cloud Functions Test SDK מספק אוטומציה על גבי מעטפת Cloud Functions.

מידע נוסף על המעטפת של Cloud Functions ועל Cloud Functions Test SDK זמין במאמרים בדיקת פונקציות באופן אינטראקטיבי ובדיקת יחידה של Cloud Functions.

כלים לבדיקת כללי אבטחה Emulator Suite היא חבילה של כלים שמתאימה במיוחד לבדיקת כללי האבטחה. עם זאת, אפשר גם להשתמש באפשרויות הבאות:

  • Rules Playground, חלק מהמסוף Firebase. ב-Rules Playground תוכלו לקבל חוויה אינטראקטיבית נהדרת בתחילת הדרך שלכם בתכנון כללי אבטחה. מידע נוסף זמין במאמר אימות מהיר של כללי האבטחה של Firebase.