diff --git a/examples/fuchsia_inspect_examples/inspect_mod/BUILD.gn b/examples/fuchsia_inspect_examples/inspect_mod/BUILD.gn
index 401fefc..817b40e 100644
--- a/examples/fuchsia_inspect_examples/inspect_mod/BUILD.gn
+++ b/examples/fuchsia_inspect_examples/inspect_mod/BUILD.gn
@@ -5,10 +5,15 @@
 import("//build/dart/dart_test_component.gni")
 import("//build/dart/fidl_move.gni")
 import("//build/flutter/flutter_app.gni")
+import("//build/testing/flutter_driver.gni")
 import("//src/sys/build/fuchsia_test_package.gni")
 
 flutter_app("inspect_mod") {
-  main_dart = "lib/main.dart"
+  if (flutter_driver_enabled) {
+    main_dart = "lib/main.dart"
+  } else {
+    main_dart = "lib/test_main.dart"
+  }
   package_name = "inspect_mod"
 
   fuchsia_package_name = "inspect_mod"
diff --git a/examples/fuchsia_inspect_examples/inspect_mod/lib/main.dart b/examples/fuchsia_inspect_examples/inspect_mod/lib/main.dart
index 1f3e69d..24c1a38 100644
--- a/examples/fuchsia_inspect_examples/inspect_mod/lib/main.dart
+++ b/examples/fuchsia_inspect_examples/inspect_mod/lib/main.dart
@@ -3,7 +3,6 @@
 // found in the LICENSE file.
 
 import 'package:flutter/material.dart' hide Intent;
-import 'package:flutter_driver/driver_extension.dart';
 import 'package:fuchsia_inspect/inspect.dart' as inspect;
 import 'package:fuchsia_logger/logger.dart';
 
@@ -11,7 +10,6 @@
 
 void main() {
   setupLogger(name: 'inspect-mod');
-  enableFlutterDriverExtension();
   var inspectNode = inspect.Inspect().root;
   runApp(InspectExampleApp(inspectNode));
 }
diff --git a/examples/fuchsia_inspect_examples/inspect_mod/lib/test_main.dart b/examples/fuchsia_inspect_examples/inspect_mod/lib/test_main.dart
new file mode 100644
index 0000000..c7c2abe
--- /dev/null
+++ b/examples/fuchsia_inspect_examples/inspect_mod/lib/test_main.dart
@@ -0,0 +1,12 @@
+// Copyright 2021 The Fuchsia Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+import 'package:flutter_driver/driver_extension.dart';
+
+import 'main.dart' as entrypoint;
+
+void main() {
+  enableFlutterDriverExtension();
+  entrypoint.main();
+}
diff --git a/public/dart/fuchsia_inspect/examples/inspect_mod/BUILD.gn b/public/dart/fuchsia_inspect/examples/inspect_mod/BUILD.gn
index 401fefc..817b40e 100644
--- a/public/dart/fuchsia_inspect/examples/inspect_mod/BUILD.gn
+++ b/public/dart/fuchsia_inspect/examples/inspect_mod/BUILD.gn
@@ -5,10 +5,15 @@
 import("//build/dart/dart_test_component.gni")
 import("//build/dart/fidl_move.gni")
 import("//build/flutter/flutter_app.gni")
+import("//build/testing/flutter_driver.gni")
 import("//src/sys/build/fuchsia_test_package.gni")
 
 flutter_app("inspect_mod") {
-  main_dart = "lib/main.dart"
+  if (flutter_driver_enabled) {
+    main_dart = "lib/main.dart"
+  } else {
+    main_dart = "lib/test_main.dart"
+  }
   package_name = "inspect_mod"
 
   fuchsia_package_name = "inspect_mod"
diff --git a/public/dart/fuchsia_inspect/examples/inspect_mod/lib/main.dart b/public/dart/fuchsia_inspect/examples/inspect_mod/lib/main.dart
index 1f3e69d..24c1a38 100644
--- a/public/dart/fuchsia_inspect/examples/inspect_mod/lib/main.dart
+++ b/public/dart/fuchsia_inspect/examples/inspect_mod/lib/main.dart
@@ -3,7 +3,6 @@
 // found in the LICENSE file.
 
 import 'package:flutter/material.dart' hide Intent;
-import 'package:flutter_driver/driver_extension.dart';
 import 'package:fuchsia_inspect/inspect.dart' as inspect;
 import 'package:fuchsia_logger/logger.dart';
 
@@ -11,7 +10,6 @@
 
 void main() {
   setupLogger(name: 'inspect-mod');
-  enableFlutterDriverExtension();
   var inspectNode = inspect.Inspect().root;
   runApp(InspectExampleApp(inspectNode));
 }
diff --git a/public/dart/fuchsia_inspect/examples/inspect_mod/lib/test_main.dart b/public/dart/fuchsia_inspect/examples/inspect_mod/lib/test_main.dart
new file mode 100644
index 0000000..c7c2abe
--- /dev/null
+++ b/public/dart/fuchsia_inspect/examples/inspect_mod/lib/test_main.dart
@@ -0,0 +1,12 @@
+// Copyright 2021 The Fuchsia Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+import 'package:flutter_driver/driver_extension.dart';
+
+import 'main.dart' as entrypoint;
+
+void main() {
+  enableFlutterDriverExtension();
+  entrypoint.main();
+}
diff --git a/public/dart/fuchsia_modular/examples/slider_mod/BUILD.gn b/public/dart/fuchsia_modular/examples/slider_mod/BUILD.gn
index 1a94d1c..08f34cb 100644
--- a/public/dart/fuchsia_modular/examples/slider_mod/BUILD.gn
+++ b/public/dart/fuchsia_modular/examples/slider_mod/BUILD.gn
@@ -6,10 +6,15 @@
 import("//build/dart/fidl_move.gni")
 import("//build/flutter/flutter_app.gni")
 import("//build/testing/environments.gni")
+import("//build/testing/flutter_driver.gni")
 import("//src/sys/build/fuchsia_test_package.gni")
 
 flutter_app("slider_mod") {
-  main_dart = "lib/main.dart"
+  if (flutter_driver_enabled) {
+    main_dart = "lib/main.dart"
+  } else {
+    main_dart = "lib/test_main.dart"
+  }
   package_name = "slider_mod"
 
   fuchsia_package_name = "slider_mod"
@@ -22,6 +27,7 @@
     "src/widgets/app.dart",
     "src/widgets/slider_scaffold.dart",
     "src/widgets/value_slider.dart",
+    "test_main.dart",
   ]
 
   deps = [
diff --git a/public/dart/fuchsia_modular/examples/slider_mod/lib/main.dart b/public/dart/fuchsia_modular/examples/slider_mod/lib/main.dart
index cb5d721..850323d 100644
--- a/public/dart/fuchsia_modular/examples/slider_mod/lib/main.dart
+++ b/public/dart/fuchsia_modular/examples/slider_mod/lib/main.dart
@@ -3,13 +3,11 @@
 // found in the LICENSE file.
 
 import 'package:flutter/material.dart';
-import 'package:flutter_driver/driver_extension.dart';
 import 'package:fuchsia_logger/logger.dart';
 
 import 'src/widgets/app.dart';
 
 void main() {
   setupLogger(name: 'slider_mod');
-  enableFlutterDriverExtension();
   runApp(MaterialApp(home: App()));
 }
diff --git a/public/dart/fuchsia_modular/examples/slider_mod/lib/test_main.dart b/public/dart/fuchsia_modular/examples/slider_mod/lib/test_main.dart
new file mode 100644
index 0000000..c7c2abe
--- /dev/null
+++ b/public/dart/fuchsia_modular/examples/slider_mod/lib/test_main.dart
@@ -0,0 +1,12 @@
+// Copyright 2021 The Fuchsia Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+import 'package:flutter_driver/driver_extension.dart';
+
+import 'main.dart' as entrypoint;
+
+void main() {
+  enableFlutterDriverExtension();
+  entrypoint.main();
+}
