Solved: using the system back button from flutter driver

Question

Asked by martinseal1987 on March 01, 2019 (source).

How can I use the system back button in an integration test?

So I'm using flutter and am writing integration tests, in most circumstances I can use the AppBar navigation, finding it by tool tip looks like this :

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

But one of my tests opens a web page, after this opens I need to carry on with my tests which means I need to press the system back button, is this possible?

many thanks

Answer

Question answered by Miguel B (source).

If you have adb installed on your machine, you can run a command to perform the backpress using a keyevent:

import 'dart:io';
await Process.run(
  'adb', 
  <String>['shell', 'input', 'keyevent', 'KEYCODE_BACK'], 
  runInShell: true,
);
FLUTTER FLUTTER-TEST FLUTTERDRIVER INTEGRATION-TESTING TESTING
SHARE: