在我的小部件代码中,我需要在 Android/iOS 上进行分支以显示特定于每个平台的小部件,并调用特定于平台的 API(例如,Android 小部件将调用仅在 Android 上可用的 API)。
if (Platform.isAndroid) {
return WidgetAndroid(...);
} else if (Platform.isIOS) {
return WidgetIOS(...);
}
如何使用 Flutter 小部件测试来测试是否显示了正确的小部件?
我知道我可以检查小部件是否存在,但如何使用特定平台运行测试。
expect(find.byType(WidgetIOS), findsOneWidget);
最佳答案
两者 Platform.isAndroid
和 Platform.isIOS
返回 false
运行时 testWidgets
.
我们可以在测试中应用的一些建议:
else
没有 if
,以便在测试期间运行。 Platform
来自 https://pub.dev/packages/platform这允许模拟,这可能是最好的长期解决方案。 关于带有平台分支的 Flutter 小部件测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55233853/