Flutter测试MissingPluginException
运行依赖于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
:
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;
});
以上是 Flutter测试MissingPluginException 的全部内容, 来源链接: utcz.com/qa/429777.html