【发布时间】:2021-01-21 16:05:34
【问题描述】:
我有两个测试,在单击按钮后,我想测试 CircularProgressIndicator 是否会出现在按钮上。
问题是在点击和tester.pump()之后,它找不到导致测试失败的CircularProgressIndicator,我尝试使用pumpAndSettle()并添加了Duration(seconds:x),但得到了同样的错误
这很奇怪,因为在我将 flutter sdk 更新到 1.22.0、升级我的 flutterFire 包并迁移到使用 Android embbeding V2 之前测试都正常。
testWidgets("Should show loading button when click on request button ",
(WidgetTester tester) async {
await tester.pumpWidget(
_buildWidget(
home: FinancialDialogBill(
paymentId: "fakePaymentId",
additionalValueType: AdditionalValueType.fee,
billValues: billValues,
installmentList: installments,
),
),
);
expect(find.byKey(financialDialogBillRequestButton), findsOneWidget);
expect(find.byKey(financialDialogBillRequestButtonLoading), findsNothing);
await tester.tap(find.byKey(financialDialogBillRequestButton));
await tester.pump();
expect(
find.byKey(financialDialogBillRequestButtonLoading), findsOneWidget);
expect(find.byKey(financialDialogBillRequestButton), findsNothing);
});
});
【问题讨论】:
标签: flutter testing widget-test-flutter