我的单元测试要求,需要异步运行的设置。 也就是说,我需要等待测试运行之前的设置来完成,但随着期货设置的交易。
Answer 1:
与DART M3的setUp
函数可以选择返回一个Future
。 如果安装程序会返回一个Future,该单元测试框架将等待未来运行单个测试方法之前完成。
下面是一个例子:
group(('database') {
var db = createDb();
setUp(() {
return openDatabase()
.then((db) => populateForTests(db));
});
test('read', () {
Future future = db.read('foo');
future.then((value) {
expect(value, 'bar');
});
expect(future, completes);
});
});
了解更多关于的setUp 。
文章来源: How to wait for an asynchronous setup in a unit test, in Dart?