diff --git a/dev/integration_tests/flutter_gallery/test_driver/run_demos.dart b/dev/integration_tests/flutter_gallery/test_driver/run_demos.dart index d58ee781f0e..b959ced68f4 100644 --- a/dev/integration_tests/flutter_gallery/test_driver/run_demos.dart +++ b/dev/integration_tests/flutter_gallery/test_driver/run_demos.dart @@ -61,16 +61,15 @@ Future runDemos(List demos, WidgetController controller) async { final Finder demoItem = find.text(demoName); await controller.scrollUntilVisible(demoItem, 48.0); await controller.pumpAndSettle(); - try { - await controller.tap(demoItem); // Launch the demo - } catch (e) { + if (demoItem.evaluate().isEmpty) { print('Failed to find $demoItem'); print('All available elements:'); - print(controller.allElements.toList()); + print(controller.allElements.toList().join('\n')); print('App structure:'); debugDumpApp(); - rethrow; + throw TestFailure('Failed to find element'); } + await controller.tap(demoItem); // Launch the demo if (kUnsynchronizedDemos.contains(demo)) { // These tests have animation, pumpAndSettle cannot be used.