首页 > 解决方案 > 如何修复 TeamCity Flutter 构建中的“加载测试失败”

问题描述

我正在尝试为 Flutter 项目构建 TeamCity 的 CICD 实例。目前我有命令脚本来克隆 Flutter 存储库并运行Flutter doctor. 但是,我的最后一步不起作用 - 运行Flutter test.

在 default 的无限加载尝试之前widget_test.dart,会出现一个堆栈跟踪:

[19:05:51]  [Step 2/2] Shell: #0      _WebSocketImpl.connect.<anonymous closure>.error (dart:_http/websocket_impl.dart:1049:9)
[19:05:51]  [Step 2/2] Shell: #1      _WebSocketImpl.connect.<anonymous closure> (dart:_http/websocket_impl.dart:1058:14)
[19:05:51]  [Step 2/2] Shell: #2      _rootRunUnary (dart:async/zone.dart:1132:38)
[19:05:51]  [Step 2/2] Shell: #3      _CustomZone.runUnary (dart:async/zone.dart:1029:19)
[19:05:51]  [Step 2/2] Shell: #4      _FutureListener.handleValue (dart:async/future_impl.dart:126:18)
[19:05:51]  [Step 2/2] Shell: #5      Future._propagateToListeners.handleValueCallback (dart:async/future_impl.dart:639:45)
[19:05:51]  [Step 2/2] Shell: #6      Future._propagateToListeners (dart:async/future_impl.dart:668:32)
[19:05:51]  [Step 2/2] Shell: #7      Future._completeWithValue (dart:async/future_impl.dart:483:5)
[19:05:51]  [Step 2/2] Shell: #8      Future.wait.<anonymous closure> (dart:async/future.dart:400:22)
[19:05:51]  [Step 2/2] Shell: #9      _rootRunUnary (dart:async/zone.dart:1132:38)
[19:05:51]  [Step 2/2] Shell: #10     _CustomZone.runUnary (dart:async/zone.dart:1029:19)
[19:05:51]  [Step 2/2] Shell: #11     _FutureListener.handleValue (dart:async/future_impl.dart:126:18)
[19:05:51]  [Step 2/2] Shell: #12     Future._propagateToListeners.handleValueCallback (dart:async/future_impl.dart:639:45)
[19:05:51]  [Step 2/2] Shell: #13     Future._propagateToListeners (dart:async/future_impl.dart:668:32)
[19:05:51]  [Step 2/2] Shell: #14     Future._completeWithValue (dart:async/future_impl.dart:483:5)
[19:05:51]  [Step 2/2] Shell: #15     Future._asyncComplete.<anonymous closure> (dart:async/future_impl.dart:513:7)
[19:05:51]  [Step 2/2] Shell: #16     _rootRun (dart:async/zone.dart:1124:13)
[19:05:51]  [Step 2/2] Shell: #17     _CustomZone.run (dart:async/zone.dart:1021:19)
[19:05:51]  [Step 2/2] Shell: #18     _CustomZone.runGuarded (dart:async/zone.dart:923:7)
[19:05:51]  [Step 2/2] Shell: #19     _CustomZone.bindCallbackGuarded.<anonymous closure> (dart:async/zone.dart:963:23)
[19:05:51]  [Step 2/2] Shell: #20     _microtaskLoop (dart:async/schedule_microtask.dart:41:21)
[19:05:51]  [Step 2/2] Shell: #21     _startMicrotaskLoop (dart:async/schedule_microtask.dart:50:5)

最后的错误是

Failed to load "/root/TeamCity/buildAgent/work/700f5361a835c53d/test/widget_test.dart":
[19:10:50]  [Step 2/2]   Test never connected to test harness.
[19:10:50]  [Step 2/2]   Test: /root/TeamCity/buildAgent/work/700f5361a835c53d/test/widget_test.dart
[19:10:50]  [Step 2/2]   Shell: /root/TeamCity/buildAgent/work/700f5361a835c53d/flutter/bin/cache/artifacts/engine/linux-x64/flutter_tester

任何人都可以解决这个问题:Flutter 仍然很新,关于如何设置它的文档并不多。

任何帮助是极大的赞赏。谢谢

这是针对新的 TeamCity 构建的。我在下面添加了环境变量,因为颤振医生的代理位抱怨:

env.NO_PROXY=localhost,127.0.0.1

标签: flutterdartcontinuous-integrationteamcity

解决方案


我的团队默认代理覆盖了变量 env 变量no_proxy 在命令脚本中,我只是将 附加127.0.0.1到现有的 env 变量并且它起作用了。


推荐阅读