Как сделать несколько файлов интеграционных тестов во flutter 2?
Я пытаюсь создать интеграционный тест для своего приложения Flutter с новым пакетом integration_test: https://github.com/flutter/flutter/tree/master/packages/integration_test#integration_test
У меня есть несколько файлов интеграционных тестов, например:
integration_test/
login_test.dart
logout_test.dart
run_all_test.dart
test_driver/
integration_test.dart
Я хочу запустить тесты входа и выхода последовательно, используя run_all_test.dart
В скрипте run_all_test.dart у меня есть:
void main() {
final binding = IntegrationTestWidgetsFlutterBinding.ensureInitialized() as
IntegrationTestWidgetsFlutterBinding;
binding.framePolicy = LiveTestWidgetsFlutterBindingFramePolicy.fullyLive;
app.main();
group('All tests', () {
loginTest();
logoutTest();
});
и login_test.dart выглядит так (logout_test.dart то же самое):
void main() {
loginTest();
}
Future<void> loginTest() async {
group('Login - ', (){
testWidgets("Login test", (WidgetTester tester) async {
await ...
});
});
}
Теперь вход в систему работает отлично, и, когда он завершится, запускается тест выхода из системы, но в этот момент приложение ожидает с сообщением «Тест начинается ...», а затем терпит неудачу.
Со старым пакетом все работало отлично, и между тестами приложение не перезапускалось.
1 ответ
Я решил добавить:
await tester.pumpFrames(app.MyApp(), Duration(seconds: 3));
во всех тестовых файлах.