Метод pumpAndSettle
Метод pumpAndSettle класса WidgetTester
рисует кадры, пока на экране есть анимация.
Когда анимации кончились, метод возвращает управление тесту.
Синтаксис
await tester.pumpAndSettle([Duration duration])
Параметры
| Параметр | Описание |
|---|---|
duration | Шаг между кадрами. |
Пример
Давайте дождаться конца анимации:
import 'package:flutter/material.dart';
import 'package:flutter_test/flutter_test.dart';
void main()
{
testWidgets('pas', (WidgetTester t) async
{
await t.pumpWidget(
const MaterialApp(
home: Scaffold(
body: Center(
child: Text('abcde'),
),
),
),
);
await t.pumpAndSettle();
expect(find.text('abcde'), findsOneWidget);
});
}
pumpAndSettle докрутит кадры.
Пример
Давайте после pumpWidget:
import 'package:flutter/material.dart';
import 'package:flutter_test/flutter_test.dart';
class Demo extends StatelessWidget {
const Demo({super.key});
@override
Widget build(BuildContext context) => const Scaffold(body: Center(child: Text('abcde')));
}
void main() { testWidgets('pas2', (t) async { await t.pumpWidget(const Demo()); await t.pumpAndSettle(); expect(find.text('abcde'), findsOneWidget); }); }
Дерево стабилизируется.
Смотрите также
-
метод
pump,
один кадр -
метод
pumpWidget,
монтаж -
класс
WidgetTester,
все методы -
функция
testWidgets,
сценарий