使用 flutter 运行测试时出错:“无法加载“_test.dart”:Shell 子进程干净结束。main() 调用 exit() 了吗?”

cro*_*x5f 11 testing dart flutter

每当我向代码库添加新测试时,我在运行它们时都会遇到上述错误消息。

package:flutter_tools/src/test/flutter_tester_device.dart 224:73  FlutterTesterTestDevice.finished
===== asynchronous gap ===========================
dart:async/future.dart                                            Future.any.onValue
Failed to load "app/test/club/club_section_test.dart": Shell subprocess ended cleanly. Did main() call exit()?

Run Code Online (Sandbox Code Playgroud)

cro*_*x5f 14

总长DR

flutter clean && flutter packages get
Run Code Online (Sandbox Code Playgroud)

解决方法

好吧,似乎由于某种原因,flutter 正在缓存一些变得陈旧的数据,您可以通过运行轻松地恢复测试:

flutter clean 
Run Code Online (Sandbox Code Playgroud)

其中“删除 build/ 和 .dart_tool/ 目录”,然后:

flutter packages get
Run Code Online (Sandbox Code Playgroud)

重建这些目录并下载依赖项。