Fake Firebase Performance for use during Flutter unit & widget tests

Fakes to write unit tests for apps using Firebase Performance monitoring. Instantiate a FakeFirebasePerformance, then pass it around your project to replace FirebasePerformance.instance. This fake acts like FirebasePerformance except it will load mocked data instead.


A simple usage example

import 'package:fake_firebase_performance/fake_firebase_performance.dart';

void main() async {
  final perf = FakeFirebasePerformance();

  perf.isPerformanceCollectionEnabled(); // will return false

  perf.newTrace('test'); // will do nothing
  perf.newHttpMetric("", HttpMethod.Get); // will do nothing

This perf object needs to replace the real FirebasePerformance.instance during testing. You can do this for example with Riverpod or by doing something like this:

await tester.pumpWidget(
    title: 'FirebasePerformance Example',
    home: MyApp(overrideFirebasePerformance: perf),

Missing functionality

  • will throw
  • perf.pluginConstants is empty
  • perf.newTrace() does nothing
  • perf.newHttpMetric() does nothing

Compatibility table

firebase_performance fake_firebase_performance
>=0.8.0 1.0.0

Features and bugs

Please file feature requests and bugs at the issue tracker.


View Github

WordPress: specify a custom upload folder for a plugin

Merge one tensor into other tensor on specific indexes in PyTorch