gpt4 book ai didi

Flutter - 加载 Assets 进行测试

转载 作者:IT老高 更新时间:2023-10-28 12:41:16 28 4
gpt4 key购买 nike

不确定是限制还是什么,但下面的代码没有加载任何东西。我有一些数据驱动的行为,我想单独测试。

类加载器

import 'dart:async';
import 'package:flutter/services.dart' show rootBundle;

class Loader {
Future<String> load() async{
return await rootBundle.loadString('assets/json/sketch.json');
}
}

测试

testWidgets('Should parse load sketch.json', (WidgetTester tester) async {
var loaderFuture = new Loader();

Future<String> resultFuture = loaderFuture.load();

resultFuture.then((value) => print(value))
.catchError((error) => print(error));

while(true){};
});

Future 既不返回成功也不返回错误,并且永远挂起。我知道while(true) 锁定了测试,但现在我只想看看 sketch.json 打印出来

Assets 位置

enter image description here

最佳答案

要在您的测试中使用 rootBundle,您需要在测试程序开始时使用它:

import 'package:flutter_test/flutter_test.dart';

...
void main() {
TestWidgetsFlutterBinding.ensureInitialized();

关于Flutter - 加载 Assets 进行测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49480080/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com