Uygulamanızı Cloud Functions Emulator'a bağlayın

Bulut Fonksiyonlar emülatörü için uygulamanızı bağlamadan önce, emin olun genel Firebase Yerel Emülatörü Suite iş akışını anlama ve bunu yüklemek ve yapılandırmak Yerel Emülatörü Suite ve onun gözden CLI komutlarını .

Bir Firebase projesi seçin

Firebase Local Emulator Suite, ürünleri tek bir Firebase projesi için öykünür.

Eğer CLI koşmak içinde, emülatörler başlamadan önce, kullanımına projeyi seçmek için firebase use için çalışma dizininde. Veya, geçebilir --project her emülatör komutuna bayrağı.

Yerel Emulator Suite gerçek Firebase projeleri ve demo projelerin öykünme destekler.

Proje tipi Özellikleri Emülatörlerle kullanın
Gerçek

Gerçek bir Firebase projesi, sizin oluşturduğunuz ve yapılandırdığınız projedir (büyük olasılıkla Firebase konsolu aracılığıyla).

Gerçek projeler, veritabanı örnekleri, depolama paketleri, işlevler veya o Firebase projesi için kurduğunuz diğer kaynaklar gibi canlı kaynaklara sahiptir.

Gerçek Firebase projeleriyle çalışırken, desteklenen ürünlerin herhangi biri veya tümü için öykünücüler çalıştırabilirsiniz.

Eğer taklit etmiyorsunuz herhangi ürünlerde, uygulamalar ve kod canlı kaynak (veritabanı örneği, depolama kovası, fonksiyonu, vb) ile etkileşim olacaktır.

Demo

Bir demo Firebase projesi gerçek Firebase yapılandırma ve hiçbir canlı kaynaklara sahiptir. Bu projelere genellikle kod laboratuvarları veya diğer öğreticiler aracılığıyla erişilir.

Demo projeler için Proje kimlikleri var demo- önek.

Demo Firebase projeleri uygulamalarınıza ve sadece benzeticileri olan kod etkileştiği ile çalışırken. Uygulamanız, bir öykünücünün çalışmadığı bir kaynakla etkileşim kurmaya çalışırsa, bu kod başarısız olur.

Mümkün olan her yerde demo projeleri kullanmanızı öneririz. Avantajlar şunları içerir:

  • Bir Firebase projesi oluşturmadan öykünücüleri çalıştırabileceğiniz için daha kolay kurulum
  • Daha güçlü güvenlik, çünkü kodunuz yanlışlıkla taklit edilmeyen (üretim) kaynakları çalıştırırsa, veri değişikliği, kullanım ve faturalandırma şansı yoktur.
  • SDK yapılandırmanızı indirmek için internete erişmeniz gerekmediğinden daha iyi çevrimdışı destek.

Emülatörlerle konuşmak için uygulamanızı enstrümantal edin

Uygulamanızı çağrılabilir işlevler için kullanın

Senin prototip ve test faaliyetleri dahil olursa çağrılabilir arka uç fonksiyonları , böyle Firebase emülatörü için Bulut Fonksiyonlar ile yapılandırmak etkileşimi:

Android
        // 10.0.2.2 is the special IP address to connect to the 'localhost' of
        // the host computer from an Android emulator.
        FirebaseFunctions functions = FirebaseFunctions.getInstance();
        functions.useEmulator("10.0.2.2", 5001);
iOS - Hızlı
Functions.functions().useFunctionsEmulator(origin: "http://localhost:5001")

Web sürümü 9

import { getApp } from "firebase/app";
import { getFunctions, connectFunctionsEmulator } from "firebase/functions";

const functions = getFunctions(getApp());
connectFunctionsEmulator(functions, "localhost", 5001);

Web sürümü 8

firebase.functions().useEmulator("localhost", 5001);

Uygulamanızı HTTPS işlevleri öykünmesi için kullanın

Kodunuzdaki her HTTPS işlevi, aşağıdaki URL biçimi kullanılarak yerel öykünücüden sunulacaktır:

http:// $HOST : $PORT / $PROJECT / $REGION / $NAME

Örneğin basit bir helloWorld varsayılan ana liman ve bölge ile fonksiyon hizmet olacağını:

https://localhost:5001/ $PROJECT /us-central1/helloWorld

Uygulamanızı arka planda tetiklenen işlev öykünmesi için kullanın

Cloud Functions öykünücüsü, aşağıdaki kaynaklardan arka planda tetiklenen işlevleri destekler:

  • Gerçek Zamanlı Veritabanı öykünücüsü
  • Cloud Firestore öykünücüsü
  • Kimlik doğrulama öykünücüsü
  • Pub/Sub öykünücüsü

Arka plan olaylarını tetiklemek için uygulamanızı veya test kodunuzu platformunuz için SDK'yı kullanarak öykünücülere bağlayın.

Cloud Functions'ı test etmek için başka hangi araçlar var?

Cloud Functions öykünücüsü, diğer prototip ve test araçlarıyla desteklenir:

  • Etkileşimli, yinelemeli işlevlerin prototiplenmesine ve geliştirilmesine olanak tanıyan Bulut İşlevleri kabuğu. Kabuk, geliştirme için REPL tarzı bir arayüze sahip Cloud Functions öykünücüsünü kullanır. Cloud Firestore veya Realtime Database öykünücüleriyle entegrasyon sağlanmaz. Shell'i kullanarak, Local Emulator Suite'in şu anda desteklemediği ürünlerle etkileşimi simüle etmek için verilerle alay eder ve işlev çağrıları gerçekleştirirsiniz: Cloud Storage, Pub/Sub, Analytics, Remote Config, Storage, Auth ve Crashlytics.
  • Cloud Functions için Firebase Test SDK'sı, işlev geliştirme için mocha çerçevesine sahip bir Node.js. Aslında, Bulut İşlevleri Testi SDK'sı, Bulut İşlevleri kabuğunun üzerinde otomasyon sağlar.

Bulut Fonksiyonlar de kabuk ve Bulut Fonksiyonlar Testi SDK hakkında daha fazla bilgiyi bulabilirsiniz Testi fonksiyonları etkileşimli ve Birim Bulut İşlevleri test .

Sırada ne var?