运行依赖于SharedPreferences插件的测试总是会导致
MissingPluginException(No implementation found for method getAll on channel plugins.flutter.io/shared_preferences)
我的pubspec.yaml
dev_dependencies: flutter_test: sdk: flutter dependencies: flutter: sdk: flutter shared_preferences: 0.2.3
的代码可以在应用程序本身中正常工作。我是否缺少为运行使用插件的测试而需要做的事情?
如果您使用的是shared_preferences 0.2.4及更高版本,请使用setMockInitialValues:
setMockInitialValues
SharedPreferences.setMockInitialValues({}); // set initial values here if desired
对于早期版本,您可以手动进行操作:
const MethodChannel('plugins.flutter.io/shared_preferences') .setMockMethodCallHandler((MethodCall methodCall) async { if (methodCall.method == 'getAll') { return <String, dynamic>{}; // set initial values here if desired } return null; });