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 Local Emulator Suite को एक्सप्लोर करने से पहले, आप Firebase के प्रॉडक्ट और Firebase डेवलपमेंट मॉडल के बारे में जानें:
- अपने प्लैटफ़ॉर्म और प्रॉडक्ट (Apple, Android या वेब) के लिए, Firebase का इस्तेमाल शुरू करना विषय पढ़ें.
- अपने पसंदीदा प्लैटफ़ॉर्म पर, तुरंत इस्तेमाल किया जा सकने वाला कोई ऐप्लिकेशन डाउनलोड करें. इसके बाद, कोड को पढ़ें और उसे लागू करें. FriendlyEats का क्विकस्टार्ट ऐप्लिकेशन एक अच्छा विकल्प है (iOS, Android या वेब).
Firebase Local Emulator Suite क्या है?
Firebase Local Emulator Suite में, अलग-अलग सेवाओं के एमुलेटर होते हैं. इन्हें Firebase की सेवाओं के व्यवहार की सटीक नकल करने के लिए बनाया गया है. इसका मतलब है कि प्रोडक्शन डेटा को इस्तेमाल किए बिना, इंटिग्रेशन टेस्टिंग या क्वालिटी जांच करने के लिए, अपने ऐप्लिकेशन को सीधे इन एमुलेटर से कनेक्ट किया जा सकता है.
उदाहरण के लिए, टेस्टिंग के दौरान दस्तावेज़ों को सुरक्षित तरीके से पढ़ने और उनमें बदलाव करने के लिए, अपने ऐप्लिकेशन को Cloud Firestore एम्युलेटर से कनेक्ट किया जा सकता है. इन लिखावटों से Cloud Functions एमुलेटर में फ़ंक्शन ट्रिगर हो सकते हैं. हालांकि, जब एमुलेटर उपलब्ध नहीं होंगे या कॉन्फ़िगर नहीं होंगे, तब भी आपका ऐप्लिकेशन प्रोडक्शन Firebase सेवाओं के साथ कम्यूनिकेट करता रहेगा.
आपके स्थानीय वर्कफ़्लो में Emulator Suite
आपके प्रोटोटाइप और टेस्ट वर्कफ़्लो में, Local Emulator Suite का इस्तेमाल कई तरीकों से किया जा सकता है:
- यूनिट टेस्ट: Firebase Test SDK का इस्तेमाल करके, mocha टेस्ट रनर का इस्तेमाल करके, Node.js में यूनिट टेस्ट लिखे जा सकते हैं. Test SDK टूल, सुरक्षा नियमों को लोड करने, टेस्ट के बीच स्थानीय डेटाबेस को फ़्लश करने, और एम्युलेटर के साथ सिंक्रोनस इंटरैक्शन को मैनेज करने के लिए कई सुविधाजनक तरीके उपलब्ध कराता है. यह डेटाबेस इंटरैक्शन के लिए, आसान टेस्ट लिखने के लिए बेहतरीन है. ये टेस्ट, आपके ऐप्लिकेशन के लॉजिक पर निर्भर नहीं होते.
- इंटिग्रेशन टेस्ट: Emulator Suite में मौजूद हर प्रॉडक्ट एमुलेटर, प्रोडक्शन Firebase सेवाओं की तरह ही SDK टूल और REST API कॉल का जवाब देता है. इसलिए, अपने टेस्टिंग टूल का इस्तेमाल करके, ऐसे इंटिग्रेशन टेस्ट लिखे जा सकते हैं जो Local Emulator Suite को बैकएंड के तौर पर इस्तेमाल करते हैं.
- मैन्युअल टेस्ट: अपने Firebase ऐप्लिकेशन की जांच मैन्युअल तरीके से करने के लिए, अपने ऐप्लिकेशन को Local Emulator Suite से कनेक्ट किया जा सकता है. ऐसा करने पर, प्रोडक्शन डेटा को खतरे में डालने या टेस्ट प्रोजेक्ट को कॉन्फ़िगर करने की ज़रूरत नहीं पड़ती.
- प्रॉडक्ट की जांच: Firebase Extensions को सुरक्षित स्थानीय एनवायरमेंट में इंस्टॉल और मैनेज किया जा सकता है. साथ ही, बिलिंग की लागत को कम करते हुए, इसकी सुविधाओं को बेहतर तरीके से समझा जा सकता है.
Firebase की कौनसी सुविधाएं और प्लैटफ़ॉर्म काम करते हैं?
Firebase Local Emulator Suite की मदद से, अपने कोड को हमारे मुख्य प्रॉडक्ट के साथ इंटरऑपरेबल तरीके से टेस्ट किया जा सकता है. Cloud Functions एमुलेटर, Cloud Firestore, Realtime Database, Cloud Storage for Firebase, Authentication, और Pub/Sub से ट्रिगर किए गए एचटीटीपी फ़ंक्शन, कॉल किए जा सकने वाले फ़ंक्शन, और बैकग्राउंड फ़ंक्शन के साथ काम करता है. Cloud Firestore, Realtime Database, और Cloud Storage for Firebase एम्युलेटर में Firebase Security Rules एम्युलेटर पहले से मौजूद है.
Cloud Firestore |
रीयलटाइम डेटाबेस |
Firebase के लिए क्लाउड स्टोरेज |
पुष्टि करना | Cloud Functions |
Cloud Pub/Sub |
एक्सटेंशन | |
---|---|---|---|---|---|---|---|
Android SDK | ![]() |
![]() |
![]() |
![]() |
![]() |
लागू नहीं | लागू नहीं |
iOS SDK | ![]() |
![]() |
![]() |
![]() |
![]() |
लागू नहीं | लागू नहीं |
वेब SDK टूल | ![]() |
![]() |
![]() |
![]() |
![]() |
लागू नहीं | लागू नहीं |
Node.js Admin SDK | ![]() |
![]() |
![]() |
![]() |
लागू नहीं | ![]() |
लागू नहीं |
अगले चरण
शुरू करें, Local Emulator Suiteसिलसिलेवार निर्देशों के साथ, जो आपको डेटाबेस और Cloud Functions के ऑफ़लाइन प्रोटोटाइप बनाने का तरीका दिखाता है.
Local Emulator Suite को इंस्टॉल और कॉन्फ़िगर करने का तरीका जानें.
प्रोटोटाइप बनाने और जांच करने के लिए अन्य टूल
Emulator Suite में, प्रोटोटाइप और टेस्ट टूल भी शामिल हैं.
Cloud Functions के टेस्टिंग टूल. Firebase CLI एनवायरमेंट में, फ़ंक्शन के प्रोटोटाइप बनाने और उनकी जांच करने के कई तरीके उपलब्ध होते हैं:
- Cloud Functions एमुलेटर, जो एमुलेटर सुइट का हिस्सा है. यह एमुलेटर, Firestore एमुलेटर और/या रीयलटाइम डेटाबेस एमुलेटर में मौजूद स्थानीय, लाइव डेटा और सुरक्षा नियमों के साथ काम करता है.
- Cloud Functions शेल, जो इंटरैक्टिव और बार-बार इस्तेमाल होने वाले फ़ंक्शन के प्रोटोटाइप बनाने और उन्हें डेवलप करने की सुविधा देता है. डेवलपमेंट के लिए, शेल में REPL-स्टाइल इंटरफ़ेस के साथ Cloud Functions एमुलेटर का इस्तेमाल किया जाता है. Cloud Firestore या Realtime Database एमुलेटर के साथ कोई इंटिग्रेशन उपलब्ध नहीं है. शेल का इस्तेमाल करके, डेटा को मॉक किया जा सकता है और उन प्रॉडक्ट के साथ इंटरैक्शन को सिम्युलेट करने के लिए फ़ंक्शन कॉल किए जा सकते हैं जिनके साथ फ़िलहाल Local Emulator Suite काम नहीं करता: Analytics, रिमोट कॉन्फ़िगरेशन, और Crashlytics.
- Cloud Functions के लिए Firebase Test SDK टूल, फ़ंक्शन डेवलप करने के लिए mocha फ़्रेमवर्क वाला Node.js. असल में, Cloud Functions Test SDK, Cloud Functions शेल के ऊपर ऑटोमेशन की सुविधा देता है.
Cloud Functions शेल और Cloud Functions Test SDK के बारे में ज़्यादा जानने के लिए, इंटरैक्टिव तरीके से फ़ंक्शन टेस्ट करना और Cloud Functions की यूनिट टेस्टिंग लेख पढ़ें.
सुरक्षा नियमों की जांच करने वाले टूल. सुरक्षा नियमों की जांच करने के लिए, एमुलेटर सुइट सबसे अच्छा टूल है. हालांकि, इनका भी इस्तेमाल किया जा सकता है:
- Rules Playground, जो Firebase console का हिस्सा है. Rules Playground, सुरक्षा नियमों के डिज़ाइन के साथ, शुरू करने का बेहतरीन इंटरैक्टिव अनुभव देता है. ज़्यादा जानकारी के लिए, Firebase के सुरक्षा नियमों की तुरंत पुष्टि करना लेख पढ़ें.