make flutterProject option of CoverageCollector optional (#31074)

diff --git a/packages/flutter_tools/bin/fuchsia_tester.dart b/packages/flutter_tools/bin/fuchsia_tester.dart
index 85d5891..789aa5c 100644
--- a/packages/flutter_tools/bin/fuchsia_tester.dart
+++ b/packages/flutter_tools/bin/fuchsia_tester.dart
@@ -116,7 +116,10 @@
     Directory testDirectory;
     CoverageCollector collector;
     if (argResults['coverage']) {
-      collector = CoverageCollector(await FlutterProject.current(), coverageDirectory: coverageDirectory);
+      collector = CoverageCollector(
+        flutterProject: await FlutterProject.current(),
+        coverageDirectory: coverageDirectory,
+      );
       if (!argResults.options.contains(_kOptionTestDirectory)) {
         throwToolExit('Use of --coverage requires setting --test-directory');
       }
diff --git a/packages/flutter_tools/lib/src/commands/test.dart b/packages/flutter_tools/lib/src/commands/test.dart
index 9a0924d..c616013 100644
--- a/packages/flutter_tools/lib/src/commands/test.dart
+++ b/packages/flutter_tools/lib/src/commands/test.dart
@@ -149,7 +149,9 @@
 
     CoverageCollector collector;
     if (argResults['coverage'] || argResults['merge-coverage']) {
-      collector = CoverageCollector(await FlutterProject.current());
+      collector = CoverageCollector(
+        flutterProject: await FlutterProject.current(),
+      );
     }
 
     final bool machine = argResults['machine'];
diff --git a/packages/flutter_tools/lib/src/test/coverage_collector.dart b/packages/flutter_tools/lib/src/test/coverage_collector.dart
index 320bc04..4fec282 100644
--- a/packages/flutter_tools/lib/src/test/coverage_collector.dart
+++ b/packages/flutter_tools/lib/src/test/coverage_collector.dart
@@ -21,7 +21,7 @@
 
 /// A class that's used to collect coverage data during tests.
 class CoverageCollector extends TestWatcher {
-  CoverageCollector(this.flutterProject, {this.coverageDirectory});
+  CoverageCollector({this.flutterProject, this.coverageDirectory});
 
   Map<String, dynamic> _globalHitmap;
   final Directory coverageDirectory;
@@ -63,6 +63,9 @@
       if (coverageDirectory != null) {
         return true;
       }
+      if (flutterProject == null) {
+        return true;
+      }
       return libraryName.contains(flutterProject.manifest.appName);
     })
       .then<void>((Map<String, dynamic> result) {