问题标签 [flutter-integration-test]
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 集成测试的热重载?
我已经按照此处的定义在我的项目上设置了 Flutter 集成测试:https ://flutter.dev/docs/testing/integration-tests
我使用了以下开发依赖项:
测试驱动程序只是项目页面中的 C&P:
最终测试:
最后我运行我的测试
flutter drive --driver=test_driver/integration_test.dart --target=integration_test/test.dart
这基本上没问题,但它在每次执行时都会编译,这非常耗时。我是否有机会运行集成测试并拥有与常规开发相同的热重载功能?如何做到这一点?
或者还有其他解决方法吗?我正在考虑先将测试代码编写为单元/小部件测试,然后在执行正确后将其移植到集成测试中。
flutter - 允许在新的集成测试中运行整个测试文件夹——就像普通的单元测试一样
我为每个屏幕都有一个单独的集成测试文件,我想用一个命令来运行所有的集成测试,比如“flutter tests”。我查看了文档,但找不到任何方法来做到这一点。这也会导致 firebase 测试实验室 apk 出现问题。要创建一个 android 测试 apk,我只能指定一个测试文件路径来创建 apk。
目前,我找到了两种解决方法。
- 我已经将我的所有测试移到了一个带有组 test的单个 dart 文件中。但是这种解决方法不能很好地扩展。对于 5-10 测试,它工作正常。但是假设我们有 50-75 个测试,那么在单个文件中导航和理解测试将是一团糟。
- 创建一个脚本来一一运行所有测试。这可能适用于我们自己的 CI 管道,但这不适用于 firebase 测试实验室。
有没有人能够解决这个问题或任何更好的解决方案?
flutter - Flutter 集成测试 firebase 身份验证(电子邮件链接或谷歌登录)
我正在向我的应用程序添加集成测试(使用 integration_test 包),但我遇到了问题。
让我解释。我的应用启动的第一步是身份验证,我有 3 个选项:firebase 电子邮件链接、firebase google 登录和 firebase facebook 登录。
阻碍我的是,所有这些登录方法都需要在主应用程序 dart 代码之外执行操作,因此颤振驱动程序无法访问。
我在这里错过了什么吗?如果不是,应该如何处理这种情况?
干杯!
flutter - 如何创建一个共享目录以在集成测试和小部件测试之间共享代码?
如何在 Flutter 中的集成测试和小部件测试之间创建共享代码目录?可能会有很多,因为他们现在使用与新官方相同的 API
在 Android 本机中,您可以执行以下操作,以便在本地非仪器 UI 测试(引擎盖下的 Roboelectric)和使用 Espresso API 的仪器 Espresso 测试之间共享代码。当然还有各种各样的共享助手,模拟,等等。
我如何在 Flutter 中实现类似的目标?
flutter - 添加 integration_test 包时应用程序构建崩溃
我有一个简单的应用程序,可以从图库中选择图像。当我将integration_test
包添加到应用程序时,它在调试模式下工作正常,但是当我打开图像选择器时构建崩溃。
这是实现:
camera_widget.dart
发布规范.yaml
编辑:删除 integration_test 包后,该应用程序在调试和构建中都可以正常工作。
flutter - 在 Flutter 测试中查找 CustomScrollView 内的小部件
我在尝试测试我的 Flutter 应用程序时遇到了错误。我有一个自定义小部件,它位于小部件的底部(在第一个视口之外)CustomScrollView
。在我的测试中,我想验证它确实存在。
我已经尝试过使用WidgetTester.scrollUntilVisible
as well WidgetTester.drag
(就像在颤振框架的测试中所做的那样)。此外,我试图用它来重构我的测试,FlutterDriver
这完全把其他一切都搞砸了。
如何滚动到CustomScrollView
测试内部的底部?
这个最小复制显示了包含CustomScrollView
Container 小部件的应用程序,该小部件具有一个屏幕的高度(因此我要查找的小部件不在初始视图中)
这是我最初为查找小部件而编写的测试,当然失败了。
在本次迭代中,我使用了该WidgetTester.scrollUntilVisible
函数,但出现以下错误。
我感谢任何有关如何解决此问题并成功测试我的帮助或建议CustomScrollView
flutter - 如何恢复 FlutterError.onError?
在我的应用程序中,我将颤振 onError 记录到 crashalytics,
在运行集成测试时,如果发生一些异常,我会在控制台中得到以下语句并且测试只是挂起,
运行测试时引发以下异常:I/flutter (30479):测试覆盖了 FlutterError.onError 但未能将其返回到原始状态,或者出现无法处理的意外附加错误。通常,这是由在恢复 FlutterError.onError 之前使用 expect() 引起的。
控制台中的上述消息表明onError
覆盖有问题,我如何根据控制台FlutterError.onError
中的建议返回其原始状态。
请注意,我正在使用新推荐的集成测试方式,
android - 如何在 Flutter 集成测试期间伪造电池设置/状态?
我们正在开发的 (Android) 应用程序取决于它的插入 (AC) 状态。
因为我们想在连接到我们的构建服务器的真实设备上运行应用程序,所以我们需要一种方法来伪造这种行为,以便在不实际断开设备电源的情况下全面测试应用程序。
现在我已经了解了adb shell dumpsys battery ac 0|1
哪些允许我设置它。但我无法在测试期间通过以下方式完成这项工作:
这会导致以下错误:
我也试过了sudo
,但结果是一样的。