使用 flutter driver 的系统后退按钮

using the system back button from flutter driver

如何在集成测试中使用系统后退按钮?

所以我正在使用 flutter 并正在编写集成测试,在大多数情况下我可以使用 AppBar 导航,通过工具提示找到它如下所示:

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

但是我的一个测试会打开一个网页,打开后我需要继续我的测试,这意味着我需要按系统后退按钮,这可能吗?

非常感谢

查看 link。简而言之,您需要使用 WillPopScope class 来处理带回调的设备后退按钮。

也许这可以帮到你

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

在官方 flutter 驱动程序测试之一中发现link

如果您的计算机上安装了 adb,您可以 运行 命令使用键盘事件执行后压:

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