Firebase Test SDK for Cloud Functions

The firebase-functions-test is unit testing library for Cloud Functions for Firebase. It is a companion to firebase-functions.

NOTE: This library can only be used with firebase-functions v3.20.1 or above.

Usage

  1. Write some Firebase Functions
  2. With your testing framework of choice, write a unit-test that imports your Firebase Functions.
  3. wrap your Firebase Functions. You can invoke the Firebase Function's handler by invoking the wrap call.

Eg.

import {myFirebaseFunction} from "../index"; // Your Firebase Functions
import firebaseFunctionsTest from "firebase-functions-test";

// Extracting `wrap` out of the lazy-loaded features
const {wrap} = firebaseFunctionsTest();

// `jest-ts` example
test('my unit test', () => {
  const wrappedFirebaseFunction = wrap(myFirebaseFunction);

  // Invoke the firebase function
  wrappedFirebaseFunction();

  // Invoke the firebase function with CloudEvent overrides
  wrappedFirebaseFunction({data: {arbitrary: 'values'}});
});

Learn more

Learn more about unit testing Cloud Functions here.