问题标签 [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 集成测试失败
我有一个带有电子邮件和密码文本字段的简单登录页面。一个按钮用于登录,另一个用于注册。我尝试为登录页面编写集成测试。
当我执行测试用例时,它失败并出现以下错误:
运行测试时引发以下 ArgumentError:无效参数:类型为便利设施提供程序的对象/工厂已在 GetIt 中注册。
这是我的main.dart
文件
我尝试了 amain_test.dart
并添加configureInjection(Environment.test)
但没有任何变化。我不确定如何解决该错误。app
在进入新的测试用例之前,有没有办法清理或销毁它。如果我将两个测试用例合二为一,那么它可以毫无问题地工作。
这是configureInjection
我正在使用 get_it 和注入包进行依赖注入。
这是自动生成的 initGetIt
flutter - 在颤振测试中模拟悬停
我正在做一个颤振的网络项目,我有一个小部件我想写测试。这个小部件正在使用MouseRegion
当它被用户悬停或不悬停时执行一些操作。
举个例子:
我可以编写一个小部件测试来测试我的容器是红色的:
但是如何模拟测试小部件中的悬停(以检查容器是否为蓝色)?
animation - Flutter Widget Test 等待动画
我有一个类似的小部件测试:
以及小部件的 on-tap 方法的以下实现:
我遇到的问题是,在animationController.forward()
测试中调用该方法后,该setState
部分未执行。我应该如何等待此方法正确完成?在应用程序运行时,这部分代码被正确调用。
似乎await tester.pump(new Duration(milliseconds: 3000));
无法正常工作,动画的持续时间为 1500 毫秒,您可以看到泵的持续时间是双倍的。
flutter - Flutter Riverpod WidgetTest 不超过过去的加载状态
更新:以与我测试另一个消费者小部件相同的方式重写测试,它实际上可以工作,但它仍然不适用于我的测试,我无法理解为什么:(当前方法:
我正在尝试为 Listview Widget 编写一个小部件测试,但我从来没有超过“Asyncvalue”的加载状态。当我的测试中的状态并且它卡在加载中时。
我尝试像在 Riverpod 文档中那样进行测试,或者按照此处的说明进行测试:https ://codewithandrea.com/videos/flutter-state-management-riverpod/
但是我被卡住了:-/我们有 Loading() 小部件,我们对其进行测试以查看它是否消失,但它没有..
这是测试的代码:
错误信息是:
这是 UserExerciseList() 的相关部分
我还在我的测试中用流替换了 Future,也没有工作:-/ 非常感谢任何帮助!
非常感谢!
flutter - 小部件测试中的 Tap() 在颤动中显示警告
显示警告:可能小部件实际上不在屏幕上,或者另一个小部件遮挡了它,或者小部件无法接收指针事件。
flutter - 如何在颤振测试中初始化 ScreenUtil.init()?
对于在颤振中创建的 BMI 应用程序,我正在编写一个测试,所以当我运行测试时,我收到以下错误:
这是我的颤振测试代码:
我试图像这样初始化它,但得到了同样的错误:
尝试用谷歌搜索它,但在颤振测试中找不到如何初始化 ScreenUtil() 。任何帮助,将不胜感激。
flutter - 如何为 statefulwidget 创建小部件测试
我有 3 个不同的文件/屏幕(主要、登录和注册),其中登录和注册是 statefulwidgtes。我想在屏幕上执行小部件测试,但是,似乎我无法在登录和注册下获取小部件,每次尝试我都会收到消息:
预期:小部件树中恰好有一个匹配节点实际:_WidgetTypeFinder:<零个类型为“ListView”的小部件(忽略后台小部件)>这意味着没有找到,但应该有一个
请注意,在上面的示例中,ListView 小部件确实存在,但没有被测试人员定位。
这是主要小部件的代码
登录页面代码:
注册页面代码:
登录页面小部件测试(这不起作用):
所以我的问题是,如何测试登录和注册有状态小部件?如何在这些屏幕中获取小部件?流感
flutter - 在 Flutter 测试中查找 CustomScrollView 内的小部件
我在尝试测试我的 Flutter 应用程序时遇到了错误。我有一个自定义小部件,它位于小部件的底部(在第一个视口之外)CustomScrollView
。在我的测试中,我想验证它确实存在。
我已经尝试过使用WidgetTester.scrollUntilVisible
as well WidgetTester.drag
(就像在颤振框架的测试中所做的那样)。此外,我试图用它来重构我的测试,FlutterDriver
这完全把其他一切都搞砸了。
如何滚动到CustomScrollView
测试内部的底部?
这个最小复制显示了包含CustomScrollView
Container 小部件的应用程序,该小部件具有一个屏幕的高度(因此我要查找的小部件不在初始视图中)
这是我最初为查找小部件而编写的测试,当然失败了。
在本次迭代中,我使用了该WidgetTester.scrollUntilVisible
函数,但出现以下错误。
我感谢任何有关如何解决此问题并成功测试我的帮助或建议CustomScrollView
flutter - 如何使用 MockBloc 实现小部件测试?
我正在尝试实现小部件测试以测试登录表单。这个测试取决于我使用 MockBloc 模拟的一个块。但是,它会引发以下错误:
我在以下链接中发现了一个类似的错误,但我看不出它如何帮助我解决我的问题。
我还在 gitlub 上查看了以下文件,这是使用 bloc_test 进行小部件测试的示例。该链接可以在 Bloc 库的官方网站上找到 - 特别是在 Flutter 中的 Todos App 中使用 Bloc 库。
但是,该示例bloc_test: ^3.0.1
在我使用时正在使用bloc_test: ^8.0.0
,可以在此处找到。
这是一个最小的例子:
- 登录表单小部件
- 消息小部件
- 小部件测试(我想测试验证状态为错误时是否显示消息)
如果有人可以帮助我解决错误,或者可以让我知道实现小部件测试的另一种方法,我将不胜感激。
提前致谢!
flutter - 错误“pumpAndSettle 超时”可能是由于riverpod
我被小部件测试困住了,我可以使用一些帮助
来重现行为请运行下面的代码示例
运行应用程序一切都很好
但未通过此测试
有了这个输出
环境是
Flutter version 2.2.0-11.0.pre.176
任何帮助表示赞赏