在颤振单元测试中访问 rootBundle

AVE*_*imi 5 android json assets dart flutter

我正在我的 flutter 应用程序中编写单元测试,似乎我无法从测试中的资产中读取 json,但是如果我运行应用程序,它就可以工作,

我使用下面的代码将 json 读取为字符串:

var jsonString = await rootBundle.loadString("assets/student_list.json");
Run Code Online (Sandbox Code Playgroud)

如何在测试中访问 jsons 资产?

sil*_*ira 16

将此行添加为测试中要执行的第一行,它将起作用并加载资产:

TestWidgetsFlutterBinding.ensureInitialized();
Run Code Online (Sandbox Code Playgroud)

它将在运行代码之前初始化所有内容,并且此时可以访问资产。