将 Firestore 模拟器连接到 flutter_test

Connecting Firestore emulator to flutter_test

我正在为 Flutter 应用程序设置集成测试,但无法将它们连接到 Firestore 模拟器的实例。

这是我的代码:

import 'package:cloud_firestore/cloud_firestore.dart';
import 'package:flutter_test/flutter_test.dart';

void main() {
  TestWidgetsFlutterBinding.ensureInitialized();
  Firestore firestore;

  setUp(() async {
    firestore = Firestore.instance;
    await firestore.settings(host: 'http://localhost:4000/firestore');
  });

  group('some group', () {
    test('some test', () async {
      print('yo');
    });
  });
}

当我 运行 它时,出现以下错误:

ERROR: MissingPluginException(No implementation found for method Firestore#settings on channel plugins.flutter.io/cloud_firestore)
package:flutter/src/services/platform_channel.dart 154:7  MethodChannel._invokeMethod

关于如何解决这个问题有什么建议吗?

据我所知,Firebase 不支持在 Flutter 中进行单元测试,因为它是一个需要原生集成的插件。

Flutter Firebase 存储库中的测试是 main.dart 中的 运行,而不是单元测试。