使用 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,
);
如何在集成测试中使用系统后退按钮?
所以我正在使用 flutter 并正在编写集成测试,在大多数情况下我可以使用 AppBar 导航,通过工具提示找到它如下所示:
driver.tap(find.byTooltip('Back'));
但是我的一个测试会打开一个网页,打开后我需要继续我的测试,这意味着我需要按系统后退按钮,这可能吗?
非常感谢
查看 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,
);