diff --git a/core/phpunit.xml.dist b/core/phpunit.xml.dist
index 9658f2c..a827bf9 100644
--- a/core/phpunit.xml.dist
+++ b/core/phpunit.xml.dist
@@ -32,16 +32,16 @@
   </php>
   <testsuites>
     <testsuite name="unit">
-      <file>./tests/TestSuites/UnitTestSuite.php</file>
+      <file>./tests/Drupal/TestSuites/UnitTestSuite.php</file>
     </testsuite>
     <testsuite name="kernel">
-      <file>./tests/TestSuites/KernelTestSuite.php</file>
+      <file>./tests/Drupal/TestSuites/KernelTestSuite.php</file>
     </testsuite>
     <testsuite name="functional">
-      <file>./tests/TestSuites/FunctionalTestSuite.php</file>
+      <file>./tests/Drupal/TestSuites/FunctionalTestSuite.php</file>
     </testsuite>
     <testsuite name="functional-javascript">
-      <file>./tests/TestSuites/FunctionalJavascriptTestSuite.php</file>
+      <file>./tests/Drupal/TestSuites/FunctionalJavascriptTestSuite.php</file>
     </testsuite>
   </testsuites>
   <listeners>
diff --git a/core/tests/TestSuites/FunctionalJavascriptTestSuite.php b/core/tests/Drupal/TestSuites/FunctionalJavascriptTestSuite.php
similarity index 73%
rename from core/tests/TestSuites/FunctionalJavascriptTestSuite.php
rename to core/tests/Drupal/TestSuites/FunctionalJavascriptTestSuite.php
index 626be02..17294ce 100644
--- a/core/tests/TestSuites/FunctionalJavascriptTestSuite.php
+++ b/core/tests/Drupal/TestSuites/FunctionalJavascriptTestSuite.php
@@ -1,7 +1,9 @@
 <?php
 
-namespace Drupal\Tests\TestSuites;
+namespace Drupal\TestSuites;
 
+// Require the base class. We do this to avoid making the test suite classes
+// autoloadable.
 require_once __DIR__ . '/TestSuiteBase.php';
 
 /**
@@ -16,7 +18,7 @@ class FunctionalJavascriptTestSuite extends TestSuiteBase {
    *   The test suite.
    */
   public static function suite() {
-    $root = dirname(dirname(dirname(__DIR__)));
+    $root = dirname(dirname(dirname(dirname(__DIR__))));
 
     $suite = new static('functional-javascript');
     $suite->addTestsBySuiteNamespace($root, 'FunctionalJavascript');
diff --git a/core/tests/TestSuites/FunctionalTestSuite.php b/core/tests/Drupal/TestSuites/FunctionalTestSuite.php
similarity index 71%
rename from core/tests/TestSuites/FunctionalTestSuite.php
rename to core/tests/Drupal/TestSuites/FunctionalTestSuite.php
index 221a20d..233b3db 100644
--- a/core/tests/TestSuites/FunctionalTestSuite.php
+++ b/core/tests/Drupal/TestSuites/FunctionalTestSuite.php
@@ -1,7 +1,9 @@
 <?php
 
-namespace Drupal\Tests\TestSuites;
+namespace Drupal\TestSuites;
 
+// Require the base class. We do this to avoid making the test suite classes
+// autoloadable.
 require_once __DIR__ . '/TestSuiteBase.php';
 
 /**
@@ -16,7 +18,7 @@ class FunctionalTestSuite extends TestSuiteBase {
    *   The test suite.
    */
   public static function suite() {
-    $root = dirname(dirname(dirname(__DIR__)));
+    $root = dirname(dirname(dirname(dirname(__DIR__))));
 
     $suite = new static('functional');
     $suite->addTestsBySuiteNamespace($root, 'Functional');
diff --git a/core/tests/TestSuites/KernelTestSuite.php b/core/tests/Drupal/TestSuites/KernelTestSuite.php
similarity index 70%
rename from core/tests/TestSuites/KernelTestSuite.php
rename to core/tests/Drupal/TestSuites/KernelTestSuite.php
index 2625e2b..dbfe8b8 100644
--- a/core/tests/TestSuites/KernelTestSuite.php
+++ b/core/tests/Drupal/TestSuites/KernelTestSuite.php
@@ -1,7 +1,9 @@
 <?php
 
-namespace Drupal\Tests\TestSuites;
+namespace Drupal\TestSuites;
 
+// Require the base class. We do this to avoid making the test suite classes
+// autoloadable.
 require_once __DIR__ . '/TestSuiteBase.php';
 
 /**
@@ -16,7 +18,7 @@ class KernelTestSuite extends TestSuiteBase {
    *   The test suite.
    */
   public static function suite() {
-    $root = dirname(dirname(dirname(__DIR__)));
+    $root = dirname(dirname(dirname(dirname(__DIR__))));
 
     $suite = new static('kernel');
     $suite->addTestsBySuiteNamespace($root, 'Kernel');
diff --git a/core/tests/TestSuites/TestSuiteBase.php b/core/tests/Drupal/TestSuites/TestSuiteBase.php
similarity index 98%
rename from core/tests/TestSuites/TestSuiteBase.php
rename to core/tests/Drupal/TestSuites/TestSuiteBase.php
index bd047e8..f1dbb46 100644
--- a/core/tests/TestSuites/TestSuiteBase.php
+++ b/core/tests/Drupal/TestSuites/TestSuiteBase.php
@@ -1,6 +1,7 @@
 <?php
 
-namespace Drupal\Tests\TestSuites;
+namespace Drupal\TestSuites;
+
 use Drupal\simpletest\TestDiscovery;
 
 /**
diff --git a/core/tests/TestSuites/UnitTestSuite.php b/core/tests/Drupal/TestSuites/UnitTestSuite.php
similarity index 70%
rename from core/tests/TestSuites/UnitTestSuite.php
rename to core/tests/Drupal/TestSuites/UnitTestSuite.php
index b05d455..3c30cdd 100644
--- a/core/tests/TestSuites/UnitTestSuite.php
+++ b/core/tests/Drupal/TestSuites/UnitTestSuite.php
@@ -1,7 +1,9 @@
 <?php
 
-namespace Drupal\Tests\TestSuites;
+namespace Drupal\TestSuites;
 
+// Require the base class. We do this to avoid making the test suite classes
+// autoloadable.
 require_once __DIR__ . '/TestSuiteBase.php';
 
 /**
@@ -16,7 +18,7 @@ class UnitTestSuite extends TestSuiteBase {
    *   The test suite.
    */
   public static function suite() {
-    $root = dirname(dirname(dirname(__DIR__)));
+    $root = dirname(dirname(dirname(dirname(__DIR__))));
 
     $suite = new static('unit');
     $suite->addTestsBySuiteNamespace($root, 'Unit');
diff --git a/core/tests/Drupal/Tests/TestSuites/TestSuiteBaseTest.php b/core/tests/Drupal/Tests/TestSuites/TestSuiteBaseTest.php
index 0ba8143..6a43ea4 100644
--- a/core/tests/Drupal/Tests/TestSuites/TestSuiteBaseTest.php
+++ b/core/tests/Drupal/Tests/TestSuites/TestSuiteBaseTest.php
@@ -2,14 +2,15 @@
 
 namespace Drupal\Tests\TestSuites;
 
+use Drupal\TestSuites\TestSuiteBase;
 use org\bovigo\vfs\vfsStream;
 
-// The test suite class is not part of the autoloader, we need to include it
-// manually.
-require_once __DIR__ . '/../../../TestSuites/TestSuiteBase.php';
+// Require the base class. We do this to avoid making the test suite classes
+// autoloadable.
+require_once __DIR__ . '/../../TestSuites/TestSuiteBase.php';
 
 /**
- * @coversDefaultClass \Drupal\Tests\TestSuites\TestSuiteBase
+ * @coversDefaultClass \Drupal\TestSuites\TestSuiteBase
  *
  * @group TestSuite
  */
diff --git a/core/tests/bootstrap.php b/core/tests/bootstrap.php
index 9aeb1d7..5309f1a 100644
--- a/core/tests/bootstrap.php
+++ b/core/tests/bootstrap.php
@@ -117,6 +117,7 @@ function drupal_phpunit_populate_class_loader() {
   $loader->add('Drupal\\KernelTests', __DIR__);
   $loader->add('Drupal\\FunctionalTests', __DIR__);
   $loader->add('Drupal\\FunctionalJavascriptTests', __DIR__);
+  $loader->add('Drupal\\TestSuites', __DIR__);
 
   if (!isset($GLOBALS['namespaces'])) {
     // Scan for arbitrary extension namespaces from core and contrib.
