diff --git a/dev/bots/test.dart b/dev/bots/test.dart
index 32e083a..a3cf5d1 100644
--- a/dev/bots/test.dart
+++ b/dev/bots/test.dart
@@ -144,7 +144,6 @@
   await _pubRunTest(
     path.join(flutterRoot, 'packages', 'flutter_tools'),
     enableFlutterToolAsserts: true,
-    runConcurrently: false,
   );
 
   print('${bold}DONE: All tests successful.$reset');
@@ -197,13 +196,9 @@
 Future<Null> _pubRunTest(
   String workingDirectory, {
   String testPath,
-  bool runConcurrently = true,
   bool enableFlutterToolAsserts = false
 }) {
   final List<String> args = <String>['run', 'test', '-rcompact'];
-  if (!runConcurrently) {
-    args.add('-j1');
-  }
   if (!hasColor)
     args.add('--no-color');
   if (testPath != null)
diff --git a/packages/flutter_tools/README.md b/packages/flutter_tools/README.md
index 448faec..b6d6543 100644
--- a/packages/flutter_tools/README.md
+++ b/packages/flutter_tools/README.md
@@ -6,5 +6,5 @@
 then navigate to `flutter_tools` and execute:
 
 ```shell
-../../bin/cache/dart-sdk/bin/pub run test -j1
+../../bin/cache/dart-sdk/bin/pub run test
 ```
diff --git a/packages/flutter_tools/test/integration/README.md b/packages/flutter_tools/test/integration/README.md
index 08e24e2..52c5a2a 100644
--- a/packages/flutter_tools/test/integration/README.md
+++ b/packages/flutter_tools/test/integration/README.md
@@ -4,9 +4,8 @@
 While they don't require actual devices, they run `flutter_tester` to test
 Dart VM and Flutter integration.
 
-Some of these tests change the current directory for the process,
-so only one test can be run at a time. Use this command to run:
+Use this command to run:
 
 ```shell
-../../bin/cache/dart-sdk/bin/pub run test -j1
+../../bin/cache/dart-sdk/bin/pub run test
 ```
