问题标签 [widget-test-flutter]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
flutter - 是否可以截取一个小部件测试?
我是 Flutter 的新手,我觉得如果我能看到 widgetTest 正在“渲染”什么,作为一种调试方法,事情可能会容易一些。我目前还不完全理解 widgetTest 的机制,但我想知道是否可以在 widgetTest 中间捕获实际的输出渲染。
我说的是 widgetTest 而不是集成测试。
flutter - Flutter Bloc Widget 测试如何在 bloc 模式中的 If 语句下查找.text
我正在尝试 Widget 测试我的 WelcomeScreen()。WelcomeScreen 有一个 BlocProvider 和一个 BlocBuilder。在我加载 WelcomeBloc() 后,它会使用构建器中的 if 语句检查状态是否为 WelcomeLoadSuccessState。
如果语句为真,我如何在 if 语句下找到某些内容?
我的欢迎屏幕:
我现在的测试:
谢谢你的帮忙。
flutter - Flutter 测试小部件 find.byType(TextField) 有效,find.byWidget(TextField()) 无效。为什么?
我刚刚开始使用颤振小部件测试并遇到了这个问题。我想知道这是否是预期的行为。当尝试使用 find.byType 找到我的 TextField 时,它会成功,但使用 find.byWidget 却不会。这是正常的还是我做错了什么?目标是稍后在文本字段中输入文本,然后点击按钮。
我的文本字段和按钮:
这是我的测试:
flutter - 如何在应用内购买非消耗品的 Play 商店中显示用户选择价格按钮?
我有一个应用程序想要使用非消耗性应用程序内购买,但我想在用户选择购买我的颤振应用程序之前在 Play 商店中显示按钮价格。但我找不到任何有关非消耗性应用内购买的相关信息或示例应用程序,任何人都可以分享任何包含非消耗性应用内购买功能的链接或示例应用程序吗?谢谢
下面是我这样制作的图片。
flutter - Flutter 小部件测试:在测试中无法通过语义标签找到小部件,尽管它存在于转储中
测试“DaysContainer”。单击某一天时,它将被选中。当我点击测试它时工作正常,但在为它编写测试时遇到了麻烦。这是我的测试:
当我单击测试时,小部件工作正常,除了最后的期望之外,一切都通过了,它失败并显示没有找到小部件的消息。这很有趣,因为当我在 debugDumpApp() 的输出中搜索“2021 年 6 月 20 日选定”(我通过查找器的确切字符串)时,我发现:
所以标签似乎存在。
这是当天没有找到标签的整个子树,尽管存在:
为了比较,这里是测试中提到的“前几天”的子树,其中语义标签被测试找到:
这是包含子树:
这是完整的错误:
我写了一个测试来找到它自己渲染的 SelectedCircle。该测试通过。
flutter - LateInitializationError: 字段 '_instance@99075166' 尚未初始化
这是我第一次测试颤振应用程序。我试图HomeView
用这个测试代码来抽我:
但这两个例外发生了。
我认为第二个例外的原因是第一个。
我的HomeView
生产代码:
和是自定义DrawerListTile
小AzkarCard
部件。当我删除它们并与Text
小部件交换它们时,测试代码成功了!。
所以我不知道我要测试的代码是否不应该有自定义小部件。这在实际项目中是不可能的。
flutter - 如何在小部件测试中测试特定的 ProviderNotFoundException
我在某个小部件上方创建了一些提供者(例如提供者 A、B、C),并ProviderNotFoundException
在从小部件树中删除提供者的情况下进行测试。
现在我正在测试ProviderNotFoundException
这样的:
这是非常通用的,因为如果它们被删除,这将适用于所有提供者 A、B 和 C。我想添加额外的约束来检查是否只有提供者 B 没有找到。
我尝试使用该having
方法,isA
但无法使其正常工作。
flutter - 测试时如何检查小部件是否可见
就我而言,当我使用 时ExpansionPanelList
,我需要检查面板内的小部件是否可见。
如果不可见,tester.tap(find.text('More Info'))
将抛出异常:
如何检查此小部件在测试中是否可见?
flutter - 输入文本后点击 Flutter 集成测试中的 enter/done/return 按钮
在搜索字段中输入文本后,我正在尝试点击虚拟键盘上的完成/输入/提交按钮。
如何做到这一点,以及如何等待结果(异步请求)......