diff --git a/core/lib/Drupal/Core/Annotation/QueueWorker.php b/core/lib/Drupal/Core/Annotation/QueueWorker.php
index 1f85cb07871dc9523cac8527ce00b6feaee60b3a..354642a72c60e571889e1748948cdebea46c0d79 100644
--- a/core/lib/Drupal/Core/Annotation/QueueWorker.php
+++ b/core/lib/Drupal/Core/Annotation/QueueWorker.php
@@ -24,7 +24,7 @@
  * Plugin Namespace: Plugin\QueueWorker
  *
  * For a working example, see
- * \Drupal\aggregator\Plugin\QueueWorker\AggregatorRefresh.
+ * \Drupal\locale\Plugin\QueueWorker\LocaleTranslation.
  *
  * @see \Drupal\Core\Queue\QueueWorkerInterface
  * @see \Drupal\Core\Queue\QueueWorkerBase
diff --git a/core/modules/aggregator/aggregator.module b/core/modules/aggregator/aggregator.module
index 9e544073b01775d83722da87f109172eaae09297..5288a3fd068018cae4d7c9bf9b500866f1a42bdf 100644
--- a/core/modules/aggregator/aggregator.module
+++ b/core/modules/aggregator/aggregator.module
@@ -5,6 +5,9 @@
  * Used to aggregate syndicated content (RSS, RDF, and Atom).
  */
 
+use Drupal\Core\Access\AccessResult;
+use Drupal\Core\Entity\EntityTypeInterface;
+use Drupal\Core\Session\AccountInterface;
 use Drupal\Core\Url;
 use Drupal\aggregator\Entity\Feed;
 use Drupal\Core\Routing\RouteMatchInterface;
@@ -205,3 +208,13 @@ function aggregator_preprocess_block(&$variables) {
     $variables['attributes']['role'] = 'complementary';
   }
 }
+
+/**
+ * Implements hook_jsonapi_ENTITY_TYPE_filter_access() for 'aggregator_feed'.
+ */
+function aggregator_jsonapi_aggregator_feed_filter_access(EntityTypeInterface $entity_type, AccountInterface $account) {
+  // @see \Drupal\aggregator\FeedAccessControlHandler::checkAccess()
+  return ([
+    JSONAPI_FILTER_AMONG_ALL => AccessResult::allowedIfHasPermission($account, 'access news feeds'),
+  ]);
+}
diff --git a/core/modules/views/tests/modules/views_test_config/test_views/views.view.test_style_opml.yml b/core/modules/aggregator/tests/modules/aggregator_test_views/test_views/views.view.test_aggregator_style_opml.yml
similarity index 99%
rename from core/modules/views/tests/modules/views_test_config/test_views/views.view.test_style_opml.yml
rename to core/modules/aggregator/tests/modules/aggregator_test_views/test_views/views.view.test_aggregator_style_opml.yml
index d050afcc11dfb8d9dcb3e0b83baea4d8b82da12c..bdd48f637f37501ec475c94283e791b624fd68fd 100644
--- a/core/modules/views/tests/modules/views_test_config/test_views/views.view.test_style_opml.yml
+++ b/core/modules/aggregator/tests/modules/aggregator_test_views/test_views/views.view.test_aggregator_style_opml.yml
@@ -3,8 +3,8 @@ status: true
 dependencies:
   module:
     - aggregator
-id: test_style_opml
-label: test_style_opml
+id: test_aggregator_style_opml
+label: test_aggregator_style_opml
 module: views
 description: ''
 tag: default
diff --git a/core/modules/jsonapi/tests/src/Functional/FeedTest.php b/core/modules/aggregator/tests/src/Functional/Jsonapi/FeedTest.php
similarity index 97%
rename from core/modules/jsonapi/tests/src/Functional/FeedTest.php
rename to core/modules/aggregator/tests/src/Functional/Jsonapi/FeedTest.php
index efd4d0a49c01a0f901ab5a9942d4944b4bb53d74..e71ce50b9a2e980dd162ab77791be852fe7c0c6c 100644
--- a/core/modules/jsonapi/tests/src/Functional/FeedTest.php
+++ b/core/modules/aggregator/tests/src/Functional/Jsonapi/FeedTest.php
@@ -1,15 +1,16 @@
 <?php
 
-namespace Drupal\Tests\jsonapi\Functional;
+namespace Drupal\Tests\aggregator\Functional\Jsonapi;
 
 use Drupal\aggregator\Entity\Feed;
 use Drupal\Core\Url;
+use Drupal\Tests\jsonapi\Functional\ResourceTestBase;
 use Drupal\Tests\jsonapi\Traits\CommonCollectionFilterAccessTestPatternsTrait;
 
 /**
  * JSON:API integration test for the "Feed" content entity type.
  *
- * @group jsonapi
+ * @group aggregator
  */
 class FeedTest extends ResourceTestBase {
 
diff --git a/core/modules/jsonapi/tests/src/Functional/ItemTest.php b/core/modules/aggregator/tests/src/Functional/Jsonapi/ItemTest.php
similarity index 96%
rename from core/modules/jsonapi/tests/src/Functional/ItemTest.php
rename to core/modules/aggregator/tests/src/Functional/Jsonapi/ItemTest.php
index 33bbf8b08020058bddfe5c401b33494830640e28..03265c3b8459519f6a5a4233a652299322db9337 100644
--- a/core/modules/jsonapi/tests/src/Functional/ItemTest.php
+++ b/core/modules/aggregator/tests/src/Functional/Jsonapi/ItemTest.php
@@ -1,14 +1,15 @@
 <?php
 
-namespace Drupal\Tests\jsonapi\Functional;
+namespace Drupal\Tests\aggregator\Functional\Jsonapi;
 
 use Drupal\aggregator\Entity\Feed;
 use Drupal\aggregator\Entity\Item;
+use Drupal\Tests\jsonapi\Functional\ResourceTestBase;
 
 /**
  * JSON:API integration test for the "Item" content entity type.
  *
- * @group jsonapi
+ * @group aggregator
  */
 class ItemTest extends ResourceTestBase {
 
diff --git a/core/modules/aggregator/tests/src/Functional/Views/Handler/HandlerAggregatorTest.php b/core/modules/aggregator/tests/src/Functional/Views/Handler/HandlerAggregatorTest.php
new file mode 100644
index 0000000000000000000000000000000000000000..19c17e2a91c9c048bceb8f3d8b867ea8c306c921
--- /dev/null
+++ b/core/modules/aggregator/tests/src/Functional/Views/Handler/HandlerAggregatorTest.php
@@ -0,0 +1,100 @@
+<?php
+
+namespace Drupal\Tests\aggregator\Functional\Views\Handler;
+
+use Drupal\Tests\views\Functional\ViewTestBase;
+use Drupal\views\Plugin\views\filter\NumericFilter;
+use Drupal\views\ViewExecutable;
+use Drupal\views\Plugin\views\HandlerBase;
+use Drupal\views\Plugin\views\filter\InOperator;
+use Drupal\views\Entity\View;
+
+/**
+ * Tests instances of the aggregator related view handlers.
+ *
+ * @group aggregator
+ */
+class HandlerAggregatorTest extends ViewTestBase {
+
+  /**
+   * Modules to enable.
+   *
+   * @var array
+   */
+  protected static $modules = [
+    'aggregator',
+    'node',
+  ];
+
+  /**
+   * {@inheritdoc}
+   */
+  protected $defaultTheme = 'stark';
+
+  /**
+   * Tests most of the handlers.
+   */
+  public function testHandlers() {
+    $this->drupalCreateContentType(['type' => 'article']);
+
+    $object_types = array_keys(ViewExecutable::getHandlerTypes());
+    foreach ($this->container->get('views.views_data')->getAll() as $base_table => $info) {
+      if (!isset($info['table']['base'])) {
+        continue;
+      }
+
+      $view = View::create(['base_table' => $base_table]);
+      $view = $view->getExecutable();
+
+      // @todo The groupwise relationship is currently broken.
+      $exclude[] = 'users_field_data:uid_representative';
+
+      // Go through all fields and there through all handler types.
+      foreach ($info as $field => $field_info) {
+        // Table is a reserved key for the meta-information.
+        if ($field !== 'table' && !in_array("$base_table:$field", $exclude)) {
+          $item = [
+            'table' => $base_table,
+            'field' => $field,
+          ];
+          foreach ($object_types as $type) {
+            if (isset($field_info[$type]['id'])) {
+              $options = [];
+              if ($type === 'filter') {
+                $handler = $this->container->get("plugin.manager.views.$type")->getHandler($item);
+                // Set the value to use for the filter based on the filter type.
+                if ($handler instanceof InOperator) {
+                  $options['value'] = [1];
+                }
+                elseif ($handler instanceof NumericFilter) {
+                  $options['value'] = ['value' => 1];
+                }
+                else {
+                  $options['value'] = 1;
+                }
+              }
+              $view->addHandler('default', $type, $base_table, $field, $options);
+            }
+          }
+        }
+      }
+
+      // Go through each step individually to see whether some parts are
+      // failing.
+      $view->build();
+      $view->preExecute();
+      $view->execute();
+      $view->render();
+
+      // Make sure all handlers extend the HandlerBase.
+      foreach ($object_types as $type) {
+        if (isset($view->{$type})) {
+          foreach ($view->{$type} as $handler) {
+            $this->assertInstanceOf(HandlerBase::class, $handler);
+          }
+        }
+      }
+    }
+  }
+
+}
diff --git a/core/modules/views/tests/src/Functional/Plugin/StyleOpmlTest.php b/core/modules/aggregator/tests/src/Functional/Views/Plugin/StyleOpmlTest.php
similarity index 83%
rename from core/modules/views/tests/src/Functional/Plugin/StyleOpmlTest.php
rename to core/modules/aggregator/tests/src/Functional/Views/Plugin/StyleOpmlTest.php
index c3da72f771ddebefc62ce3803a1f70f2ab978e26..7f9ef13ee051a7963d248631c8b9480563012b45 100644
--- a/core/modules/views/tests/src/Functional/Plugin/StyleOpmlTest.php
+++ b/core/modules/aggregator/tests/src/Functional/Views/Plugin/StyleOpmlTest.php
@@ -1,13 +1,13 @@
 <?php
 
-namespace Drupal\Tests\views\Functional\Plugin;
+namespace Drupal\Tests\aggregator\Functional\Views\Plugin;
 
 use Drupal\Tests\views\Functional\ViewTestBase;
 
 /**
  * Tests the OPML feed style plugin.
  *
- * @group views
+ * @group aggregator
  * @see \Drupal\views\Plugin\views\style\Opml
  */
 class StyleOpmlTest extends ViewTestBase {
@@ -17,14 +17,14 @@ class StyleOpmlTest extends ViewTestBase {
    *
    * @var array
    */
-  public static $testViews = ['test_style_opml'];
+  public static $testViews = ['test_aggregator_style_opml'];
 
   /**
    * Modules to enable.
    *
    * @var array
    */
-  protected static $modules = ['aggregator'];
+  protected static $modules = ['aggregator', 'aggregator_test_views'];
 
   /**
    * {@inheritdoc}
@@ -34,10 +34,8 @@ class StyleOpmlTest extends ViewTestBase {
   /**
    * {@inheritdoc}
    */
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp($import_test_views);
-
-    $this->enableViewsTestModule();
+  protected function setUp($import_test_views = TRUE, $modules = ['aggregator_test_views']): void {
+    parent::setUp($import_test_views, $modules);
 
     $admin_user = $this->drupalCreateUser(['administer news feeds']);
     $this->drupalLogin($admin_user);
@@ -66,7 +64,7 @@ public function testOpmlOutput() {
 
     $view = $this->container->get('entity_type.manager')
       ->getStorage('view')
-      ->load('test_style_opml');
+      ->load('test_aggregator_style_opml');
     $display = &$view->getDisplay('feed_1');
     $display['display_options']['row']['options']['type_field'] = 'link';
     $display['display_options']['row']['options']['url_field'] = 'url';
diff --git a/core/modules/aggregator/tests/src/Functional/views_ui/DisplayOpmlFeedTest.php b/core/modules/aggregator/tests/src/Functional/views_ui/DisplayOpmlFeedTest.php
new file mode 100644
index 0000000000000000000000000000000000000000..7cf309b5b75f34be4e204135f9c78e4e4f7ac259
--- /dev/null
+++ b/core/modules/aggregator/tests/src/Functional/views_ui/DisplayOpmlFeedTest.php
@@ -0,0 +1,103 @@
+<?php
+
+namespace Drupal\Tests\aggregator\Functional\views_ui;
+
+use Drupal\Tests\views_ui\Functional\UITestBase;
+
+/**
+ * Tests the views UI for feed display plugin.
+ *
+ * @group aggregator
+ * @see \Drupal\views\Plugin\views\display\Feed
+ */
+class DisplayOpmlFeedTest extends UITestBase {
+
+  /**
+   * Views used by this test.
+   *
+   * @var array
+   */
+  public static $testViews = ['test_aggregator_style_opml'];
+
+  /**
+   * Modules to enable.
+   *
+   * @var array
+   */
+  protected static $modules = [
+    'views_ui',
+    'aggregator',
+    'aggregator_test_views',
+  ];
+
+  /**
+   * {@inheritdoc}
+   */
+  protected $defaultTheme = 'stark';
+
+  /**
+   * {@inheritdoc}
+   */
+  protected function setUp($import_test_views = TRUE, $modules = ['aggregator_test_views']): void {
+    parent::setUp($import_test_views, $modules);
+  }
+
+  /**
+   * Tests feed display admin UI.
+   */
+  public function testFeedUI() {
+    // Test the OPML feed.
+    foreach (self::$testViews as $view_name) {
+      $this->checkFeedViewUi($view_name);
+    }
+  }
+
+  /**
+   * Checks views UI for a specific feed view.
+   *
+   * @param string $view_name
+   *   The view name to check against.
+   */
+  protected function checkFeedViewUi($view_name) {
+    $this->drupalGet('admin/structure/views');
+    // Verify that the page lists the $view_name view.
+    // Regression test: ViewListBuilder::getDisplayPaths() did not properly
+    // check whether a DisplayPluginCollection was returned in iterating over
+    // all displays.
+    $this->assertSession()->pageTextContains($view_name);
+
+    // Check the attach TO interface.
+    $this->drupalGet('admin/structure/views/nojs/display/' . $view_name . '/feed_1/displays');
+    // Display labels should be escaped.
+    $this->assertSession()->assertEscaped('<em>Page</em>');
+
+    // Load all the options of the checkbox.
+    $result = $this->xpath('//div[@id="edit-displays"]/div');
+    $options = [];
+    foreach ($result as $item) {
+      $input_node = $item->find('css', 'input');
+      if ($input_node->hasAttribute('value')) {
+        $options[] = $input_node->getAttribute('value');
+      }
+    }
+
+    $this->assertEquals(['default', 'page'], $options, 'Make sure all displays appears as expected.');
+
+    // Post and save this and check the output.
+    $this->drupalGet('admin/structure/views/nojs/display/' . $view_name . '/feed_1/displays');
+    $this->submitForm(['displays[page]' => 'page'], 'Apply');
+    // Options summary should be escaped.
+    $this->assertSession()->assertEscaped('<em>Page</em>');
+    $this->assertSession()->responseNotContains('<em>Page</em>');
+
+    $this->drupalGet('admin/structure/views/view/' . $view_name . '/edit/feed_1');
+    $this->assertSession()->elementTextContains('xpath', '//*[@id="views-feed-1-displays"]', 'Page');
+
+    // Add the default display, so there should now be multiple displays.
+    $this->drupalGet('admin/structure/views/nojs/display/' . $view_name . '/feed_1/displays');
+    $this->submitForm(['displays[default]' => 'default'], 'Apply');
+    $this->drupalGet('admin/structure/views/view/' . $view_name . '/edit/feed_1');
+    $this->assertSession()->elementTextContains('xpath', '//*[@id="views-feed-1-displays"]', 'Multiple displays');
+  }
+
+}
diff --git a/core/modules/aggregator/tests/src/Functional/views_ui/NewViewAggregatorConfigSchemaTest.php b/core/modules/aggregator/tests/src/Functional/views_ui/NewViewAggregatorConfigSchemaTest.php
new file mode 100644
index 0000000000000000000000000000000000000000..8bc393a714f0d9fa02e7687a5ccdf8b7409d3a76
--- /dev/null
+++ b/core/modules/aggregator/tests/src/Functional/views_ui/NewViewAggregatorConfigSchemaTest.php
@@ -0,0 +1,51 @@
+<?php
+
+namespace Drupal\Tests\aggregator\Functional\views_ui;
+
+use Drupal\Tests\views_ui\Functional\UITestBase;
+
+/**
+ * Tests aggregator configuration schema against new views.
+ *
+ * @group aggregator
+ */
+class NewViewAggregatorConfigSchemaTest extends UITestBase {
+
+  /**
+   * Modules to enable.
+   *
+   * @var array
+   */
+  protected static $modules = [
+    'views_ui',
+    'aggregator',
+  ];
+
+  /**
+   * {@inheritdoc}
+   */
+  protected $defaultTheme = 'stark';
+
+  /**
+   * Tests creating brand new views.
+   */
+  public function testNewViews() {
+    $this->drupalLogin($this->drupalCreateUser(['administer views']));
+
+    // Create views with all standard derivative classes for Views wizards.
+    $wizards = [
+      'standard:aggregator_feed',
+      'standard:aggregator_item',
+    ];
+    foreach ($wizards as $wizard_key) {
+      $edit = [];
+      $edit['label'] = $this->randomString();
+      $edit['id'] = strtolower($this->randomMachineName());
+      $edit['show[wizard_key]'] = $wizard_key;
+      $edit['description'] = $this->randomString();
+      $this->drupalGet('admin/structure/views/add');
+      $this->submitForm($edit, 'Save and edit');
+    }
+  }
+
+}
diff --git a/core/modules/aggregator/tests/src/Unit/BubbleableMetadataTest.php b/core/modules/aggregator/tests/src/Unit/BubbleableMetadataTest.php
new file mode 100644
index 0000000000000000000000000000000000000000..0189486c12222bbb3b2b1819d9bef41dda0cf7ad
--- /dev/null
+++ b/core/modules/aggregator/tests/src/Unit/BubbleableMetadataTest.php
@@ -0,0 +1,73 @@
+<?php
+
+namespace Drupal\Tests\aggregator\Unit;
+
+use Drupal\Core\Render\BubbleableMetadata;
+use Drupal\Tests\UnitTestCase;
+
+/**
+ * @coversDefaultClass \Drupal\Core\Render\BubbleableMetadata
+ * @group aggregator
+ */
+class BubbleableMetadataTest extends UnitTestCase {
+
+  /**
+   * Tests feed asset merging.
+   *
+   * @covers ::mergeAttachments
+   *
+   * @dataProvider providerTestMergeAttachmentsFeedMerging
+   */
+  public function testMergeAttachmentsFeedMerging($a, $b, $expected) {
+    $this->assertSame($expected, BubbleableMetadata::mergeAttachments($a, $b));
+  }
+
+  /**
+   * Data provider for testMergeAttachmentsFeedMerging.
+   *
+   * @return array
+   */
+  public function providerTestMergeAttachmentsFeedMerging() {
+    $feed_a = [
+      'aggregator/rss',
+      'Feed title',
+    ];
+
+    $feed_b = [
+      'taxonomy/term/1/feed',
+      'RSS - foo',
+    ];
+
+    $a = [
+      'feed' => [
+        $feed_a,
+      ],
+    ];
+    $b = [
+      'feed' => [
+        $feed_b,
+      ],
+    ];
+
+    $expected_a = [
+      'feed' => [
+        $feed_a,
+        $feed_b,
+      ],
+    ];
+
+    // Merging in the opposite direction yields the opposite library order.
+    $expected_b = [
+      'feed' => [
+        $feed_b,
+        $feed_a,
+      ],
+    ];
+
+    return [
+      [$a, $b, $expected_a],
+      [$b, $a, $expected_b],
+    ];
+  }
+
+}
diff --git a/core/modules/block/tests/src/Functional/Views/DisplayBlockTest.php b/core/modules/block/tests/src/Functional/Views/DisplayBlockTest.php
index 05ff8b3c6712238bf0501bbc4e3607272021b7e0..f4f40819a0d190b811ac84c6dc9d242cfbf39b7d 100644
--- a/core/modules/block/tests/src/Functional/Views/DisplayBlockTest.php
+++ b/core/modules/block/tests/src/Functional/Views/DisplayBlockTest.php
@@ -11,7 +11,6 @@
 use Drupal\Tests\views\Functional\ViewTestBase;
 use Drupal\views\Entity\View;
 use Drupal\views\Views;
-use Drupal\views\Tests\ViewTestData;
 use Drupal\Core\Template\Attribute;
 
 /**
@@ -53,10 +52,9 @@ class DisplayBlockTest extends ViewTestBase {
   /**
    * {@inheritdoc}
    */
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp($import_test_views);
+  protected function setUp($import_test_views = TRUE, $modules = ['block_test_views']): void {
+    parent::setUp($import_test_views, $modules);
 
-    ViewTestData::createTestViews(static::class, ['block_test_views']);
     $this->enableViewsTestModule();
   }
 
diff --git a/core/modules/block/tests/src/Kernel/BlockConfigSchemaTest.php b/core/modules/block/tests/src/Kernel/BlockConfigSchemaTest.php
index f4e501f6d607cd414c8addf9435703bdda63fb43..e55b55800c5d285de78f3a6dc3da7dead16c0ec8 100644
--- a/core/modules/block/tests/src/Kernel/BlockConfigSchemaTest.php
+++ b/core/modules/block/tests/src/Kernel/BlockConfigSchemaTest.php
@@ -20,7 +20,6 @@ class BlockConfigSchemaTest extends KernelTestBase {
    */
   protected static $modules = [
     'block',
-    'aggregator',
     'book',
     'block_content',
     'comment',
diff --git a/core/modules/block_content/tests/src/Functional/Views/BlockContentFieldFilterTest.php b/core/modules/block_content/tests/src/Functional/Views/BlockContentFieldFilterTest.php
index 2946c9cadb97050b1919dd4b73829d9b891d5f0a..9cc7c988b777e9452f2e800781ff98e41932015d 100644
--- a/core/modules/block_content/tests/src/Functional/Views/BlockContentFieldFilterTest.php
+++ b/core/modules/block_content/tests/src/Functional/Views/BlockContentFieldFilterTest.php
@@ -39,8 +39,8 @@ class BlockContentFieldFilterTest extends BlockContentTestBase {
   /**
    * {@inheritdoc}
    */
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp($import_test_views);
+  protected function setUp($import_test_views = TRUE, $modules = ['block_content_test_views']): void {
+    parent::setUp($import_test_views, $modules);
 
     // Add two new languages.
     ConfigurableLanguage::createFromLangcode('fr')->save();
diff --git a/core/modules/block_content/tests/src/Functional/Views/BlockContentTestBase.php b/core/modules/block_content/tests/src/Functional/Views/BlockContentTestBase.php
index 04b270f7a9d13d638fde8c6e8fe8f25a2e103911..493c91648ee3c117b716c7d5af0f1e06578c1bb6 100644
--- a/core/modules/block_content/tests/src/Functional/Views/BlockContentTestBase.php
+++ b/core/modules/block_content/tests/src/Functional/Views/BlockContentTestBase.php
@@ -6,7 +6,6 @@
 use Drupal\block_content\Entity\BlockContentType;
 use Drupal\Component\Render\FormattableMarkup;
 use Drupal\Tests\views\Functional\ViewTestBase;
-use Drupal\views\Tests\ViewTestData;
 
 /**
  * Base class for all block_content tests.
@@ -40,16 +39,12 @@ abstract class BlockContentTestBase extends ViewTestBase {
     'block_content_test_views',
   ];
 
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp($import_test_views);
+  protected function setUp($import_test_views = TRUE, $modules = ['block_content_test_views']): void {
+    parent::setUp($import_test_views, $modules);
     // Ensure the basic bundle exists. This is provided by the standard profile.
     $this->createBlockContentType(['id' => 'basic']);
 
     $this->adminUser = $this->drupalCreateUser($this->permissions);
-
-    if ($import_test_views) {
-      ViewTestData::createTestViews(static::class, ['block_content_test_views']);
-    }
   }
 
   /**
diff --git a/core/modules/book/tests/src/Functional/Views/BookRelationshipTest.php b/core/modules/book/tests/src/Functional/Views/BookRelationshipTest.php
index 5051f0a81eb6ca1744dd10bb2ce02e17a7c0ed6a..6ab14c1581f962035ed8ee92f29a86659c1394f9 100644
--- a/core/modules/book/tests/src/Functional/Views/BookRelationshipTest.php
+++ b/core/modules/book/tests/src/Functional/Views/BookRelationshipTest.php
@@ -50,8 +50,8 @@ class BookRelationshipTest extends ViewTestBase {
   /**
    * {@inheritdoc}
    */
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp($import_test_views);
+  protected function setUp($import_test_views = TRUE, $modules = []): void {
+    parent::setUp($import_test_views, $modules);
 
     // Create users.
     $this->bookAuthor = $this->drupalCreateUser(
diff --git a/core/modules/comment/tests/src/Functional/Views/CommentFieldFilterTest.php b/core/modules/comment/tests/src/Functional/Views/CommentFieldFilterTest.php
index 8f3b45ff822c0740cb999de58d1b23b164d924d1..678fab6c8e2475d48b9a4d650a966fbc3f3df16d 100644
--- a/core/modules/comment/tests/src/Functional/Views/CommentFieldFilterTest.php
+++ b/core/modules/comment/tests/src/Functional/Views/CommentFieldFilterTest.php
@@ -37,7 +37,7 @@ class CommentFieldFilterTest extends CommentTestBase {
   public $commentTitles = [];
 
   protected function setUp($import_test_views = TRUE, $modules = ['comment_test_views']): void {
-    parent::setUp($import_test_views);
+    parent::setUp($import_test_views, $modules);
     $this->drupalLogin($this->drupalCreateUser(['access comments']));
 
     // Add two new languages.
diff --git a/core/modules/comment/tests/src/Functional/Views/CommentTestBase.php b/core/modules/comment/tests/src/Functional/Views/CommentTestBase.php
index 50c26457b45500bd10d98b76529b33633eacebdb..29ca8b49191e633c9363b77437349f8b17b040b9 100644
--- a/core/modules/comment/tests/src/Functional/Views/CommentTestBase.php
+++ b/core/modules/comment/tests/src/Functional/Views/CommentTestBase.php
@@ -4,7 +4,6 @@
 
 use Drupal\comment\Tests\CommentTestTrait;
 use Drupal\Tests\views\Functional\ViewTestBase;
-use Drupal\views\Tests\ViewTestData;
 use Drupal\comment\Entity\Comment;
 
 /**
@@ -57,9 +56,7 @@ abstract class CommentTestBase extends ViewTestBase {
   protected $comment;
 
   protected function setUp($import_test_views = TRUE, $modules = ['comment_test_views']): void {
-    parent::setUp($import_test_views);
-
-    ViewTestData::createTestViews(static::class, $modules);
+    parent::setUp($import_test_views, $modules);
 
     // Add two users, create a node with the user1 as author and another node
     // with user2 as author. For the second node add a comment from user1.
diff --git a/core/modules/comment/tests/src/Functional/Views/DefaultViewRecentCommentsTest.php b/core/modules/comment/tests/src/Functional/Views/DefaultViewRecentCommentsTest.php
index 0636c43385e523e083afcce816bb9c979df568e7..e62373a4f2bbdff7ecc52d2ded22d1a4fc325d01 100644
--- a/core/modules/comment/tests/src/Functional/Views/DefaultViewRecentCommentsTest.php
+++ b/core/modules/comment/tests/src/Functional/Views/DefaultViewRecentCommentsTest.php
@@ -65,8 +65,8 @@ class DefaultViewRecentCommentsTest extends ViewTestBase {
    */
   public $node;
 
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp($import_test_views);
+  protected function setUp($import_test_views = TRUE, $modules = []): void {
+    parent::setUp($import_test_views, $modules);
 
     // Create a new content type
     $content_type = $this->drupalCreateContentType();
diff --git a/core/modules/comment/tests/src/Functional/Views/WizardTest.php b/core/modules/comment/tests/src/Functional/Views/WizardTest.php
index ecabc08b96b1c0e69451616fcedd10e116758445..c8b206134503011191596224ce10633c7cebcb72 100644
--- a/core/modules/comment/tests/src/Functional/Views/WizardTest.php
+++ b/core/modules/comment/tests/src/Functional/Views/WizardTest.php
@@ -31,8 +31,8 @@ class WizardTest extends WizardTestBase {
   /**
    * {@inheritdoc}
    */
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp($import_test_views);
+  protected function setUp($import_test_views = TRUE, $modules = []): void {
+    parent::setUp($import_test_views, $modules);
     $this->drupalCreateContentType(['type' => 'page', 'name' => 'Basic page']);
     // Add comment field to page node type.
     $this->addDefaultCommentField('node', 'page');
diff --git a/core/modules/config_translation/tests/src/Functional/ConfigTranslationViewListUiTest.php b/core/modules/config_translation/tests/src/Functional/ConfigTranslationViewListUiTest.php
index c8bae85e9f4aef2276cb22eaf606a8ffc2b70fda..3cc36c8b51cf88d26ecdef9ac087d55c6d8c556f 100644
--- a/core/modules/config_translation/tests/src/Functional/ConfigTranslationViewListUiTest.php
+++ b/core/modules/config_translation/tests/src/Functional/ConfigTranslationViewListUiTest.php
@@ -34,8 +34,8 @@ class ConfigTranslationViewListUiTest extends UITestBase {
    */
   protected $defaultTheme = 'stark';
 
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp($import_test_views);
+  protected function setUp($import_test_views = TRUE, $modules = ['views_test_config']): void {
+    parent::setUp($import_test_views, $modules);
 
     $permissions = [
       'administer views',
diff --git a/core/modules/contact/tests/src/Functional/Views/ContactLinkTest.php b/core/modules/contact/tests/src/Functional/Views/ContactLinkTest.php
index 836e932f3725a8aaca0825ac1cecf00f2aebbde2..db814ba82268f55ce2de0326a2c802abaf1568c8 100644
--- a/core/modules/contact/tests/src/Functional/Views/ContactLinkTest.php
+++ b/core/modules/contact/tests/src/Functional/Views/ContactLinkTest.php
@@ -4,7 +4,6 @@
 
 use Drupal\Core\Cache\Cache;
 use Drupal\Tests\views\Functional\ViewTestBase;
-use Drupal\views\Tests\ViewTestData;
 use Drupal\user\Entity\User;
 
 /**
@@ -44,10 +43,8 @@ class ContactLinkTest extends ViewTestBase {
   /**
    * {@inheritdoc}
    */
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp($import_test_views);
-
-    ViewTestData::createTestViews(static::class, ['contact_test_views']);
+  protected function setUp($import_test_views = TRUE, $modules = ['contact_test_views']): void {
+    parent::setUp($import_test_views, $modules);
 
     $this->userData = $this->container->get('user.data');
   }
diff --git a/core/modules/content_moderation/tests/src/Functional/ViewsModerationStateFilterTest.php b/core/modules/content_moderation/tests/src/Functional/ViewsModerationStateFilterTest.php
index 286bbcfedcc02a77423495a60445c9796bb17e2a..9099f4c5e9d9e80c6f43d755aec73736a392e597 100644
--- a/core/modules/content_moderation/tests/src/Functional/ViewsModerationStateFilterTest.php
+++ b/core/modules/content_moderation/tests/src/Functional/ViewsModerationStateFilterTest.php
@@ -42,8 +42,8 @@ class ViewsModerationStateFilterTest extends ViewTestBase {
   /**
    * {@inheritdoc}
    */
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp(FALSE);
+  protected function setUp($import_test_views = TRUE, $modules = []): void {
+    parent::setUp(FALSE, $modules);
 
     NodeType::create([
       'type' => 'example_a',
diff --git a/core/modules/datetime/tests/src/Functional/DateFilterTest.php b/core/modules/datetime/tests/src/Functional/DateFilterTest.php
index a7d7d524c43e95f14c17c65d3267783d1092d11e..5fad417afbab6e74b02cb7a15b386d1348548a09 100644
--- a/core/modules/datetime/tests/src/Functional/DateFilterTest.php
+++ b/core/modules/datetime/tests/src/Functional/DateFilterTest.php
@@ -7,7 +7,6 @@
 use Drupal\field\Entity\FieldStorageConfig;
 use Drupal\node\Entity\NodeType;
 use Drupal\Tests\views\Functional\ViewTestBase;
-use Drupal\views\Tests\ViewTestData;
 
 /**
  * Test exposed datetime filters functionality.
@@ -50,9 +49,8 @@ class DateFilterTest extends ViewTestBase {
   /**
    * {@inheritdoc}
    */
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp($import_test_views);
-    ViewTestData::createTestViews(static::class, ['datetime_test']);
+  protected function setUp($import_test_views = TRUE, $modules = ['datetime_test']): void {
+    parent::setUp($import_test_views, $modules);
 
     // Add a date field to page nodes.
     $node_type = NodeType::create([
diff --git a/core/modules/field/tests/src/Functional/Views/FieldTestBase.php b/core/modules/field/tests/src/Functional/Views/FieldTestBase.php
index 5bda2f24da83ba1b89741ae0638ac5b4fcbbd66f..831e6cccc8055cf5e60a1a1cac0050060fee456b 100644
--- a/core/modules/field/tests/src/Functional/Views/FieldTestBase.php
+++ b/core/modules/field/tests/src/Functional/Views/FieldTestBase.php
@@ -5,7 +5,6 @@
 use Drupal\field\Entity\FieldConfig;
 use Drupal\node\Entity\NodeType;
 use Drupal\Tests\views\Functional\ViewTestBase;
-use Drupal\views\Tests\ViewTestData;
 use Drupal\field\Entity\FieldStorageConfig;
 
 /**
@@ -42,16 +41,14 @@ abstract class FieldTestBase extends ViewTestBase {
    */
   public $fields;
 
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp($import_test_views);
+  protected function setUp($import_test_views = TRUE, $modules = ['field_test_views']): void {
+    parent::setUp($import_test_views, $modules);
 
     // Ensure the page node type exists.
     NodeType::create([
       'type' => 'page',
       'name' => 'page',
     ])->save();
-
-    ViewTestData::createTestViews(static::class, ['field_test_views']);
   }
 
   public function setUpFieldStorages($amount = 3, $type = 'string') {
diff --git a/core/modules/field/tests/src/Functional/Views/FieldUITest.php b/core/modules/field/tests/src/Functional/Views/FieldUITest.php
index cf4cb50822d19dc7e069510b76691fc3ee731c82..1e143a51c24dce906b2207beb9d5b01b86469d55 100644
--- a/core/modules/field/tests/src/Functional/Views/FieldUITest.php
+++ b/core/modules/field/tests/src/Functional/Views/FieldUITest.php
@@ -43,8 +43,8 @@ class FieldUITest extends FieldTestBase {
   /**
    * {@inheritdoc}
    */
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp($import_test_views);
+  protected function setUp($import_test_views = TRUE, $modules = ['field_test_views']): void {
+    parent::setUp($import_test_views, $modules);
 
     $this->account = $this->drupalCreateUser(['administer views']);
     $this->drupalLogin($this->account);
diff --git a/core/modules/forum/tests/src/Functional/Views/ForumIntegrationTest.php b/core/modules/forum/tests/src/Functional/Views/ForumIntegrationTest.php
index 9405ce6f803cae823fa786771feee610dcb1e21b..4b26069ad9acbf11ac2b3ada91a696db29e1df55 100644
--- a/core/modules/forum/tests/src/Functional/Views/ForumIntegrationTest.php
+++ b/core/modules/forum/tests/src/Functional/Views/ForumIntegrationTest.php
@@ -5,7 +5,6 @@
 use Drupal\node\NodeInterface;
 use Drupal\views\Views;
 use Drupal\Tests\views\Functional\ViewTestBase;
-use Drupal\views\Tests\ViewTestData;
 
 /**
  * Tests the forum integration into views.
@@ -33,10 +32,8 @@ class ForumIntegrationTest extends ViewTestBase {
    */
   public static $testViews = ['test_forum_index'];
 
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp($import_test_views);
-
-    ViewTestData::createTestViews(static::class, ['forum_test_views']);
+  protected function setUp($import_test_views = TRUE, $modules = ['forum_test_views']): void {
+    parent::setUp($import_test_views, $modules);
   }
 
   /**
diff --git a/core/modules/jsonapi/jsonapi.module b/core/modules/jsonapi/jsonapi.module
index d0a58ecf9c849640476b2dc8b5990bf63fa7c616..804e78fd643749229202121bca760e8fba21fc3c 100644
--- a/core/modules/jsonapi/jsonapi.module
+++ b/core/modules/jsonapi/jsonapi.module
@@ -175,16 +175,6 @@ function jsonapi_jsonapi_entity_filter_access(EntityTypeInterface $entity_type,
   }
 }
 
-/**
- * Implements hook_jsonapi_ENTITY_TYPE_filter_access() for 'aggregator_feed'.
- */
-function jsonapi_jsonapi_aggregator_feed_filter_access(EntityTypeInterface $entity_type, AccountInterface $account) {
-  // @see \Drupal\aggregator\FeedAccessControlHandler::checkAccess()
-  return ([
-    JSONAPI_FILTER_AMONG_ALL => AccessResult::allowedIfHasPermission($account, 'access news feeds'),
-  ]);
-}
-
 /**
  * Implements hook_jsonapi_ENTITY_TYPE_filter_access() for 'block_content'.
  */
diff --git a/core/modules/jsonapi/tests/src/Functional/RestExportJsonApiUnsupported.php b/core/modules/jsonapi/tests/src/Functional/RestExportJsonApiUnsupported.php
index 71ec609f4aafe34a4a901d690571819cc6dfae18..6eed86f81eefe7bfe6d303c40439c64a0e350ed0 100644
--- a/core/modules/jsonapi/tests/src/Functional/RestExportJsonApiUnsupported.php
+++ b/core/modules/jsonapi/tests/src/Functional/RestExportJsonApiUnsupported.php
@@ -3,7 +3,6 @@
 namespace Drupal\Tests\jsonapi\Functional;
 
 use Drupal\Tests\views\Functional\ViewTestBase;
-use Drupal\views\Tests\ViewTestData;
 
 /**
  * Ensures that the 'api_json' format is not supported by the REST module.
@@ -32,9 +31,8 @@ class RestExportJsonApiUnsupported extends ViewTestBase {
   /**
    * {@inheritdoc}
    */
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp($import_test_views);
-    ViewTestData::createTestViews(static::class, ['rest_test_views']);
+  protected function setUp($import_test_views = TRUE, $modules = ['rest_test_views']): void {
+    parent::setUp($import_test_views, $modules);
 
     $this->drupalLogin($this->drupalCreateUser(['administer views']));
   }
diff --git a/core/modules/link/tests/src/Functional/Views/LinkViewsTokensTest.php b/core/modules/link/tests/src/Functional/Views/LinkViewsTokensTest.php
index ff5de02b91ef610928a47d767850c89253d97376..8c1f5be9d1cb96bc497809258f00e1d2eb5d7393 100644
--- a/core/modules/link/tests/src/Functional/Views/LinkViewsTokensTest.php
+++ b/core/modules/link/tests/src/Functional/Views/LinkViewsTokensTest.php
@@ -5,7 +5,6 @@
 use Drupal\field\Entity\FieldConfig;
 use Drupal\field\Entity\FieldStorageConfig;
 use Drupal\Tests\views\Functional\ViewTestBase;
-use Drupal\views\Tests\ViewTestData;
 
 /**
  * Tests the views integration for link tokens.
@@ -43,9 +42,8 @@ class LinkViewsTokensTest extends ViewTestBase {
   /**
    * {@inheritdoc}
    */
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp($import_test_views);
-    ViewTestData::createTestViews(static::class, ['link_test_views']);
+  protected function setUp($import_test_views = TRUE, $modules = ['link_test_views']): void {
+    parent::setUp($import_test_views, $modules);
 
     // Create Basic page node type.
     $this->drupalCreateContentType([
diff --git a/core/modules/node/tests/src/Functional/Views/BulkFormAccessTest.php b/core/modules/node/tests/src/Functional/Views/BulkFormAccessTest.php
index d3abb517febfe54e172ae86fbf119973168f8316..8d1d7b8087f35263e28a29685553b57408ca500f 100644
--- a/core/modules/node/tests/src/Functional/Views/BulkFormAccessTest.php
+++ b/core/modules/node/tests/src/Functional/Views/BulkFormAccessTest.php
@@ -45,8 +45,8 @@ class BulkFormAccessTest extends NodeTestBase {
   /**
    * {@inheritdoc}
    */
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp($import_test_views);
+  protected function setUp($import_test_views = TRUE, $modules = ['node_test_views']): void {
+    parent::setUp($import_test_views, $modules);
 
     // Create Article node type.
     $this->drupalCreateContentType(['type' => 'article', 'name' => 'Article']);
diff --git a/core/modules/node/tests/src/Functional/Views/BulkFormTest.php b/core/modules/node/tests/src/Functional/Views/BulkFormTest.php
index 0415f1ad69b7af67f287a050baf42082871ce747..cdbd7b63c7016a07d761d879bdaa9fbc7cea215e 100644
--- a/core/modules/node/tests/src/Functional/Views/BulkFormTest.php
+++ b/core/modules/node/tests/src/Functional/Views/BulkFormTest.php
@@ -42,8 +42,8 @@ class BulkFormTest extends NodeTestBase {
   /**
    * {@inheritdoc}
    */
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp($import_test_views);
+  protected function setUp($import_test_views = TRUE, $modules = ['node_test_views']): void {
+    parent::setUp($import_test_views, $modules);
 
     ConfigurableLanguage::createFromLangcode('en-gb')->save();
     ConfigurableLanguage::createFromLangcode('it')->save();
diff --git a/core/modules/node/tests/src/Functional/Views/FilterNodeAccessTest.php b/core/modules/node/tests/src/Functional/Views/FilterNodeAccessTest.php
index 30e75d63cb9a9161ff27219065478a1364a283ae..a3a5f704a34927cda0cb6d2ca7ab07ef43330583 100644
--- a/core/modules/node/tests/src/Functional/Views/FilterNodeAccessTest.php
+++ b/core/modules/node/tests/src/Functional/Views/FilterNodeAccessTest.php
@@ -39,8 +39,8 @@ class FilterNodeAccessTest extends NodeTestBase {
   /**
    * {@inheritdoc}
    */
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp($import_test_views);
+  protected function setUp($import_test_views = TRUE, $modules = ['node_test_views']): void {
+    parent::setUp($import_test_views, $modules);
 
     $this->drupalCreateContentType(['type' => 'article', 'name' => 'Article']);
 
diff --git a/core/modules/node/tests/src/Functional/Views/FrontPageTest.php b/core/modules/node/tests/src/Functional/Views/FrontPageTest.php
index 1ee1b6606dce673c4e6a1d4458cce91386bee878..7f36d63580f6439e82b3b0ba4504c46d58991700 100644
--- a/core/modules/node/tests/src/Functional/Views/FrontPageTest.php
+++ b/core/modules/node/tests/src/Functional/Views/FrontPageTest.php
@@ -48,8 +48,8 @@ class FrontPageTest extends ViewTestBase {
   /**
    * {@inheritdoc}
    */
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp($import_test_views);
+  protected function setUp($import_test_views = TRUE, $modules = []): void {
+    parent::setUp($import_test_views, $modules);
 
     $this->nodeStorage = $this->container->get('entity_type.manager')
       ->getStorage('node');
diff --git a/core/modules/node/tests/src/Functional/Views/NodeFieldFilterTest.php b/core/modules/node/tests/src/Functional/Views/NodeFieldFilterTest.php
index e94a11ecb3acf7d3623e59126ad5800d40defdf1..cc31f1976e25cafccd5ea187dcc94db682fd821d 100644
--- a/core/modules/node/tests/src/Functional/Views/NodeFieldFilterTest.php
+++ b/core/modules/node/tests/src/Functional/Views/NodeFieldFilterTest.php
@@ -38,8 +38,8 @@ class NodeFieldFilterTest extends NodeTestBase {
   /**
    * {@inheritdoc}
    */
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp($import_test_views);
+  protected function setUp($import_test_views = TRUE, $modules = ['node_test_views']): void {
+    parent::setUp($import_test_views, $modules);
 
     // Create Page content type.
     if ($this->profile != 'standard') {
diff --git a/core/modules/node/tests/src/Functional/Views/NodeLanguageTest.php b/core/modules/node/tests/src/Functional/Views/NodeLanguageTest.php
index c5bd79ccb953fbd4fbb0147afcce160840a8ecf0..006a3ade0df216eac5492a4f593ffe25cb960627 100644
--- a/core/modules/node/tests/src/Functional/Views/NodeLanguageTest.php
+++ b/core/modules/node/tests/src/Functional/Views/NodeLanguageTest.php
@@ -43,8 +43,8 @@ class NodeLanguageTest extends NodeTestBase {
   /**
    * {@inheritdoc}
    */
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp(FALSE);
+  protected function setUp($import_test_views = TRUE, $modules = []): void {
+    parent::setUp(FALSE, $modules);
 
     // Create Page content type.
     if ($this->profile != 'standard') {
diff --git a/core/modules/node/tests/src/Functional/Views/NodeTestBase.php b/core/modules/node/tests/src/Functional/Views/NodeTestBase.php
index 0bbeef888e1d2343f745ee44e75076a4492aa8d2..03d81554ba74626672c2ed8fea2f41cafe9f20a9 100644
--- a/core/modules/node/tests/src/Functional/Views/NodeTestBase.php
+++ b/core/modules/node/tests/src/Functional/Views/NodeTestBase.php
@@ -3,7 +3,6 @@
 namespace Drupal\Tests\node\Functional\Views;
 
 use Drupal\Tests\views\Functional\ViewTestBase;
-use Drupal\views\Tests\ViewTestData;
 
 /**
  * Base class for all node Views tests.
@@ -18,12 +17,8 @@ abstract class NodeTestBase extends ViewTestBase {
   /**
    * {@inheritdoc}
    */
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp($import_test_views);
-
-    if ($import_test_views) {
-      ViewTestData::createTestViews(static::class, ['node_test_views']);
-    }
+  protected function setUp($import_test_views = TRUE, $modules = ['node_test_views']): void {
+    parent::setUp($import_test_views, $modules);
   }
 
 }
diff --git a/core/modules/node/tests/src/Functional/Views/PathPluginTest.php b/core/modules/node/tests/src/Functional/Views/PathPluginTest.php
index d4d5ad3dfcef544734c1e2d2f435c75a55c5ec71..8645a6cdd317b16fce35bc7b856d0cc1b9ea8cfd 100644
--- a/core/modules/node/tests/src/Functional/Views/PathPluginTest.php
+++ b/core/modules/node/tests/src/Functional/Views/PathPluginTest.php
@@ -40,8 +40,8 @@ class PathPluginTest extends NodeTestBase {
   /**
    * {@inheritdoc}
    */
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp($import_test_views);
+  protected function setUp($import_test_views = TRUE, $modules = ['node_test_views']): void {
+    parent::setUp($import_test_views, $modules);
 
     $this->drupalCreateContentType(['type' => 'article']);
 
diff --git a/core/modules/node/tests/src/Functional/Views/RowPluginTest.php b/core/modules/node/tests/src/Functional/Views/RowPluginTest.php
index 4ea7d42ffdb00d4d08958cc0c1cb1b507fa0ba8d..3aba69fa324ab4aca0974dbb2ea97f2f7898e2a4 100644
--- a/core/modules/node/tests/src/Functional/Views/RowPluginTest.php
+++ b/core/modules/node/tests/src/Functional/Views/RowPluginTest.php
@@ -41,8 +41,8 @@ class RowPluginTest extends NodeTestBase {
   /**
    * {@inheritdoc}
    */
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp($import_test_views);
+  protected function setUp($import_test_views = TRUE, $modules = ['node_test_views']): void {
+    parent::setUp($import_test_views, $modules);
 
     $this->drupalCreateContentType(['type' => 'article']);
 
diff --git a/core/modules/responsive_image/tests/src/Functional/ViewsIntegrationTest.php b/core/modules/responsive_image/tests/src/Functional/ViewsIntegrationTest.php
index 778de1c563b144e77796d6f29aff23cbbf12a11e..463ed601724dac61809d554452588b41e645b9e8 100644
--- a/core/modules/responsive_image/tests/src/Functional/ViewsIntegrationTest.php
+++ b/core/modules/responsive_image/tests/src/Functional/ViewsIntegrationTest.php
@@ -47,8 +47,8 @@ class ViewsIntegrationTest extends ViewTestBase {
   /**
    * {@inheritdoc}
    */
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp($import_test_views);
+  protected function setUp($import_test_views = TRUE, $modules = ['views_test_config']): void {
+    parent::setUp($import_test_views, $modules);
 
     $this->enableViewsTestModule();
 
diff --git a/core/modules/rest/tests/src/Functional/Views/ExcludedFieldTokenTest.php b/core/modules/rest/tests/src/Functional/Views/ExcludedFieldTokenTest.php
index 71f710e9cf0daf62891f8cd876074d230aa48316..36f085c1206746d3c6358959ae7e3121f60f4fc0 100644
--- a/core/modules/rest/tests/src/Functional/Views/ExcludedFieldTokenTest.php
+++ b/core/modules/rest/tests/src/Functional/Views/ExcludedFieldTokenTest.php
@@ -4,7 +4,6 @@
 
 use Drupal\node\Entity\Node;
 use Drupal\Tests\views\Functional\ViewTestBase;
-use Drupal\views\Tests\ViewTestData;
 use Drupal\views\Views;
 
 /**
@@ -48,10 +47,8 @@ class ExcludedFieldTokenTest extends ViewTestBase {
   /**
    * {@inheritdoc}
    */
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp($import_test_views);
-
-    ViewTestData::createTestViews(static::class, ['rest_test_views']);
+  protected function setUp($import_test_views = TRUE, $modules = ['rest_test_views']): void {
+    parent::setUp($import_test_views, $modules);
 
     // Create some test content.
     for ($i = 1; $i <= 10; $i++) {
diff --git a/core/modules/rest/tests/src/Functional/Views/FieldCounterTest.php b/core/modules/rest/tests/src/Functional/Views/FieldCounterTest.php
index 11bfa01b219372f4565e2e1c76cf3d63716e7ec5..173dd13bb8547088670516847d19172ba052b66b 100644
--- a/core/modules/rest/tests/src/Functional/Views/FieldCounterTest.php
+++ b/core/modules/rest/tests/src/Functional/Views/FieldCounterTest.php
@@ -4,7 +4,6 @@
 
 use Drupal\node\Entity\Node;
 use Drupal\Tests\views\Functional\ViewTestBase;
-use Drupal\views\Tests\ViewTestData;
 use Drupal\views\Views;
 
 /**
@@ -48,10 +47,8 @@ class FieldCounterTest extends ViewTestBase {
   /**
    * {@inheritdoc}
    */
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp($import_test_views);
-
-    ViewTestData::createTestViews(static::class, ['rest_test_views']);
+  protected function setUp($import_test_views = TRUE, $modules = ['rest_test_views']): void {
+    parent::setUp($import_test_views, $modules);
 
     // Create some test content.
     for ($i = 1; $i <= 10; $i++) {
diff --git a/core/modules/rest/tests/src/Functional/Views/RestExportAuthTest.php b/core/modules/rest/tests/src/Functional/Views/RestExportAuthTest.php
index dfc3595aa6d2eb3425d686bc5e6af737d404ccf3..72a09a15052f00a42131bbb8ccaa81547f7a9ec7 100644
--- a/core/modules/rest/tests/src/Functional/Views/RestExportAuthTest.php
+++ b/core/modules/rest/tests/src/Functional/Views/RestExportAuthTest.php
@@ -25,8 +25,8 @@ class RestExportAuthTest extends ViewTestBase {
   /**
    * {@inheritdoc}
    */
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp($import_test_views);
+  protected function setUp($import_test_views = TRUE, $modules = []): void {
+    parent::setUp($import_test_views, $modules);
 
     $this->drupalLogin($this->drupalCreateUser(['administer views']));
   }
diff --git a/core/modules/rest/tests/src/Functional/Views/StyleSerializerTest.php b/core/modules/rest/tests/src/Functional/Views/StyleSerializerTest.php
index 0a6cad991c0e0a5b09d617995bffdc9f42eb0985..f83369b213839b5b489863854b1245f94dd11049 100644
--- a/core/modules/rest/tests/src/Functional/Views/StyleSerializerTest.php
+++ b/core/modules/rest/tests/src/Functional/Views/StyleSerializerTest.php
@@ -15,7 +15,6 @@
 use Drupal\views\Entity\View;
 use Drupal\views\Plugin\views\display\DisplayPluginBase;
 use Drupal\views\Views;
-use Drupal\views\Tests\ViewTestData;
 use Symfony\Component\HttpFoundation\Request;
 
 /**
@@ -71,10 +70,8 @@ class StyleSerializerTest extends ViewTestBase {
    */
   protected $renderer;
 
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp($import_test_views);
-
-    ViewTestData::createTestViews(static::class, ['rest_test_views']);
+  protected function setUp($import_test_views = TRUE, $modules = ['rest_test_views']): void {
+    parent::setUp($import_test_views, $modules);
 
     $this->adminUser = $this->drupalCreateUser([
       'administer views',
diff --git a/core/modules/statistics/tests/src/Functional/Views/IntegrationTest.php b/core/modules/statistics/tests/src/Functional/Views/IntegrationTest.php
index 6ff40ce288e1a56478cd0dfa3ee117f4a317a08a..e92b723a38185f13b0f015074b5374e8fac38411 100644
--- a/core/modules/statistics/tests/src/Functional/Views/IntegrationTest.php
+++ b/core/modules/statistics/tests/src/Functional/Views/IntegrationTest.php
@@ -3,7 +3,6 @@
 namespace Drupal\Tests\statistics\Functional\Views;
 
 use Drupal\Tests\views\Functional\ViewTestBase;
-use Drupal\views\Tests\ViewTestData;
 
 /**
  * Tests basic integration of views data from the statistics module.
@@ -47,10 +46,8 @@ class IntegrationTest extends ViewTestBase {
    */
   public static $testViews = ['test_statistics_integration'];
 
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp($import_test_views);
-
-    ViewTestData::createTestViews(static::class, ['statistics_test_views']);
+  protected function setUp($import_test_views = TRUE, $modules = ['statistics_test_views']): void {
+    parent::setUp($import_test_views, $modules);
 
     // Create a new user for viewing nodes and statistics.
     $this->webUser = $this->drupalCreateUser([
diff --git a/core/modules/taxonomy/tests/src/Functional/Views/TaxonomyFieldFilterTest.php b/core/modules/taxonomy/tests/src/Functional/Views/TaxonomyFieldFilterTest.php
index 74b24df599aa235adc9757d634a0310f21521918..15adc76911f1714c9172a3d4ee5d5e1d44d0844d 100644
--- a/core/modules/taxonomy/tests/src/Functional/Views/TaxonomyFieldFilterTest.php
+++ b/core/modules/taxonomy/tests/src/Functional/Views/TaxonomyFieldFilterTest.php
@@ -57,8 +57,8 @@ class TaxonomyFieldFilterTest extends ViewTestBase {
    */
   public $termNames = [];
 
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp($import_test_views);
+  protected function setUp($import_test_views = TRUE, $modules = []): void {
+    parent::setUp($import_test_views, $modules);
 
     // Add two new languages.
     ConfigurableLanguage::createFromLangcode('fr')->save();
diff --git a/core/modules/taxonomy/tests/src/Functional/Views/TaxonomyIndexTidUiTest.php b/core/modules/taxonomy/tests/src/Functional/Views/TaxonomyIndexTidUiTest.php
index 51d1398b304ef03c9a4b68a88d6deec420dffcce..19513fcdf7a077f0abc3b4a229b05ebaed659289 100644
--- a/core/modules/taxonomy/tests/src/Functional/Views/TaxonomyIndexTidUiTest.php
+++ b/core/modules/taxonomy/tests/src/Functional/Views/TaxonomyIndexTidUiTest.php
@@ -58,8 +58,8 @@ class TaxonomyIndexTidUiTest extends UITestBase {
   /**
    * {@inheritdoc}
    */
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp($import_test_views);
+  protected function setUp($import_test_views = TRUE, $modules = []): void {
+    parent::setUp($import_test_views, $modules);
 
     $this->adminUser = $this->drupalCreateUser([
       'administer taxonomy',
diff --git a/core/modules/taxonomy/tests/src/Functional/Views/TaxonomyParentUITest.php b/core/modules/taxonomy/tests/src/Functional/Views/TaxonomyParentUITest.php
index 6599e7cbd7c40c27898bd8a7e1b3f9c213a6c07b..09b30e8e349d3ff7ad96f4a3ccea66fa49610485 100644
--- a/core/modules/taxonomy/tests/src/Functional/Views/TaxonomyParentUITest.php
+++ b/core/modules/taxonomy/tests/src/Functional/Views/TaxonomyParentUITest.php
@@ -2,7 +2,6 @@
 
 namespace Drupal\Tests\taxonomy\Functional\Views;
 
-use Drupal\views\Tests\ViewTestData;
 use Drupal\Tests\views_ui\Functional\UITestBase;
 
 /**
@@ -35,10 +34,8 @@ class TaxonomyParentUITest extends UITestBase {
   /**
    * {@inheritdoc}
    */
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp($import_test_views);
-
-    ViewTestData::createTestViews(static::class, ['taxonomy_test_views']);
+  protected function setUp($import_test_views = TRUE, $modules = ['taxonomy_test_views']): void {
+    parent::setUp($import_test_views, $modules);
   }
 
   /**
diff --git a/core/modules/taxonomy/tests/src/Functional/Views/TaxonomyRelationshipTest.php b/core/modules/taxonomy/tests/src/Functional/Views/TaxonomyRelationshipTest.php
index d034e57cd21d4f1ba43969b5c843290b46c41061..3466e7aa82c192d5fa3c1bd087b4a768ced32531 100644
--- a/core/modules/taxonomy/tests/src/Functional/Views/TaxonomyRelationshipTest.php
+++ b/core/modules/taxonomy/tests/src/Functional/Views/TaxonomyRelationshipTest.php
@@ -35,8 +35,8 @@ class TaxonomyRelationshipTest extends TaxonomyTestBase {
   /**
    * {@inheritdoc}
    */
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp($import_test_views);
+  protected function setUp($import_test_views = TRUE, $modules = []): void {
+    parent::setUp($import_test_views, $modules);
 
     // Make term2 parent of term1.
     $this->term1->set('parent', $this->term2->id());
diff --git a/core/modules/taxonomy/tests/src/Functional/Views/TaxonomyTermArgumentDepthTest.php b/core/modules/taxonomy/tests/src/Functional/Views/TaxonomyTermArgumentDepthTest.php
index 67e413cdc24b301240e8c3267826b8d3720ca574..9f7cc5187393ebca859283b6b52c01fb1efbe992 100644
--- a/core/modules/taxonomy/tests/src/Functional/Views/TaxonomyTermArgumentDepthTest.php
+++ b/core/modules/taxonomy/tests/src/Functional/Views/TaxonomyTermArgumentDepthTest.php
@@ -42,8 +42,8 @@ class TaxonomyTermArgumentDepthTest extends TaxonomyTestBase {
   /**
    * {@inheritdoc}
    */
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp($import_test_views);
+  protected function setUp($import_test_views = TRUE, $modules = []): void {
+    parent::setUp($import_test_views, $modules);
 
     // Create a term with markup in the label.
     $first = $this->createTerm(['name' => '<em>First</em>']);
diff --git a/core/modules/taxonomy/tests/src/Functional/Views/TaxonomyTermFilterDepthTest.php b/core/modules/taxonomy/tests/src/Functional/Views/TaxonomyTermFilterDepthTest.php
index 481a4c69d33617de37e00bef930dd5ae492b2951..60f3f9c22d11d8a4febe061f5057f4a3949d5289 100644
--- a/core/modules/taxonomy/tests/src/Functional/Views/TaxonomyTermFilterDepthTest.php
+++ b/core/modules/taxonomy/tests/src/Functional/Views/TaxonomyTermFilterDepthTest.php
@@ -44,8 +44,8 @@ class TaxonomyTermFilterDepthTest extends TaxonomyTestBase {
   /**
    * {@inheritdoc}
    */
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp($import_test_views);
+  protected function setUp($import_test_views = TRUE, $modules = []): void {
+    parent::setUp($import_test_views, $modules);
 
     // Create a hierarchy 3 deep. Note the parent setup function creates two
     // top-level terms w/o children.
diff --git a/core/modules/taxonomy/tests/src/Functional/Views/TaxonomyTermViewTest.php b/core/modules/taxonomy/tests/src/Functional/Views/TaxonomyTermViewTest.php
index c0a521ca20a17c18f1866766d2bb8c144dad0815..90911684263c24e43e7293aa57e78d0b6f82b0d2 100644
--- a/core/modules/taxonomy/tests/src/Functional/Views/TaxonomyTermViewTest.php
+++ b/core/modules/taxonomy/tests/src/Functional/Views/TaxonomyTermViewTest.php
@@ -45,8 +45,8 @@ class TaxonomyTermViewTest extends TaxonomyTestBase {
   /**
    * {@inheritdoc}
    */
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp($import_test_views);
+  protected function setUp($import_test_views = TRUE, $modules = []): void {
+    parent::setUp($import_test_views, $modules);
 
     // Create an administrative user.
     $this->adminUser = $this->drupalCreateUser([
diff --git a/core/modules/taxonomy/tests/src/Functional/Views/TaxonomyTestBase.php b/core/modules/taxonomy/tests/src/Functional/Views/TaxonomyTestBase.php
index 083ee9e6c411eb2559bacd9c13ded205514c4007..ed0235b1acf7d336ae23abdf9f1ce67c81369d1b 100644
--- a/core/modules/taxonomy/tests/src/Functional/Views/TaxonomyTestBase.php
+++ b/core/modules/taxonomy/tests/src/Functional/Views/TaxonomyTestBase.php
@@ -6,9 +6,9 @@
 use Drupal\Core\Language\LanguageInterface;
 use Drupal\Tests\field\Traits\EntityReferenceTestTrait;
 use Drupal\Tests\views\Functional\ViewTestBase;
-use Drupal\views\Tests\ViewTestData;
 use Drupal\taxonomy\Entity\Vocabulary;
 use Drupal\taxonomy\Entity\Term;
+use Drupal\views\Tests\ViewTestData;
 
 /**
  * Base class for all taxonomy tests.
@@ -55,12 +55,19 @@ abstract class TaxonomyTestBase extends ViewTestBase {
   /**
    * {@inheritdoc}
    */
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp($import_test_views);
+  protected function setUp($import_test_views = TRUE, $modules = []): void {
+    // Important: taxonomy_test_views module must not be in the $modules to
+    // avoid an issue that particular view is already exists.
+    parent::setUp($import_test_views, $modules);
     $this->mockStandardInstall();
 
+    // This needs to be done again after ::mockStandardInstall() to make
+    // test vocabularies available.
+    // Explicitly add taxonomy_test_views to $modules now, so required views are
+    // being created.
+    $modules[] = 'taxonomy_test_views';
     if ($import_test_views) {
-      ViewTestData::createTestViews(static::class, ['taxonomy_test_views']);
+      ViewTestData::createTestViews(static::class, $modules);
     }
 
     $this->term1 = $this->createTerm();
diff --git a/core/modules/taxonomy/tests/src/Functional/Views/TaxonomyVocabularyArgumentTest.php b/core/modules/taxonomy/tests/src/Functional/Views/TaxonomyVocabularyArgumentTest.php
index 6415390dc104e6efe053c6057ca39499a68239a2..b29f95b900074bf45f98d9ac6413665b21057897 100644
--- a/core/modules/taxonomy/tests/src/Functional/Views/TaxonomyVocabularyArgumentTest.php
+++ b/core/modules/taxonomy/tests/src/Functional/Views/TaxonomyVocabularyArgumentTest.php
@@ -41,8 +41,8 @@ class TaxonomyVocabularyArgumentTest extends TaxonomyTestBase {
   /**
    * {@inheritdoc}
    */
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp($import_test_views);
+  protected function setUp($import_test_views = TRUE, $modules = []): void {
+    parent::setUp($import_test_views, $modules);
 
     // Add default vocabulary to list of vocabularies.
     $this->vocabularies[] = $this->vocabulary;
diff --git a/core/modules/user/tests/src/Functional/AccessRoleUITest.php b/core/modules/user/tests/src/Functional/AccessRoleUITest.php
index 4c743a722ae2bd542601828b423f5dec352ae255..1a89de78527677a6bb7cf0e1f76450c89fde3cd1 100644
--- a/core/modules/user/tests/src/Functional/AccessRoleUITest.php
+++ b/core/modules/user/tests/src/Functional/AccessRoleUITest.php
@@ -3,7 +3,6 @@
 namespace Drupal\Tests\user\Functional;
 
 use Drupal\Tests\views_ui\Functional\UITestBase;
-use Drupal\views\Tests\ViewTestData;
 
 /**
  * Tests views role access plugin UI.
@@ -35,10 +34,8 @@ class AccessRoleUITest extends UITestBase {
   /**
    * {@inheritdoc}
    */
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp($import_test_views);
-
-    ViewTestData::createTestViews(static::class, ['user_test_views']);
+  protected function setUp($import_test_views = TRUE, $modules = ['user_test_views']): void {
+    parent::setUp($import_test_views, $modules);
   }
 
   /**
diff --git a/core/modules/user/tests/src/Functional/UserPermissionsTest.php b/core/modules/user/tests/src/Functional/UserPermissionsTest.php
index c8ad0d3bb01bbd6f90e96f8c993fefad30cf6e66..236505037145fff2445a71f4872d0711a3923b94 100644
--- a/core/modules/user/tests/src/Functional/UserPermissionsTest.php
+++ b/core/modules/user/tests/src/Functional/UserPermissionsTest.php
@@ -137,11 +137,11 @@ public function testAdministratorRole() {
     \Drupal::entityTypeManager()->getStorage('user_role')->resetCache();
     $this->assertTrue(Role::load($this->rid)->isAdmin());
 
-    // Enable aggregator module and ensure the 'administer news feeds'
+    // Enable block module and ensure the 'administer news feeds'
     // permission is assigned by default.
-    \Drupal::service('module_installer')->install(['aggregator']);
+    \Drupal::service('module_installer')->install(['block']);
 
-    $this->assertTrue($this->adminUser->hasPermission('administer news feeds'), 'The permission was automatically assigned to the administrator role');
+    $this->assertTrue($this->adminUser->hasPermission('administer blocks'), 'The permission was automatically assigned to the administrator role');
 
     // Ensure that selecting '- None -' removes the admin role.
     $edit = [];
diff --git a/core/modules/user/tests/src/Functional/Views/AccessRoleTest.php b/core/modules/user/tests/src/Functional/Views/AccessRoleTest.php
index 85991406eb693c12a533fcf7a0f025239584ee05..e3a7b7e441460e6731a1e1ddb80bb71d24710f1e 100644
--- a/core/modules/user/tests/src/Functional/Views/AccessRoleTest.php
+++ b/core/modules/user/tests/src/Functional/Views/AccessRoleTest.php
@@ -30,6 +30,13 @@ class AccessRoleTest extends AccessTestBase {
    */
   protected $defaultTheme = 'stark';
 
+  /**
+   * {@inheritdoc}
+   */
+  protected function setUp($import_test_views = TRUE, $modules = ['user_test_views']): void {
+    parent::setUp($import_test_views, $modules);
+  }
+
   /**
    * Tests role access plugin.
    */
diff --git a/core/modules/user/tests/src/Functional/Views/AccessTestBase.php b/core/modules/user/tests/src/Functional/Views/AccessTestBase.php
index 93c6bfb1a7ebfda3a10be2f408d1d07896132062..d565bb099b57bb7aba79f2af92ba322887cccaaf 100644
--- a/core/modules/user/tests/src/Functional/Views/AccessTestBase.php
+++ b/core/modules/user/tests/src/Functional/Views/AccessTestBase.php
@@ -45,8 +45,8 @@ abstract class AccessTestBase extends UserTestBase {
   /**
    * {@inheritdoc}
    */
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp($import_test_views);
+  protected function setUp($import_test_views = TRUE, $modules = []): void {
+    parent::setUp($import_test_views, $modules);
     $this->drupalPlaceBlock('system_breadcrumb_block');
 
     $this->enableViewsTestModule();
diff --git a/core/modules/user/tests/src/Functional/Views/FilterPermissionUiTest.php b/core/modules/user/tests/src/Functional/Views/FilterPermissionUiTest.php
index e0d0769722842467e50c388b22dd5ccc3e862fca..9a02687c52654639dde235a30d9dd40d66a90409 100644
--- a/core/modules/user/tests/src/Functional/Views/FilterPermissionUiTest.php
+++ b/core/modules/user/tests/src/Functional/Views/FilterPermissionUiTest.php
@@ -3,7 +3,6 @@
 namespace Drupal\Tests\user\Functional\Views;
 
 use Drupal\Tests\views\Functional\ViewTestBase;
-use Drupal\views\Tests\ViewTestData;
 
 /**
  * Tests the permission field handler ui.
@@ -32,10 +31,9 @@ class FilterPermissionUiTest extends ViewTestBase {
    */
   protected $defaultTheme = 'stark';
 
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp($import_test_views);
+  protected function setUp($import_test_views = TRUE, $modules = ['user_test_views']): void {
+    parent::setUp($import_test_views, $modules);
 
-    ViewTestData::createTestViews(static::class, ['user_test_views']);
     $this->enableViewsTestModule();
   }
 
diff --git a/core/modules/user/tests/src/Functional/Views/HandlerFilterUserNameTest.php b/core/modules/user/tests/src/Functional/Views/HandlerFilterUserNameTest.php
index dde9328d752b843b0beea61b7f50ccc20f0b8990..ab365cde59c5195ad1bf2862548420eb6e65d31b 100644
--- a/core/modules/user/tests/src/Functional/Views/HandlerFilterUserNameTest.php
+++ b/core/modules/user/tests/src/Functional/Views/HandlerFilterUserNameTest.php
@@ -4,7 +4,6 @@
 
 use Drupal\views\Views;
 use Drupal\Tests\views\Functional\ViewTestBase;
-use Drupal\views\Tests\ViewTestData;
 
 /**
  * Tests the handler of the user: name filter.
@@ -56,10 +55,8 @@ class HandlerFilterUserNameTest extends ViewTestBase {
     'uid' => 'uid',
   ];
 
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp($import_test_views);
-
-    ViewTestData::createTestViews(static::class, ['user_test_views']);
+  protected function setUp($import_test_views = TRUE, $modules = ['user_test_views']): void {
+    parent::setUp($import_test_views, $modules);
 
     $this->enableViewsTestModule();
 
diff --git a/core/modules/user/tests/src/Functional/Views/UserChangedTest.php b/core/modules/user/tests/src/Functional/Views/UserChangedTest.php
index 5813915b3a32c357c4f3c0d95b5c445c93484e68..ae9ebdd972865410f3800df1954059488f550f2d 100644
--- a/core/modules/user/tests/src/Functional/Views/UserChangedTest.php
+++ b/core/modules/user/tests/src/Functional/Views/UserChangedTest.php
@@ -3,7 +3,6 @@
 namespace Drupal\Tests\user\Functional\Views;
 
 use Drupal\Tests\views\Functional\ViewTestBase;
-use Drupal\views\Tests\ViewTestData;
 
 /**
  * Tests the changed field.
@@ -31,10 +30,8 @@ class UserChangedTest extends ViewTestBase {
    */
   public static $testViews = ['test_user_changed'];
 
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp($import_test_views);
-
-    ViewTestData::createTestViews(static::class, ['user_test_views']);
+  protected function setUp($import_test_views = TRUE, $modules = ['user_test_views']): void {
+    parent::setUp($import_test_views, $modules);
 
     $this->enableViewsTestModule();
   }
diff --git a/core/modules/user/tests/src/Functional/Views/UserTestBase.php b/core/modules/user/tests/src/Functional/Views/UserTestBase.php
index efc2a8ab1392524ae5e1df970bb144be2f622e3d..3b3a8a90085b3d8b73a7133249548e9d261eb71a 100644
--- a/core/modules/user/tests/src/Functional/Views/UserTestBase.php
+++ b/core/modules/user/tests/src/Functional/Views/UserTestBase.php
@@ -3,7 +3,6 @@
 namespace Drupal\Tests\user\Functional\Views;
 
 use Drupal\Tests\views\Functional\ViewTestBase;
-use Drupal\views\Tests\ViewTestData;
 use Drupal\user\Entity\User;
 
 /**
@@ -32,10 +31,8 @@ abstract class UserTestBase extends ViewTestBase {
    */
   protected $nodes = [];
 
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp($import_test_views);
-
-    ViewTestData::createTestViews(static::class, ['user_test_views']);
+  protected function setUp($import_test_views = TRUE, $modules = ['user_test_views']): void {
+    parent::setUp($import_test_views, $modules);
 
     $this->users[] = $this->drupalCreateUser();
     $this->users[] = User::load(1);
diff --git a/core/modules/views/tests/src/Functional/DefaultViewsTest.php b/core/modules/views/tests/src/Functional/DefaultViewsTest.php
index d2bae2d52483b02a3f7802cc9d4381d8ed744ae4..8a623e3e35d79b5bebb011c7e552d64d61ef4cc6 100644
--- a/core/modules/views/tests/src/Functional/DefaultViewsTest.php
+++ b/core/modules/views/tests/src/Functional/DefaultViewsTest.php
@@ -56,8 +56,8 @@ class DefaultViewsTest extends ViewTestBase {
     'glossary' => ['all'],
   ];
 
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp($import_test_views);
+  protected function setUp($import_test_views = TRUE, $modules = []): void {
+    parent::setUp($import_test_views, $modules);
 
     $this->drupalPlaceBlock('page_title_block');
 
diff --git a/core/modules/views/tests/src/Functional/Entity/BaseFieldAccessTest.php b/core/modules/views/tests/src/Functional/Entity/BaseFieldAccessTest.php
index 43dfdd1741ea61b1815efe73bb8c19b01497421e..fcebefd0a6dedbff99148d537b78be6035e77c62 100644
--- a/core/modules/views/tests/src/Functional/Entity/BaseFieldAccessTest.php
+++ b/core/modules/views/tests/src/Functional/Entity/BaseFieldAccessTest.php
@@ -4,7 +4,6 @@
 
 use Drupal\entity_test\Entity\EntityTest;
 use Drupal\Tests\views\Functional\ViewTestBase;
-use Drupal\views\Tests\ViewTestData;
 
 /**
  * Tests views base field access.
@@ -37,10 +36,9 @@ class BaseFieldAccessTest extends ViewTestBase {
   /**
    * {@inheritdoc}
    */
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp($import_test_views);
+  protected function setUp($import_test_views = TRUE, $modules = ['views_test_config', 'comment_test_views']): void {
+    parent::setUp($import_test_views, $modules);
 
-    ViewTestData::createTestViews(static::class, ['comment_test_views']);
     \Drupal::state()->set('entity_test.views_data', [
       'entity_test' => [
         'test_text_access' => [
diff --git a/core/modules/views/tests/src/Functional/Entity/FieldEntityTest.php b/core/modules/views/tests/src/Functional/Entity/FieldEntityTest.php
index 09525cd6ca5f14901d2e95f26d65b26fbd1a7b70..5385121ea42fef32baf9a44a7208e1d23e085423 100644
--- a/core/modules/views/tests/src/Functional/Entity/FieldEntityTest.php
+++ b/core/modules/views/tests/src/Functional/Entity/FieldEntityTest.php
@@ -41,13 +41,13 @@ class FieldEntityTest extends ViewTestBase {
   /**
    * {@inheritdoc}
    */
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp(FALSE);
+  protected function setUp($import_test_views = TRUE, $modules = ['views_test_config']): void {
+    parent::setUp(FALSE, $modules);
 
     $this->drupalCreateContentType(['type' => 'page']);
     $this->addDefaultCommentField('node', 'page');
 
-    ViewTestData::createTestViews(static::class, ['views_test_config']);
+    ViewTestData::createTestViews(static::class, $modules);
   }
 
   /**
diff --git a/core/modules/views/tests/src/Functional/Entity/FieldEntityTranslationTest.php b/core/modules/views/tests/src/Functional/Entity/FieldEntityTranslationTest.php
index c6ef369371258c24801726bf83d1435f9baa52bb..4b5250452945dffb9a115af42affa39b66f4d33e 100644
--- a/core/modules/views/tests/src/Functional/Entity/FieldEntityTranslationTest.php
+++ b/core/modules/views/tests/src/Functional/Entity/FieldEntityTranslationTest.php
@@ -39,8 +39,8 @@ class FieldEntityTranslationTest extends ViewTestBase {
   /**
    * {@inheritdoc}
    */
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp($import_test_views);
+  protected function setUp($import_test_views = TRUE, $modules = ['views_test_config']): void {
+    parent::setUp($import_test_views, $modules);
 
     $node_type = NodeType::create([
       'type' => 'article',
diff --git a/core/modules/views/tests/src/Functional/Entity/FieldRenderedEntityTranslationTest.php b/core/modules/views/tests/src/Functional/Entity/FieldRenderedEntityTranslationTest.php
index f6e063f450da31826c4bb90ab54fea6e67702aa0..c62e2fd45ee8cc1564f9acdaa20550f1b0084b73 100644
--- a/core/modules/views/tests/src/Functional/Entity/FieldRenderedEntityTranslationTest.php
+++ b/core/modules/views/tests/src/Functional/Entity/FieldRenderedEntityTranslationTest.php
@@ -43,8 +43,8 @@ class FieldRenderedEntityTranslationTest extends ViewTestBase {
   /**
    * {@inheritdoc}
    */
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp($import_test_views);
+  protected function setUp($import_test_views = TRUE, $modules = ['views_test_config']): void {
+    parent::setUp($import_test_views, $modules);
 
     $this->entityTypeManager = $this->container->get('entity_type.manager');
 
diff --git a/core/modules/views/tests/src/Functional/Handler/AreaTest.php b/core/modules/views/tests/src/Functional/Handler/AreaTest.php
index 4ab118a48e2ebb9b23e98faf642f318902835b34..8c516c76efea230527c038e2188e8966d375fcb9 100644
--- a/core/modules/views/tests/src/Functional/Handler/AreaTest.php
+++ b/core/modules/views/tests/src/Functional/Handler/AreaTest.php
@@ -34,8 +34,8 @@ class AreaTest extends ViewTestBase {
    */
   protected $defaultTheme = 'stark';
 
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp($import_test_views);
+  protected function setUp($import_test_views = TRUE, $modules = ['views_test_config']): void {
+    parent::setUp($import_test_views, $modules);
 
     $this->enableViewsTestModule();
   }
diff --git a/core/modules/views/tests/src/Functional/Handler/AreaTitleWebTest.php b/core/modules/views/tests/src/Functional/Handler/AreaTitleWebTest.php
index 1f21a8ecd12304d2451827cebf42a72417a7661a..8f00844a47d7be9a282dea27f80aadabe22a9fe9 100644
--- a/core/modules/views/tests/src/Functional/Handler/AreaTitleWebTest.php
+++ b/core/modules/views/tests/src/Functional/Handler/AreaTitleWebTest.php
@@ -28,8 +28,8 @@ class AreaTitleWebTest extends ViewTestBase {
   /**
    * {@inheritdoc}
    */
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp($import_test_views);
+  protected function setUp($import_test_views = TRUE, $modules = ['views_test_config']): void {
+    parent::setUp($import_test_views, $modules);
 
     $this->enableViewsTestModule();
   }
diff --git a/core/modules/views/tests/src/Functional/Handler/FieldDropButtonTest.php b/core/modules/views/tests/src/Functional/Handler/FieldDropButtonTest.php
index 98c552c7fa553440831dbf55e2549f649e725a7a..f7987ff19599b494c45cd0e235bc1581e850da72 100644
--- a/core/modules/views/tests/src/Functional/Handler/FieldDropButtonTest.php
+++ b/core/modules/views/tests/src/Functional/Handler/FieldDropButtonTest.php
@@ -34,8 +34,8 @@ class FieldDropButtonTest extends ViewTestBase {
   /**
    * {@inheritdoc}
    */
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp($import_test_views);
+  protected function setUp($import_test_views = TRUE, $modules = ['views_test_config']): void {
+    parent::setUp($import_test_views, $modules);
 
     $admin_user = $this->drupalCreateUser([
       'access content overview',
diff --git a/core/modules/views/tests/src/Functional/Handler/FieldEntityLinkBaseTest.php b/core/modules/views/tests/src/Functional/Handler/FieldEntityLinkBaseTest.php
index cf1504561d983e27c265b0cc30873ffd66c95516..433f4aee6fd68ec1b2dbe73bacd2e351b5fa2fd5 100644
--- a/core/modules/views/tests/src/Functional/Handler/FieldEntityLinkBaseTest.php
+++ b/core/modules/views/tests/src/Functional/Handler/FieldEntityLinkBaseTest.php
@@ -33,8 +33,8 @@ class FieldEntityLinkBaseTest extends ViewTestBase {
   /**
    * {@inheritdoc}
    */
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp($import_test_views);
+  protected function setUp($import_test_views = TRUE, $modules = ['views_test_config']): void {
+    parent::setUp($import_test_views, $modules);
 
     $this->drupalCreateContentType(['type' => 'article', 'name' => 'Article']);
 
diff --git a/core/modules/views/tests/src/Functional/Handler/FieldEntityOperationsTest.php b/core/modules/views/tests/src/Functional/Handler/FieldEntityOperationsTest.php
index 8741e81e4f818bd06ef8ceb8140e64fb4f8c5459..10307b2b1e5a27b69e8452b632a915484ce30399 100644
--- a/core/modules/views/tests/src/Functional/Handler/FieldEntityOperationsTest.php
+++ b/core/modules/views/tests/src/Functional/Handler/FieldEntityOperationsTest.php
@@ -33,8 +33,8 @@ class FieldEntityOperationsTest extends ViewTestBase {
    */
   protected $defaultTheme = 'stark';
 
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp($import_test_views);
+  protected function setUp($import_test_views = TRUE, $modules = ['views_test_config']): void {
+    parent::setUp($import_test_views, $modules);
 
     // Create Article content type.
     $this->drupalCreateContentType(['type' => 'article', 'name' => 'Article']);
diff --git a/core/modules/views/tests/src/Functional/Handler/FieldGroupRowsWebTest.php b/core/modules/views/tests/src/Functional/Handler/FieldGroupRowsWebTest.php
index 1afa59c94600ddf7f8bcd7effe69d0cd6a1d9d1d..f57957953fca1ff6182d65af47f1ae94822a24c9 100644
--- a/core/modules/views/tests/src/Functional/Handler/FieldGroupRowsWebTest.php
+++ b/core/modules/views/tests/src/Functional/Handler/FieldGroupRowsWebTest.php
@@ -64,8 +64,8 @@ class FieldGroupRowsWebTest extends ViewTestBase {
   /**
    * {@inheritdoc}
    */
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp($import_test_views);
+  protected function setUp($import_test_views = TRUE, $modules = ['views_test_config']): void {
+    parent::setUp($import_test_views, $modules);
 
     // Create content type with unlimited text field.
     $this->nodeType = $this->drupalCreateContentType(['type' => 'page', 'name' => 'Basic page']);
diff --git a/core/modules/views/tests/src/Functional/Handler/FieldWebTest.php b/core/modules/views/tests/src/Functional/Handler/FieldWebTest.php
index 1526897664f292d806102d03cfc75bd1899fca5b..17c7ee0f3fb1bfef779016391a8553772225e896 100644
--- a/core/modules/views/tests/src/Functional/Handler/FieldWebTest.php
+++ b/core/modules/views/tests/src/Functional/Handler/FieldWebTest.php
@@ -48,8 +48,8 @@ class FieldWebTest extends ViewTestBase {
     'views_test_data_name' => 'name',
   ];
 
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp($import_test_views);
+  protected function setUp($import_test_views = TRUE, $modules = ['views_test_config']): void {
+    parent::setUp($import_test_views, $modules);
 
     $this->enableViewsTestModule();
   }
diff --git a/core/modules/views/tests/src/Functional/Handler/FilterDateTest.php b/core/modules/views/tests/src/Functional/Handler/FilterDateTest.php
index 48691019178809b57a1eb2b4fcdb44263471e4f1..03774b2266600757c82012c7a07cca3b99e943bb 100644
--- a/core/modules/views/tests/src/Functional/Handler/FilterDateTest.php
+++ b/core/modules/views/tests/src/Functional/Handler/FilterDateTest.php
@@ -43,8 +43,8 @@ class FilterDateTest extends ViewTestBase {
    */
   public $dateFormatter;
 
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp($import_test_views);
+  protected function setUp($import_test_views = TRUE, $modules = ['views_test_config']): void {
+    parent::setUp($import_test_views, $modules);
     $this->dateFormatter = $this->container->get('date.formatter');
 
     // Add a date field so we can test datetime handling.
diff --git a/core/modules/views/tests/src/Functional/Handler/HandlerAllTest.php b/core/modules/views/tests/src/Functional/Handler/HandlerAllTest.php
index 1094ddbba236368f5c3da23a4d836261a0da49ad..52925792a8820a07b6ad960392f39ef39c6f0e35 100644
--- a/core/modules/views/tests/src/Functional/Handler/HandlerAllTest.php
+++ b/core/modules/views/tests/src/Functional/Handler/HandlerAllTest.php
@@ -25,7 +25,6 @@ class HandlerAllTest extends ViewTestBase {
    * @var array
    */
   protected static $modules = [
-    'aggregator',
     'book',
     'block',
     'comment',
diff --git a/core/modules/views/tests/src/Functional/Handler/HandlerTest.php b/core/modules/views/tests/src/Functional/Handler/HandlerTest.php
index dde6c344f9bac5c0a6856c09730ebcc3f3b93f50..9844959396cb069e52f3bb7ac5826e9ef0760818 100644
--- a/core/modules/views/tests/src/Functional/Handler/HandlerTest.php
+++ b/core/modules/views/tests/src/Functional/Handler/HandlerTest.php
@@ -39,8 +39,8 @@ class HandlerTest extends ViewTestBase {
    */
   protected $defaultTheme = 'stark';
 
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp($import_test_views);
+  protected function setUp($import_test_views = TRUE, $modules = ['views_test_config']): void {
+    parent::setUp($import_test_views, $modules);
     $this->drupalCreateContentType(['type' => 'page']);
     $this->addDefaultCommentField('node', 'page');
     $this->enableViewsTestModule();
diff --git a/core/modules/views/tests/src/Functional/Plugin/AccessTest.php b/core/modules/views/tests/src/Functional/Plugin/AccessTest.php
index 839c1d324ca385f03c72219615df2f1e2b958702..80630bfc5535eab77b1e96ecafdfa1b2002b74f5 100644
--- a/core/modules/views/tests/src/Functional/Plugin/AccessTest.php
+++ b/core/modules/views/tests/src/Functional/Plugin/AccessTest.php
@@ -48,8 +48,8 @@ class AccessTest extends ViewTestBase {
    */
   protected $normalUser;
 
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp($import_test_views);
+  protected function setUp($import_test_views = TRUE, $modules = ['views_test_config']): void {
+    parent::setUp($import_test_views, $modules);
 
     $this->enableViewsTestModule();
 
diff --git a/core/modules/views/tests/src/Functional/Plugin/ArgumentDefaultTest.php b/core/modules/views/tests/src/Functional/Plugin/ArgumentDefaultTest.php
index 2ccbb47daeb358e396f05e3349cc811be8862d8d..e87372c7ba0ce99e382348ccddfdafc0b24586fe 100644
--- a/core/modules/views/tests/src/Functional/Plugin/ArgumentDefaultTest.php
+++ b/core/modules/views/tests/src/Functional/Plugin/ArgumentDefaultTest.php
@@ -42,8 +42,8 @@ class ArgumentDefaultTest extends ViewTestBase {
    */
   protected static $modules = ['node', 'views_ui', 'block'];
 
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp($import_test_views);
+  protected function setUp($import_test_views = TRUE, $modules = ['views_test_config']): void {
+    parent::setUp($import_test_views, $modules);
 
     $this->enableViewsTestModule();
   }
diff --git a/core/modules/views/tests/src/Functional/Plugin/CacheTagTest.php b/core/modules/views/tests/src/Functional/Plugin/CacheTagTest.php
index 205da5d4343e364440864cc378796d90147dc46d..8fb8ab3c42ef7dae31eaff3a09720723a1e4d8aa 100644
--- a/core/modules/views/tests/src/Functional/Plugin/CacheTagTest.php
+++ b/core/modules/views/tests/src/Functional/Plugin/CacheTagTest.php
@@ -76,8 +76,8 @@ class CacheTagTest extends ViewTestBase {
    */
   protected $user;
 
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp($import_test_views);
+  protected function setUp($import_test_views = TRUE, $modules = ['views_test_config']): void {
+    parent::setUp($import_test_views, $modules);
 
     $this->drupalCreateContentType(['type' => 'page', 'name' => 'Basic page']);
     $this->drupalCreateContentType(['type' => 'article', 'name' => 'Article']);
diff --git a/core/modules/views/tests/src/Functional/Plugin/CacheWebTest.php b/core/modules/views/tests/src/Functional/Plugin/CacheWebTest.php
index 174cac9c614d038d7471dfb7c231713a199baa73..5022a7aaaae27bf520b84ac7e100b0591a814889 100644
--- a/core/modules/views/tests/src/Functional/Plugin/CacheWebTest.php
+++ b/core/modules/views/tests/src/Functional/Plugin/CacheWebTest.php
@@ -39,8 +39,8 @@ class CacheWebTest extends ViewTestBase {
   /**
    * {@inheritdoc}
    */
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp($import_test_views);
+  protected function setUp($import_test_views = TRUE, $modules = ['views_test_config']): void {
+    parent::setUp($import_test_views, $modules);
 
     $this->enableViewsTestModule();
   }
diff --git a/core/modules/views/tests/src/Functional/Plugin/ContextualFiltersBlockContextTest.php b/core/modules/views/tests/src/Functional/Plugin/ContextualFiltersBlockContextTest.php
index c6da4e0af7c0e4feefc89baef636dcbea74694cd..d71c85509c7cfde6ec10f85e1a14bc4fd163e96c 100644
--- a/core/modules/views/tests/src/Functional/Plugin/ContextualFiltersBlockContextTest.php
+++ b/core/modules/views/tests/src/Functional/Plugin/ContextualFiltersBlockContextTest.php
@@ -57,8 +57,8 @@ class ContextualFiltersBlockContextTest extends ViewTestBase {
   /**
    * {@inheritdoc}
    */
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp($import_test_views);
+  protected function setUp($import_test_views = TRUE, $modules = []): void {
+    parent::setUp($import_test_views, $modules);
 
     ViewTestData::createTestViews(static::class, ['block_test_views']);
     $this->enableViewsTestModule();
diff --git a/core/modules/views/tests/src/Functional/Plugin/ContextualFiltersStringTest.php b/core/modules/views/tests/src/Functional/Plugin/ContextualFiltersStringTest.php
index 94849beda2af232990963bcc76415cc49fa920d4..2cdff6fff0c64aff04ece4e79499e4b76a55268a 100644
--- a/core/modules/views/tests/src/Functional/Plugin/ContextualFiltersStringTest.php
+++ b/core/modules/views/tests/src/Functional/Plugin/ContextualFiltersStringTest.php
@@ -50,8 +50,8 @@ class ContextualFiltersStringTest extends ViewTestBase {
   /**
    * {@inheritdoc}
    */
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp($import_test_views);
+  protected function setUp($import_test_views = TRUE, $modules = ['views_test_config']): void {
+    parent::setUp($import_test_views, $modules);
 
     // Create Roles and users.
     $this->role1 = $this->drupalCreateRole(['access content'], 'editor', 'Editor');
diff --git a/core/modules/views/tests/src/Functional/Plugin/DisabledDisplayTest.php b/core/modules/views/tests/src/Functional/Plugin/DisabledDisplayTest.php
index c80bd97323e74796056283146a0462459ab9f7a7..6d29f37f613b1c78f493236b54483734d468659b 100644
--- a/core/modules/views/tests/src/Functional/Plugin/DisabledDisplayTest.php
+++ b/core/modules/views/tests/src/Functional/Plugin/DisabledDisplayTest.php
@@ -31,8 +31,8 @@ class DisabledDisplayTest extends ViewTestBase {
    */
   protected $defaultTheme = 'classy';
 
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp($import_test_views);
+  protected function setUp($import_test_views = TRUE, $modules = ['views_test_config']): void {
+    parent::setUp($import_test_views, $modules);
 
     $this->enableViewsTestModule();
 
diff --git a/core/modules/views/tests/src/Functional/Plugin/DisplayAttachmentTest.php b/core/modules/views/tests/src/Functional/Plugin/DisplayAttachmentTest.php
index 42a6c6299ddbbfa14dfdbbf1416a8e67c8beb163..3b02dbf76c6e9c6e8be4ae6902c9d6376437b363 100644
--- a/core/modules/views/tests/src/Functional/Plugin/DisplayAttachmentTest.php
+++ b/core/modules/views/tests/src/Functional/Plugin/DisplayAttachmentTest.php
@@ -32,8 +32,8 @@ class DisplayAttachmentTest extends ViewTestBase {
    */
   protected $defaultTheme = 'classy';
 
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp($import_test_views);
+  protected function setUp($import_test_views = TRUE, $modules = ['views_test_config']): void {
+    parent::setUp($import_test_views, $modules);
 
     $this->enableViewsTestModule();
 
diff --git a/core/modules/views/tests/src/Functional/Plugin/DisplayEntityReferenceTest.php b/core/modules/views/tests/src/Functional/Plugin/DisplayEntityReferenceTest.php
index 3cd787fc10ec714a837314364701d118c7359429..ebacfc5c279442723b1b1853ad3addc760fa093a 100644
--- a/core/modules/views/tests/src/Functional/Plugin/DisplayEntityReferenceTest.php
+++ b/core/modules/views/tests/src/Functional/Plugin/DisplayEntityReferenceTest.php
@@ -70,8 +70,8 @@ class DisplayEntityReferenceTest extends ViewTestBase {
   /**
    * {@inheritdoc}
    */
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp($import_test_views);
+  protected function setUp($import_test_views = TRUE, $modules = ['views_test_config']): void {
+    parent::setUp($import_test_views, $modules);
 
     $this->drupalLogin($this->drupalCreateUser(['administer views']));
 
diff --git a/core/modules/views/tests/src/Functional/Plugin/DisplayFeedTest.php b/core/modules/views/tests/src/Functional/Plugin/DisplayFeedTest.php
index 21c3ad29be7a6b7b86fe20429db90ed098911c75..4665899d97b6ead10ee0a0dd738e889b9239fd6d 100644
--- a/core/modules/views/tests/src/Functional/Plugin/DisplayFeedTest.php
+++ b/core/modules/views/tests/src/Functional/Plugin/DisplayFeedTest.php
@@ -36,8 +36,8 @@ class DisplayFeedTest extends ViewTestBase {
    */
   protected $defaultTheme = 'classy';
 
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp($import_test_views);
+  protected function setUp($import_test_views = TRUE, $modules = ['views_test_config']): void {
+    parent::setUp($import_test_views, $modules);
 
     $this->enableViewsTestModule();
 
diff --git a/core/modules/views/tests/src/Functional/Plugin/DisplayFeedTranslationTest.php b/core/modules/views/tests/src/Functional/Plugin/DisplayFeedTranslationTest.php
index ba9998aa80d643d84d159380ad9887e17c43a003..d5ceed177d94b33aeaad2f8d6d518a71cd677e46 100644
--- a/core/modules/views/tests/src/Functional/Plugin/DisplayFeedTranslationTest.php
+++ b/core/modules/views/tests/src/Functional/Plugin/DisplayFeedTranslationTest.php
@@ -48,8 +48,8 @@ class DisplayFeedTranslationTest extends ViewTestBase {
    */
   protected $langcodes;
 
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp($import_test_views);
+  protected function setUp($import_test_views = TRUE, $modules = ['views_test_config']): void {
+    parent::setUp($import_test_views, $modules);
 
     $this->enableViewsTestModule();
 
diff --git a/core/modules/views/tests/src/Functional/Plugin/DisplayPageWebTest.php b/core/modules/views/tests/src/Functional/Plugin/DisplayPageWebTest.php
index 6fc75547dee1856efa6f22304d238bb5f25c01a3..c0f43960a853690651335246db4669b5ba0d0acc 100644
--- a/core/modules/views/tests/src/Functional/Plugin/DisplayPageWebTest.php
+++ b/core/modules/views/tests/src/Functional/Plugin/DisplayPageWebTest.php
@@ -37,8 +37,8 @@ class DisplayPageWebTest extends ViewTestBase {
   /**
    * {@inheritdoc}
    */
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp($import_test_views);
+  protected function setUp($import_test_views = TRUE, $modules = ['views_test_config']): void {
+    parent::setUp($import_test_views, $modules);
 
     $this->enableViewsTestModule();
     $this->drupalPlaceBlock('local_tasks_block');
diff --git a/core/modules/views/tests/src/Functional/Plugin/DisplayTest.php b/core/modules/views/tests/src/Functional/Plugin/DisplayTest.php
index 5769c697d1fdcaddfe3cc9e349b84d3bc0d052d8..fa4637ab909ae87fd356bd7f384b328587c5e30d 100644
--- a/core/modules/views/tests/src/Functional/Plugin/DisplayTest.php
+++ b/core/modules/views/tests/src/Functional/Plugin/DisplayTest.php
@@ -33,8 +33,8 @@ class DisplayTest extends ViewTestBase {
    */
   protected $defaultTheme = 'stark';
 
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp();
+  protected function setUp($import_test_views = TRUE, $modules = ['views_test_config']): void {
+    parent::setUp($import_test_views, $modules);
 
     $this->enableViewsTestModule();
 
diff --git a/core/modules/views/tests/src/Functional/Plugin/ExposedFormCheckboxesTest.php b/core/modules/views/tests/src/Functional/Plugin/ExposedFormCheckboxesTest.php
index fb626b4ba34668ee3c3ff15e748322064ba4edb5..e4b1b5417d06ae2ff40764b25ad7ddc348f5c61d 100644
--- a/core/modules/views/tests/src/Functional/Plugin/ExposedFormCheckboxesTest.php
+++ b/core/modules/views/tests/src/Functional/Plugin/ExposedFormCheckboxesTest.php
@@ -51,8 +51,8 @@ class ExposedFormCheckboxesTest extends ViewTestBase {
   /**
    * {@inheritdoc}
    */
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp(FALSE);
+  protected function setUp($import_test_views = TRUE, $modules = []): void {
+    parent::setUp(FALSE, $modules);
 
     // Create a vocabulary and entity reference field so we can test the "is all
     // of" filter operator. Must be done ahead of the view import so the
diff --git a/core/modules/views/tests/src/Functional/Plugin/ExposedFormTest.php b/core/modules/views/tests/src/Functional/Plugin/ExposedFormTest.php
index ea733a5b4a30e9a11300a20e311c8393798c63ae..935d72b07817ccb453dee9fe18de3be722bea704 100644
--- a/core/modules/views/tests/src/Functional/Plugin/ExposedFormTest.php
+++ b/core/modules/views/tests/src/Functional/Plugin/ExposedFormTest.php
@@ -45,8 +45,8 @@ class ExposedFormTest extends ViewTestBase {
    */
   protected $nodes = [];
 
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp($import_test_views);
+  protected function setUp($import_test_views = TRUE, $modules = ['views_test_config']): void {
+    parent::setUp($import_test_views, $modules);
 
     $this->enableViewsTestModule();
 
diff --git a/core/modules/views/tests/src/Functional/Plugin/FilterTest.php b/core/modules/views/tests/src/Functional/Plugin/FilterTest.php
index 8283e14f5af7e4a66203f38dec52bb55c1ff2ae1..9a0edeaa2d5d320581948ddea7864461f3726958 100644
--- a/core/modules/views/tests/src/Functional/Plugin/FilterTest.php
+++ b/core/modules/views/tests/src/Functional/Plugin/FilterTest.php
@@ -34,8 +34,8 @@ class FilterTest extends ViewTestBase {
    */
   protected $defaultTheme = 'stark';
 
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp($import_test_views);
+  protected function setUp($import_test_views = TRUE, $modules = ['views_test_config']): void {
+    parent::setUp($import_test_views, $modules);
 
     $this->enableViewsTestModule();
 
diff --git a/core/modules/views/tests/src/Functional/Plugin/MenuLinkTest.php b/core/modules/views/tests/src/Functional/Plugin/MenuLinkTest.php
index d41fb12882e17dce64f021f4c70eed43eeda2139..4396b88f5bde760989aadf06b6091799d32dc663 100644
--- a/core/modules/views/tests/src/Functional/Plugin/MenuLinkTest.php
+++ b/core/modules/views/tests/src/Functional/Plugin/MenuLinkTest.php
@@ -48,8 +48,8 @@ class MenuLinkTest extends ViewTestBase {
   /**
    * {@inheritdoc}
    */
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp($import_test_views);
+  protected function setUp($import_test_views = TRUE, $modules = ['views_test_config']): void {
+    parent::setUp($import_test_views, $modules);
 
     $this->enableViewsTestModule();
 
diff --git a/core/modules/views/tests/src/Functional/Plugin/MiniPagerTest.php b/core/modules/views/tests/src/Functional/Plugin/MiniPagerTest.php
index 7c6c54c85f6a81c3c694626deff135b08418744e..05a6aac213c0b9bf93a7b07194fadde54099c284 100644
--- a/core/modules/views/tests/src/Functional/Plugin/MiniPagerTest.php
+++ b/core/modules/views/tests/src/Functional/Plugin/MiniPagerTest.php
@@ -39,8 +39,8 @@ class MiniPagerTest extends ViewTestBase {
    */
   protected $nodes;
 
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp($import_test_views);
+  protected function setUp($import_test_views = TRUE, $modules = ['views_test_config']): void {
+    parent::setUp($import_test_views, $modules);
 
     $this->drupalCreateContentType(['type' => 'page']);
     // Create a bunch of test nodes.
diff --git a/core/modules/views/tests/src/Functional/Plugin/MonthDatePluginTest.php b/core/modules/views/tests/src/Functional/Plugin/MonthDatePluginTest.php
index 031a34526658c276d6f10edd536aa3f4be7bcb08..b9281a829e037600c964405a345877655af69361 100644
--- a/core/modules/views/tests/src/Functional/Plugin/MonthDatePluginTest.php
+++ b/core/modules/views/tests/src/Functional/Plugin/MonthDatePluginTest.php
@@ -48,8 +48,8 @@ class MonthDatePluginTest extends ViewTestBase {
   /**
    * {@inheritdoc}
    */
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp($import_test_views);
+  protected function setUp($import_test_views = TRUE, $modules = ['views_test_config']): void {
+    parent::setUp($import_test_views, $modules);
     $utc = new \DateTimeZone('UTC');
     $format = 'Y-m-d h:i:s';
     $this->node1 = $this->drupalCreateNode([
diff --git a/core/modules/views/tests/src/Functional/Plugin/NumericFormatPluralTest.php b/core/modules/views/tests/src/Functional/Plugin/NumericFormatPluralTest.php
index 5785730c22d4dfb8eab94511bf5b30413b810b3f..d9e4099f0ae99d232bb2b8928433309ef764e6a2 100644
--- a/core/modules/views/tests/src/Functional/Plugin/NumericFormatPluralTest.php
+++ b/core/modules/views/tests/src/Functional/Plugin/NumericFormatPluralTest.php
@@ -33,8 +33,8 @@ class NumericFormatPluralTest extends ViewTestBase {
    */
   public static $testViews = ['numeric_test'];
 
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp($import_test_views);
+  protected function setUp($import_test_views = TRUE, $modules = ['views_test_config']): void {
+    parent::setUp($import_test_views, $modules);
 
     $web_user = $this->drupalCreateUser([
       'administer views',
diff --git a/core/modules/views/tests/src/Functional/Plugin/StyleSummaryTest.php b/core/modules/views/tests/src/Functional/Plugin/StyleSummaryTest.php
index 902f985d2ee0ffd05893e435787f0bce5c765c3c..43bf66a4a504509f1f0f36283d3e8f124b768f1b 100644
--- a/core/modules/views/tests/src/Functional/Plugin/StyleSummaryTest.php
+++ b/core/modules/views/tests/src/Functional/Plugin/StyleSummaryTest.php
@@ -35,8 +35,8 @@ class StyleSummaryTest extends ViewTestBase {
   /**
    * {@inheritdoc}
    */
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp($import_test_views);
+  protected function setUp($import_test_views = TRUE, $modules = ['views_test_config']): void {
+    parent::setUp($import_test_views, $modules);
 
     // Create 5 entities per bundle, to allow a summary overview per bundle.
     for ($i = 0; $i < 5; $i++) {
diff --git a/core/modules/views/tests/src/Functional/Plugin/StyleTableTest.php b/core/modules/views/tests/src/Functional/Plugin/StyleTableTest.php
index 38c7a08dde5f45d881871fa93f905fed41330c20..08a60a87c3370393ff6eb71acbd4b3e1c8c539b6 100644
--- a/core/modules/views/tests/src/Functional/Plugin/StyleTableTest.php
+++ b/core/modules/views/tests/src/Functional/Plugin/StyleTableTest.php
@@ -29,8 +29,8 @@ class StyleTableTest extends ViewTestBase {
   /**
    * {@inheritdoc}
    */
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp($import_test_views);
+  protected function setUp($import_test_views = TRUE, $modules = ['views_test_config']): void {
+    parent::setUp($import_test_views, $modules);
 
     $this->enableViewsTestModule();
   }
diff --git a/core/modules/views/tests/src/Functional/Plugin/ViewsBulkTest.php b/core/modules/views/tests/src/Functional/Plugin/ViewsBulkTest.php
index 9550cfdceb8946d3f04a5d7bcca7233813cb018c..cd93f42a40ceef755842c5af2df4600cf91443fd 100644
--- a/core/modules/views/tests/src/Functional/Plugin/ViewsBulkTest.php
+++ b/core/modules/views/tests/src/Functional/Plugin/ViewsBulkTest.php
@@ -30,8 +30,8 @@ class ViewsBulkTest extends ViewTestBase {
    */
   protected $defaultTheme = 'stark';
 
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp($import_test_views);
+  protected function setUp($import_test_views = TRUE, $modules = ['views_test_config']): void {
+    parent::setUp($import_test_views, $modules);
 
     $this->drupalCreateContentType(['type' => 'page']);
     $this->admin_user = $this->createUser(['bypass node access', 'administer nodes', 'access content overview']);
diff --git a/core/modules/views/tests/src/Functional/RenderCacheWebTest.php b/core/modules/views/tests/src/Functional/RenderCacheWebTest.php
index a14ac2558eb9ec956f989505d467b3e12c544050..2d15924e75d3173d877df13679022a3fa9f5038f 100644
--- a/core/modules/views/tests/src/Functional/RenderCacheWebTest.php
+++ b/core/modules/views/tests/src/Functional/RenderCacheWebTest.php
@@ -36,8 +36,8 @@ class RenderCacheWebTest extends ViewTestBase {
   /**
    * {@inheritdoc}
    */
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp($import_test_views);
+  protected function setUp($import_test_views = TRUE, $modules = ['views_test_config']): void {
+    parent::setUp($import_test_views, $modules);
 
     $node_type = $this->drupalCreateContentType(['type' => 'test_type']);
     $node = Node::create([
diff --git a/core/modules/views/tests/src/Functional/TaxonomyGlossaryTest.php b/core/modules/views/tests/src/Functional/TaxonomyGlossaryTest.php
index c14349ff2331f14f3f54598bd6766b3ed33a267d..f883bb0999a30d1a8e369a6e304c8ad349cb6e50 100644
--- a/core/modules/views/tests/src/Functional/TaxonomyGlossaryTest.php
+++ b/core/modules/views/tests/src/Functional/TaxonomyGlossaryTest.php
@@ -39,8 +39,8 @@ class TaxonomyGlossaryTest extends ViewTestBase {
    */
   protected $taxonomyTerms;
 
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp($import_test_views);
+  protected function setUp($import_test_views = TRUE, $modules = ['views_test_config']): void {
+    parent::setUp($import_test_views, $modules);
 
     $this->enableViewsTestModule();
 
diff --git a/core/modules/views/tests/src/Functional/ViewAjaxTest.php b/core/modules/views/tests/src/Functional/ViewAjaxTest.php
index 236cefa63af522e5fff7228a9f988ad0ff391cf1..bb525f53fe4c4c3b12e3cb2ccdbcd7b42e7c0a26 100644
--- a/core/modules/views/tests/src/Functional/ViewAjaxTest.php
+++ b/core/modules/views/tests/src/Functional/ViewAjaxTest.php
@@ -23,8 +23,8 @@ class ViewAjaxTest extends ViewTestBase {
    */
   protected $defaultTheme = 'stark';
 
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp($import_test_views);
+  protected function setUp($import_test_views = TRUE, $modules = ['views_test_config']): void {
+    parent::setUp($import_test_views, $modules);
 
     $this->enableViewsTestModule();
   }
diff --git a/core/modules/views/tests/src/Functional/ViewElementTest.php b/core/modules/views/tests/src/Functional/ViewElementTest.php
index fa406c8ceeaf7ddfc90bd6a16fb6015318bb1e15..438927ad4e7a5db6605088d4ece0dc12032c3733 100644
--- a/core/modules/views/tests/src/Functional/ViewElementTest.php
+++ b/core/modules/views/tests/src/Functional/ViewElementTest.php
@@ -26,8 +26,8 @@ class ViewElementTest extends ViewTestBase {
   /**
    * {@inheritdoc}
    */
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp($import_test_views);
+  protected function setUp($import_test_views = TRUE, $modules = ['views_test_config']): void {
+    parent::setUp($import_test_views, $modules);
 
     $this->enableViewsTestModule();
   }
diff --git a/core/modules/views/tests/src/Functional/ViewTestBase.php b/core/modules/views/tests/src/Functional/ViewTestBase.php
index 30889ef254132217a3ea9a47431399566f2e4ad8..ea33d9b48640c6462432d5de224c79e42b4e21a5 100644
--- a/core/modules/views/tests/src/Functional/ViewTestBase.php
+++ b/core/modules/views/tests/src/Functional/ViewTestBase.php
@@ -29,10 +29,10 @@ abstract class ViewTestBase extends BrowserTestBase {
    */
   protected static $modules = ['views', 'views_test_config'];
 
-  protected function setUp($import_test_views = TRUE): void {
+  protected function setUp($import_test_views = TRUE, $modules = ['views_test_config']): void {
     parent::setUp();
     if ($import_test_views) {
-      ViewTestData::createTestViews(static::class, ['views_test_config']);
+      ViewTestData::createTestViews(static::class, $modules);
     }
   }
 
diff --git a/core/modules/views/tests/src/Functional/ViewTranslationTest.php b/core/modules/views/tests/src/Functional/ViewTranslationTest.php
index 9df3ea7e1d2a145d3b8ae05f8567d3959724286e..b29df6c6c9a786dd7217de1722b009cc896e4aa5 100644
--- a/core/modules/views/tests/src/Functional/ViewTranslationTest.php
+++ b/core/modules/views/tests/src/Functional/ViewTranslationTest.php
@@ -31,8 +31,8 @@ class ViewTranslationTest extends ViewTestBase {
   /**
    * {@inheritdoc}
    */
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp($import_test_views);
+  protected function setUp($import_test_views = TRUE, $modules = ['views_test_config']): void {
+    parent::setUp($import_test_views, $modules);
 
     $this->enableViewsTestModule();
     $this->drupalPlaceBlock('system_breadcrumb_block');
diff --git a/core/modules/views/tests/src/Functional/ViewsEscapingTest.php b/core/modules/views/tests/src/Functional/ViewsEscapingTest.php
index 440292961fbe028ec27ceeeec5d1ce4a00a7ebc0..a016723d7d94e354d1d61acb4b3926a75fad6331 100644
--- a/core/modules/views/tests/src/Functional/ViewsEscapingTest.php
+++ b/core/modules/views/tests/src/Functional/ViewsEscapingTest.php
@@ -35,8 +35,8 @@ class ViewsEscapingTest extends ViewTestBase {
   /**
    * {@inheritdoc}
    */
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp(TRUE);
+  protected function setUp($import_test_views = TRUE, $modules = ['views_test_config']): void {
+    parent::setUp(TRUE, $modules);
 
     $this->enableViewsTestModule();
   }
diff --git a/core/modules/views/tests/src/Functional/ViewsFormMultipleTest.php b/core/modules/views/tests/src/Functional/ViewsFormMultipleTest.php
index 868de09ac6c64e07f325551db4db85944d70f709..1c8c9e81ce3295827904e7b1f854ab0e1a519633 100644
--- a/core/modules/views/tests/src/Functional/ViewsFormMultipleTest.php
+++ b/core/modules/views/tests/src/Functional/ViewsFormMultipleTest.php
@@ -24,8 +24,8 @@ class ViewsFormMultipleTest extends ViewTestBase {
   /**
    * {@inheritdoc}
    */
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp($import_test_views);
+  protected function setUp($import_test_views = TRUE, $modules = ['views_test_config']): void {
+    parent::setUp($import_test_views, $modules);
 
     $this->enableViewsTestModule();
   }
diff --git a/core/modules/views/tests/src/Functional/ViewsNoResultsBehaviorTest.php b/core/modules/views/tests/src/Functional/ViewsNoResultsBehaviorTest.php
index c6833bb88f39d79367842a0156e2e42e7a1eeab9..479cdb233ec3e848beb73ce247fe7f779916a2b9 100644
--- a/core/modules/views/tests/src/Functional/ViewsNoResultsBehaviorTest.php
+++ b/core/modules/views/tests/src/Functional/ViewsNoResultsBehaviorTest.php
@@ -24,8 +24,8 @@ class ViewsNoResultsBehaviorTest extends ViewTestBase {
   /**
    * {@inheritdoc}
    */
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp();
+  protected function setUp($import_test_views = TRUE, $modules = []): void {
+    parent::setUp($import_test_views, $modules);
     $this->enableViewsTestModule();
     $user = $this->createUser([], NULL, TRUE);
     $this->drupalLogin($user);
diff --git a/core/modules/views/tests/src/Functional/ViewsThemeIntegrationTest.php b/core/modules/views/tests/src/Functional/ViewsThemeIntegrationTest.php
index db99f7a6d2752c8c50718a6749ceb29b516abd81..17dc3f78b898839285ab7afff8bbe1561370b616 100644
--- a/core/modules/views/tests/src/Functional/ViewsThemeIntegrationTest.php
+++ b/core/modules/views/tests/src/Functional/ViewsThemeIntegrationTest.php
@@ -38,8 +38,8 @@ class ViewsThemeIntegrationTest extends ViewTestBase {
   /**
    * {@inheritdoc}
    */
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp($import_test_views);
+  protected function setUp($import_test_views = TRUE, $modules = ['views_test_config']): void {
+    parent::setUp($import_test_views, $modules);
 
     $this->enableViewsTestModule();
   }
diff --git a/core/modules/views/tests/src/Functional/Wizard/BasicTest.php b/core/modules/views/tests/src/Functional/Wizard/BasicTest.php
index 6486e6c4e07d1c6ff5ad451a5fdf20aff7b23234..0909299bf6cb9f7acf274a11059ace2ecb1ecb39 100644
--- a/core/modules/views/tests/src/Functional/Wizard/BasicTest.php
+++ b/core/modules/views/tests/src/Functional/Wizard/BasicTest.php
@@ -18,8 +18,8 @@ class BasicTest extends WizardTestBase {
    */
   protected $defaultTheme = 'stark';
 
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp($import_test_views);
+  protected function setUp($import_test_views = TRUE, $modules = []): void {
+    parent::setUp($import_test_views, $modules);
 
     $this->drupalPlaceBlock('page_title_block');
   }
diff --git a/core/modules/views/tests/src/Functional/Wizard/ItemsPerPageTest.php b/core/modules/views/tests/src/Functional/Wizard/ItemsPerPageTest.php
index 0a17137271daa7018aa8f0f2599a6a34410936c3..7bddee93d9e3d7fd1ab96cec1fc7f3fd30a2b06f 100644
--- a/core/modules/views/tests/src/Functional/Wizard/ItemsPerPageTest.php
+++ b/core/modules/views/tests/src/Functional/Wizard/ItemsPerPageTest.php
@@ -15,8 +15,8 @@ class ItemsPerPageTest extends WizardTestBase {
    */
   protected $defaultTheme = 'stark';
 
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp($import_test_views);
+  protected function setUp($import_test_views = TRUE, $modules = []): void {
+    parent::setUp($import_test_views, $modules);
 
     $this->drupalPlaceBlock('page_title_block');
   }
diff --git a/core/modules/views/tests/src/Functional/Wizard/SortingTest.php b/core/modules/views/tests/src/Functional/Wizard/SortingTest.php
index b52b3f73aa6a4c9e4b447e66a143fea73bc5a84f..51d67a988aed1eb9ab5f4b613db702aaa774770c 100644
--- a/core/modules/views/tests/src/Functional/Wizard/SortingTest.php
+++ b/core/modules/views/tests/src/Functional/Wizard/SortingTest.php
@@ -14,8 +14,8 @@ class SortingTest extends WizardTestBase {
    */
   protected $defaultTheme = 'stark';
 
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp($import_test_views);
+  protected function setUp($import_test_views = TRUE, $modules = ['views_test_config']): void {
+    parent::setUp($import_test_views, $modules);
 
     $this->drupalPlaceBlock('page_title_block');
   }
diff --git a/core/modules/views/tests/src/Functional/Wizard/TaggedWithTest.php b/core/modules/views/tests/src/Functional/Wizard/TaggedWithTest.php
index 188d3bcd12a6723f989b1abb9c7c1c4387f26776..7ba92062fc63d00fd10b97d3e596ce9aef178b55 100644
--- a/core/modules/views/tests/src/Functional/Wizard/TaggedWithTest.php
+++ b/core/modules/views/tests/src/Functional/Wizard/TaggedWithTest.php
@@ -71,8 +71,8 @@ class TaggedWithTest extends WizardTestBase {
    */
   protected $tagField;
 
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp($import_test_views);
+  protected function setUp($import_test_views = TRUE, $modules = []): void {
+    parent::setUp($import_test_views, $modules);
 
     // Create two content types. One will have an autocomplete tagging field,
     // and one won't.
diff --git a/core/modules/views/tests/src/Functional/Wizard/WizardTestBase.php b/core/modules/views/tests/src/Functional/Wizard/WizardTestBase.php
index 41812b72b3cc77c8e5bd4a88ea6eb03d7b976169..42c3ed03d58b14ae2e9bf56c9aa4f80d8ebbb41b 100644
--- a/core/modules/views/tests/src/Functional/Wizard/WizardTestBase.php
+++ b/core/modules/views/tests/src/Functional/Wizard/WizardTestBase.php
@@ -16,8 +16,8 @@ abstract class WizardTestBase extends ViewTestBase {
    */
   protected static $modules = ['node', 'views_ui', 'block', 'rest'];
 
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp($import_test_views);
+  protected function setUp($import_test_views = TRUE, $modules = []): void {
+    parent::setUp($import_test_views, $modules);
 
     // Create and log in a user with administer views permission.
     $views_admin = $this->drupalCreateUser([
diff --git a/core/modules/views_ui/tests/src/Functional/DefaultViewsTest.php b/core/modules/views_ui/tests/src/Functional/DefaultViewsTest.php
index 771f644b2a14b846fdef707d2de11a67bcec5ef5..09aacc689187d23700c443a969dc10a52524306f 100644
--- a/core/modules/views_ui/tests/src/Functional/DefaultViewsTest.php
+++ b/core/modules/views_ui/tests/src/Functional/DefaultViewsTest.php
@@ -25,8 +25,8 @@ class DefaultViewsTest extends UITestBase {
    */
   protected $defaultTheme = 'stark';
 
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp($import_test_views);
+  protected function setUp($import_test_views = TRUE, $modules = ['views_test_config']): void {
+    parent::setUp($import_test_views, $modules);
 
     $this->placeBlock('page_title_block');
   }
diff --git a/core/modules/views_ui/tests/src/Functional/DisplayFeedTest.php b/core/modules/views_ui/tests/src/Functional/DisplayFeedTest.php
index 0005722f2183d96b71a391872404cb73619249f5..d697849cc8382cd8de4ee05131bfe65145ed59a3 100644
--- a/core/modules/views_ui/tests/src/Functional/DisplayFeedTest.php
+++ b/core/modules/views_ui/tests/src/Functional/DisplayFeedTest.php
@@ -15,14 +15,14 @@ class DisplayFeedTest extends UITestBase {
    *
    * @var array
    */
-  public static $testViews = ['test_display_feed', 'test_style_opml'];
+  public static $testViews = ['test_display_feed'];
 
   /**
    * Modules to enable.
    *
    * @var array
    */
-  protected static $modules = ['views_ui', 'aggregator'];
+  protected static $modules = ['views_ui'];
 
   /**
    * {@inheritdoc}
@@ -33,7 +33,7 @@ class DisplayFeedTest extends UITestBase {
    * Tests feed display admin UI.
    */
   public function testFeedUI() {
-    // Test both RSS and OPML feeds.
+    // Test the RSS feed.
     foreach (self::$testViews as $view_name) {
       $this->checkFeedViewUi($view_name);
     }
diff --git a/core/modules/views_ui/tests/src/Functional/DisplayPathTest.php b/core/modules/views_ui/tests/src/Functional/DisplayPathTest.php
index 384e9a5c9a70384d4b27cd817d2818d411e6bd1b..032cb5843f369d19795a63af8334dc6622020e39 100644
--- a/core/modules/views_ui/tests/src/Functional/DisplayPathTest.php
+++ b/core/modules/views_ui/tests/src/Functional/DisplayPathTest.php
@@ -16,8 +16,8 @@ class DisplayPathTest extends UITestBase {
 
   use AssertPageCacheContextsAndTagsTrait;
 
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp($import_test_views);
+  protected function setUp($import_test_views = TRUE, $modules = ['views_test_config']): void {
+    parent::setUp($import_test_views, $modules);
 
     $this->placeBlock('page_title_block');
   }
diff --git a/core/modules/views_ui/tests/src/Functional/DuplicateTest.php b/core/modules/views_ui/tests/src/Functional/DuplicateTest.php
index 6376381f5ddd7d465ee2d9f212a5a32f9223cae7..c461c839a29ed0e2eac1320f291dfdfb5f2ca786 100644
--- a/core/modules/views_ui/tests/src/Functional/DuplicateTest.php
+++ b/core/modules/views_ui/tests/src/Functional/DuplicateTest.php
@@ -14,8 +14,8 @@ class DuplicateTest extends UITestBase {
    */
   protected $defaultTheme = 'stark';
 
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp($import_test_views);
+  protected function setUp($import_test_views = TRUE, $modules = ['views_test_config']): void {
+    parent::setUp($import_test_views, $modules);
 
     $this->placeBlock('page_title_block');
   }
diff --git a/core/modules/views_ui/tests/src/Functional/ExposedFormUITest.php b/core/modules/views_ui/tests/src/Functional/ExposedFormUITest.php
index 219951d155447dca66e0d7f96c550a655e216e1e..f1f959958ea8f13956804cc50de33edcf1c715ab 100644
--- a/core/modules/views_ui/tests/src/Functional/ExposedFormUITest.php
+++ b/core/modules/views_ui/tests/src/Functional/ExposedFormUITest.php
@@ -44,8 +44,8 @@ class ExposedFormUITest extends UITestBase {
    */
   protected $groupFormUiErrors = [];
 
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp($import_test_views);
+  protected function setUp($import_test_views = TRUE, $modules = ['views_test_config']): void {
+    parent::setUp($import_test_views, $modules);
 
     $this->drupalCreateContentType(['type' => 'article']);
     $this->drupalCreateContentType(['type' => 'page']);
diff --git a/core/modules/views_ui/tests/src/Functional/FilterUITest.php b/core/modules/views_ui/tests/src/Functional/FilterUITest.php
index 33231e49922ac1d09eaa320efd4adfe7bb06b7f8..a4af05d336aef61cc225af9bb4270790beb02ed1 100644
--- a/core/modules/views_ui/tests/src/Functional/FilterUITest.php
+++ b/core/modules/views_ui/tests/src/Functional/FilterUITest.php
@@ -32,8 +32,8 @@ class FilterUITest extends UITestBase {
   /**
    * {@inheritdoc}
    */
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp($import_test_views);
+  protected function setUp($import_test_views = TRUE, $modules = ['views_test_config']): void {
+    parent::setUp($import_test_views, $modules);
     $this->drupalCreateContentType(['type' => 'page']);
   }
 
diff --git a/core/modules/views_ui/tests/src/Functional/HandlerTest.php b/core/modules/views_ui/tests/src/Functional/HandlerTest.php
index e5235989fca6b0f4477b4fcefbe4e0aedeea3b74..69f236f9f1f0f76aafcbe48cdadcd84c80bf9b1a 100644
--- a/core/modules/views_ui/tests/src/Functional/HandlerTest.php
+++ b/core/modules/views_ui/tests/src/Functional/HandlerTest.php
@@ -35,8 +35,8 @@ class HandlerTest extends UITestBase {
   /**
    * {@inheritdoc}
    */
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp($import_test_views);
+  protected function setUp($import_test_views = TRUE, $modules = ['views_test_config']): void {
+    parent::setUp($import_test_views, $modules);
 
     $this->placeBlock('page_title_block');
     ViewTestData::createTestViews(static::class, ['node_test_views']);
diff --git a/core/modules/views_ui/tests/src/Functional/NewViewConfigSchemaTest.php b/core/modules/views_ui/tests/src/Functional/NewViewConfigSchemaTest.php
index 93c5217930032126a8949c5be000f447d75e5c74..535afb26259cbab6d9e36efea092155d9b9b97a4 100644
--- a/core/modules/views_ui/tests/src/Functional/NewViewConfigSchemaTest.php
+++ b/core/modules/views_ui/tests/src/Functional/NewViewConfigSchemaTest.php
@@ -21,7 +21,6 @@ class NewViewConfigSchemaTest extends UITestBase {
     'file',
     'taxonomy',
     'dblog',
-    'aggregator',
   ];
 
   /**
@@ -45,9 +44,6 @@ public function testNewViews() {
       'file_managed',
       'taxonomy_term',
       'watchdog',
-      // Standard derivative classes.
-      'standard:aggregator_feed',
-      'standard:aggregator_item',
     ];
     foreach ($wizards as $wizard_key) {
       $edit = [];
diff --git a/core/modules/views_ui/tests/src/Functional/OverrideDisplaysTest.php b/core/modules/views_ui/tests/src/Functional/OverrideDisplaysTest.php
index 968ff49a64af9c984beccadf2cd234f2b13fd9af..9c0ed2b23b99a4c101982684be3c5d1817ca8a97 100644
--- a/core/modules/views_ui/tests/src/Functional/OverrideDisplaysTest.php
+++ b/core/modules/views_ui/tests/src/Functional/OverrideDisplaysTest.php
@@ -14,8 +14,8 @@ class OverrideDisplaysTest extends UITestBase {
    */
   protected $defaultTheme = 'stark';
 
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp($import_test_views);
+  protected function setUp($import_test_views = TRUE, $modules = ['views_test_config']): void {
+    parent::setUp($import_test_views, $modules);
 
     $this->drupalPlaceBlock('page_title_block');
   }
diff --git a/core/modules/views_ui/tests/src/Functional/SettingsTest.php b/core/modules/views_ui/tests/src/Functional/SettingsTest.php
index 7b04e4db5316ad844ca0c8e03267a4876ab0ad3b..8256af296b5c120ed55c8d68311c822298bbe67d 100644
--- a/core/modules/views_ui/tests/src/Functional/SettingsTest.php
+++ b/core/modules/views_ui/tests/src/Functional/SettingsTest.php
@@ -26,8 +26,8 @@ class SettingsTest extends UITestBase {
   /**
    * {@inheritdoc}
    */
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp($import_test_views);
+  protected function setUp($import_test_views = TRUE, $modules = ['views_test_config']): void {
+    parent::setUp($import_test_views, $modules);
     $this->drupalPlaceBlock('local_tasks_block');
   }
 
diff --git a/core/modules/views_ui/tests/src/Functional/TranslatedViewTest.php b/core/modules/views_ui/tests/src/Functional/TranslatedViewTest.php
index 5f45824609736af8b96508ec2f234824fc0f16e8..edc9a6db61a0333dc885afac62594d76bbad70ea 100644
--- a/core/modules/views_ui/tests/src/Functional/TranslatedViewTest.php
+++ b/core/modules/views_ui/tests/src/Functional/TranslatedViewTest.php
@@ -42,8 +42,8 @@ class TranslatedViewTest extends UITestBase {
    */
   protected $adminUser;
 
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp($import_test_views);
+  protected function setUp($import_test_views = TRUE, $modules = []): void {
+    parent::setUp($import_test_views, $modules);
 
     $permissions = [
       'administer site configuration',
diff --git a/core/modules/views_ui/tests/src/Functional/UITestBase.php b/core/modules/views_ui/tests/src/Functional/UITestBase.php
index c15877fbf9b6cea95b8b767d0885541370370a83..3f5cb0476b97db519ca129174d81108fd407d554 100644
--- a/core/modules/views_ui/tests/src/Functional/UITestBase.php
+++ b/core/modules/views_ui/tests/src/Functional/UITestBase.php
@@ -33,8 +33,8 @@ abstract class UITestBase extends ViewTestBase {
   /**
    * {@inheritdoc}
    */
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp($import_test_views);
+  protected function setUp($import_test_views = TRUE, $modules = ['views_test_config']): void {
+    parent::setUp($import_test_views, $modules);
 
     $this->enableViewsTestModule();
 
diff --git a/core/modules/views_ui/tests/src/Functional/UnsavedPreviewTest.php b/core/modules/views_ui/tests/src/Functional/UnsavedPreviewTest.php
index 46589eb9375d352cdc4692e3e2adab3e3b6f0ea6..847aa0e9a501550729977c2e9912e0aaf9d13394 100644
--- a/core/modules/views_ui/tests/src/Functional/UnsavedPreviewTest.php
+++ b/core/modules/views_ui/tests/src/Functional/UnsavedPreviewTest.php
@@ -36,8 +36,8 @@ class UnsavedPreviewTest extends UITestBase {
   /**
    * Sets up a Drupal site for running functional and integration tests.
    */
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp(FALSE);
+  protected function setUp($import_test_views = TRUE, $modules = ['views_test_config']): void {
+    parent::setUp(FALSE, $modules);
 
     $this->adminUser = $this->drupalCreateUser(['administer views']);
     $this->drupalLogin($this->adminUser);
diff --git a/core/modules/views_ui/tests/src/Functional/ViewsListTest.php b/core/modules/views_ui/tests/src/Functional/ViewsListTest.php
index cebbf94f7169bc14dcbf63a211c877408495611b..93f80b3e15df2e2fe05597d3e5c0c627cd8aa8cc 100644
--- a/core/modules/views_ui/tests/src/Functional/ViewsListTest.php
+++ b/core/modules/views_ui/tests/src/Functional/ViewsListTest.php
@@ -34,8 +34,8 @@ class ViewsListTest extends UITestBase {
   /**
    * {@inheritdoc}
    */
-  protected function setUp($import_test_views = TRUE): void {
-    parent::setUp($import_test_views);
+  protected function setUp($import_test_views = TRUE, $modules = []): void {
+    parent::setUp($import_test_views, $modules);
 
     $this->drupalPlaceBlock('local_tasks_block');
     $this->drupalPlaceBlock('local_actions_block');
diff --git a/core/tests/Drupal/KernelTests/Core/Queue/QueueSerializationTest.php b/core/tests/Drupal/KernelTests/Core/Queue/QueueSerializationTest.php
index 2f70eb6a36f0b67b04408f5a65a831863695a234..c3f4f814b39a00165de806a6a35cad4c2537599c 100644
--- a/core/tests/Drupal/KernelTests/Core/Queue/QueueSerializationTest.php
+++ b/core/tests/Drupal/KernelTests/Core/Queue/QueueSerializationTest.php
@@ -18,19 +18,12 @@ class QueueSerializationTest extends KernelTestBase implements FormInterface {
 
   use DependencySerializationTrait;
 
-  /**
-   * A queue instance.
-   *
-   * @var \Drupal\Core\Queue\DatabaseQueue
-   */
-  protected $queue;
-
   /**
    * Modules to enable.
    *
    * @var array
    */
-  protected static $modules = ['system', 'user', 'aggregator'];
+  protected static $modules = ['system', 'user'];
 
   /**
    * {@inheritdoc}
@@ -79,7 +72,9 @@ protected function setUp(): void {
     parent::setUp();
     $this->installSchema('system', ['sequences']);
     $this->installEntitySchema('user');
-    $this->queue = \Drupal::service('queue.database')->get('aggregator_refresh');
+    // We only need a valid \Drupal\Core\Queue\DatabaseQueue object here, not
+    // an actual valid queue.
+    $this->queue = \Drupal::service('queue.database')->get('fake_a_queue');
     $test_user = User::create([
       'name' => 'foobar',
       'mail' => 'foobar@example.com',
diff --git a/core/tests/Drupal/Tests/Core/Render/BubbleableMetadataTest.php b/core/tests/Drupal/Tests/Core/Render/BubbleableMetadataTest.php
index 8246cdb1d80dea1c0628efc64f2ef87b0d91f554..18d250c2d540af832fd8a1b69c86e8dd4e1e59a9 100644
--- a/core/tests/Drupal/Tests/Core/Render/BubbleableMetadataTest.php
+++ b/core/tests/Drupal/Tests/Core/Render/BubbleableMetadataTest.php
@@ -380,65 +380,6 @@ public function testMergeAttachmentsLibraryMerging() {
     $this->assertSame($expected_settings_two, $merged['drupalSettings']['commonTestRealWorldAlmostIdentical']);
   }
 
-  /**
-   * Tests feed asset merging.
-   *
-   * @covers ::mergeAttachments
-   *
-   * @dataProvider providerTestMergeAttachmentsFeedMerging
-   */
-  public function testMergeAttachmentsFeedMerging($a, $b, $expected) {
-    $this->assertSame($expected, BubbleableMetadata::mergeAttachments($a, $b));
-  }
-
-  /**
-   * Data provider for testMergeAttachmentsFeedMerging.
-   *
-   * @return array
-   */
-  public function providerTestMergeAttachmentsFeedMerging() {
-    $feed_a = [
-      'aggregator/rss',
-      'Feed title',
-    ];
-
-    $feed_b = [
-      'taxonomy/term/1/feed',
-      'RSS - foo',
-    ];
-
-    $a = [
-      'feed' => [
-        $feed_a,
-      ],
-    ];
-    $b = [
-      'feed' => [
-        $feed_b,
-      ],
-    ];
-
-    $expected_a = [
-      'feed' => [
-        $feed_a,
-        $feed_b,
-      ],
-    ];
-
-    // Merging in the opposite direction yields the opposite library order.
-    $expected_b = [
-      'feed' => [
-        $feed_b,
-        $feed_a,
-      ],
-    ];
-
-    return [
-      [$a, $b, $expected_a],
-      [$b, $a, $expected_b],
-    ];
-  }
-
   /**
    * Tests html_head asset merging.
    *