مقدّمة عن "حزمة أدوات المحاكاة المحلية من 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 إلى عمليات سير العمل في التطوير

قبل البدء

قبل استكشاف "مجموعة أدوات المحاكاة المحلية لمنصة Firebase"، ننصحك بالاطّلاع على مزيد من المعلومات عن منتجات Firebase ونموذج تطوير Firebase:

  • اطّلِع على مواضيع البدء في استخدام Firebase لمنصّتك ومنتجاتك (Apple أو Android أو الويب).
  • نزِّل تطبيق بدء سريع جاهزًا للتشغيل على المنصة التي تختارها، ثم اقرأ الرمز البرمجي ونفِّذه. يُعدّ تطبيق بدء الاستخدام السريع في FriendlyEats خيارًا جيدًا (iOS أو Android أو الويب).

ما المقصود بـ Firebase Local Emulator Suite؟

تتألف مجموعة أدوات المحاكاة المحلية لـ Firebase من محاكيات خدمات individual مصمّمة لمحاكاة سلوك خدمات Firebase بدقة. ويعني ذلك أنّه يمكنك ربط تطبيقك مباشرةً بهذه المحاكيات لإجراء اختبار الدمج أو اختبار الجودة بدون التأثير في بيانات الإصدار العلني.

على سبيل المثال، يمكنك ربط تطبيقك بمحاكي Cloud Firestore لقراءة المستندات وكتابتها بأمان أثناء الاختبار. وقد تؤدي عمليات الكتابة هذه إلى تنشيط الدوال في محاكي Cloud Functions. ومع ذلك، سيواصل تطبيقك التواصل مع خدمات Firebase العلنية عندما لا تكون المحاكيات متاحة أو تم إعدادها.

مجموعة أدوات المحاكاة في سير العمل على الجهاز

يمكن أن يستفيد سير العمل الخاص بالنموذج الأولي والاختبار من "مجموعة أدوات المحاكاة المحلية" بطرق مختلفة:

  • اختبارات الوحدة: باستخدام حزمة تطوير البرامج (SDK) لاختبار Firebase، يمكنك كتابة اختبارات الوحدة في Node.js باستخدام أداة تشغيل اختبار mocha. توفّر حزمة تطوير البرامج (SDK) للاختبار عدة methods سهلة الاستخدام لتحميل قواعد الأمان وتفريغ قاعدة البيانات المحلية بين الاختبارات، وإدارة التفاعل المتزامن مع المحاكيات. وهي رائعة لكتابة اختبارات بسيطة للتفاعلات مع قاعدة البيانات التي لا تعتمد على منطق تطبيقك.
  • اختبارات الدمج: يستجيب كل محاكي منتج فردي في Emulator Suite لطلبات حِزم SDK وواجهة برمجة التطبيقات REST API تمامًا مثل خدمات Firebase العلنية. وبذلك يمكنك استخدام أدوات الاختبار الخاصة بك لكتابة اختبارات دمج مكتفية ذاتيًا تستخدم Local Emulator Suite كخلفية.
  • الاختبارات اليدوية: يمكنك ربط تطبيقك الذي يعمل بالإصدار العلني من Local Emulator Suite لاختبار تطبيقك على Firebase يدويًا، بدون المخاطرة بأحد بيانات الإنتاج أو ضبط مشروع اختباري.
  • تقييمات المنتجات: يمكنك تثبيت Firebase Extensions وإدارته في بيئة محلية آمنة وفهم إمكاناته بشكل أفضل مع تقليل تكاليف الفوترة.

ما هي ميزات Firebase ومنصّاتها المتوافقة؟

تتيح لك مجموعة أدوات المحاكاة المحلية لمنصة Firebase اختبار الرمز البرمجي باستخدام أساسيات منتجاتنا بطريقة قابلة للتشغيل التفاعلي. يتيح محاكي 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 مدمجة.

سحابة Google
Firestore
قاعدة بيانات
الوقت الفعلي
مساحة
التخزين
في السحابة الإلكترونية لـ Firebase
المصادقة وظائف
Cloud
Cloud
Pub/Sub
الإضافات
حزمة تطوير البرامج (SDK) لنظام التشغيل Android timing fixed in amara timing fixed in amara
حزمة تطوير البرامج (SDK) لنظام التشغيل iOS timing fixed in amara timing fixed in amara
Web SDK timing fixed in amara timing fixed in amara
حزمة تطوير البرامج (SDK) للمشرف في Node.js timing fixed in amara timing fixed in amara

الخطوات التالية

  • ابدأ باستخدام جولة تفصيلية في Local Emulator Suite توضّح كيفية إنشاء نماذج أولية لقاعدة بيانات وCloud Functions بلا إنترنت.

  • تعرَّف على كيفية تثبيت Local Emulator Suite وضبط إعداداته.

أدوات أخرى لإنشاء النماذج الأولية واختبارها

تُستكمل مجموعة المحاكيات بأدوات أخرى لإنشاء النماذج الأولية والاختبار.

أدوات اختبار وظائف السحابة الإلكترونية: تقدّم لك بيئة Firebase CLI عدة طرق لإنشاء نماذج أولية للوظائف واختبارها:

  • محاكي Cloud Functions، وهو جزء من مجموعة أدوات المحاكاة يمكن لعملية المحاكاة هذه التوافق مع البيانات المحلية والمباشرة وقواعد الأمان في محاكي Firestore و/أو محاكي "قاعدة بيانات في الوقت الفعلي".
  • بيئة Cloud Functions، التي تتيح إنشاء نماذج أولية للدوالّ التفاعلية المتكررة وتطويرها تستخدِم القشرة محاكي Cloud Functions مع واجهة على غرار REPL للتطوير. لا تتوفّر إمكانية الدمج مع محاكيَي Cloud Firestore أو Realtime Database. باستخدام هذه القشرة، يمكنك محاكاة البيانات وإجراء طلبات وظائف لمحاكاة التفاعل مع المنتجات التي لا تتيحها Local Emulator Suite حاليًا: "إحصاءات Google"، و"الإعداد عن بُعد"، وCrashlytics.
  • حزمة تطوير البرامج (SDK) لاختبار وظائف السحابة الإلكترونية من Firebase، وهي عبارة عن إطار عمل Node.js مع mocha لتطوير الوظائف في الواقع، توفّر حزمة تطوير البرامج (SDK) لاختبار Cloud Functions عمليات التشغيل الآلي على مستوى Cloud Shell.

يمكنك الاطّلاع على مزيد من المعلومات عن واجهة Cloud Functions ومجموعة تطوير البرامج (SDK) لاختبار Cloud Functions في مقالتَي اختبار الدوالّ بشكل تفاعلي واختبار الوحدات في Cloud Functions.

أدوات اختبار قواعد الأمان: Emulator Suite هي مجموعة الأدوات المفضّلة لاختبار قواعد الأمان. ومع ذلك، يمكنك أيضًا استخدام:

  • "مساحة اختبار القواعد"، وهي جزء من وحدة تحكّم Firebase يوفّر "ملعب القواعد" تجربًا تفاعلية رائعة للبدء في استخدام ميزة "قواعد الأمان". لمزيد من المعلومات، يُرجى الاطّلاع على مقالة التحقّق سريعًا من قواعد أمان Firebase.