Используя кнопку возврата системы из драйвера флаттера

Как использовать кнопку возврата системы в интеграционном тесте?

Поэтому я использую флаттер и пишу интеграционные тесты, в большинстве случаев я могу использовать навигацию AppBar, находя ее по всплывающей подсказке, примерно так:

driver.tap(find.byTooltip('Back'));

Но один из моих тестов открывает веб-страницу, после этого мне нужно продолжить свои тесты, что означает, что мне нужно нажать кнопку возврата системы, это возможно?

большое спасибо

1 ответ

Если у вас есть adb установленный на вашем компьютере, вы можете запустить команду для выполнения обратного нажатия с помощью keyevent:

import 'dart:io';
await Process.run(
  'adb', 
  <String>['shell', 'input', 'keyevent', 'KEYCODE_BACK'], 
  runInShell: true,
);

Может это поможет тебе

 await device.shellExec('input', <String>['keyevent', 'KEYCODE_BACK']);

Найдено по одной из официальных ссылок на тесты драйверов флаттера.

Проверьте эту ссылку. Короче, вам нужно использовать WillPopScope класс, который обрабатывает кнопку возврата устройства с обратными вызовами.

Другие вопросы по тегам