diff --git a/core/modules/announcements_feed/tests/src/Kernel/AnnounceFetcherTest.php b/core/modules/announcements_feed/tests/src/Kernel/AnnounceFetcherTest.php
index 012ba4bf5e4a990ae8bc374354aed8b40e93ccbe..7161ece790e6c54c3fcd2ecb8e96bd87413f2e45 100644
--- a/core/modules/announcements_feed/tests/src/Kernel/AnnounceFetcherTest.php
+++ b/core/modules/announcements_feed/tests/src/Kernel/AnnounceFetcherTest.php
@@ -68,7 +68,7 @@ public function testFeedFields(): void {
   /**
    * Data provider for testShowAnnouncements().
    */
-  public function providerShowAnnouncements(): array {
+  public static function providerShowAnnouncements(): array {
     return [
       '1' => [
         'feed_item' => [
diff --git a/core/modules/announcements_feed/tests/src/Unit/AnnounceFetcherUnitTest.php b/core/modules/announcements_feed/tests/src/Unit/AnnounceFetcherUnitTest.php
index 6e8f9097fb2989e0a11878c560951ad3d12c46b0..f919d86c1cfa24968509be662b266cc218257611 100644
--- a/core/modules/announcements_feed/tests/src/Unit/AnnounceFetcherUnitTest.php
+++ b/core/modules/announcements_feed/tests/src/Unit/AnnounceFetcherUnitTest.php
@@ -57,7 +57,7 @@ public function testValidateUrl($url, $isValid) {
   /**
    * Data for the testValidateUrl.
    */
-  public function urlProvider(): array {
+  public static function urlProvider(): array {
     return [
       ['https://www.drupal.org', TRUE],
       ['https://drupal.org', TRUE],
diff --git a/core/modules/ban/tests/src/Kernel/Plugin/migrate/source/d7/BlockedIpsTest.php b/core/modules/ban/tests/src/Kernel/Plugin/migrate/source/d7/BlockedIpsTest.php
index 80adf4ec548dba64fe4c3ce94c24ba07afb7a0ee..e2121ca8a837932bf66f85f489a3aae80208bb32 100644
--- a/core/modules/ban/tests/src/Kernel/Plugin/migrate/source/d7/BlockedIpsTest.php
+++ b/core/modules/ban/tests/src/Kernel/Plugin/migrate/source/d7/BlockedIpsTest.php
@@ -20,7 +20,7 @@ class BlockedIpsTest extends MigrateSqlSourceTestBase {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     $tests = [];
 
     $tests[0]['source_data']['blocked_ips'] = [
diff --git a/core/modules/big_pipe/tests/src/Unit/Render/Placeholder/BigPipeStrategyTest.php b/core/modules/big_pipe/tests/src/Unit/Render/Placeholder/BigPipeStrategyTest.php
index cedb65d997d46ec2e16c106af06b06b51bf864a9..864449845b7974f4d6c21c51c61b670307434a59 100644
--- a/core/modules/big_pipe/tests/src/Unit/Render/Placeholder/BigPipeStrategyTest.php
+++ b/core/modules/big_pipe/tests/src/Unit/Render/Placeholder/BigPipeStrategyTest.php
@@ -63,7 +63,7 @@ public function testProcessPlaceholders(array $placeholders, $method, $route_mat
   /**
    * @see \Drupal\big_pipe_test\BigPipePlaceholderTestCases
    */
-  public function placeholdersProvider() {
+  public static function placeholdersProvider() {
     $cases = BigPipePlaceholderTestCases::cases();
 
     // Generate $placeholders variable as expected by
diff --git a/core/modules/big_pipe/tests/src/Unit/StackMiddleware/ContentLengthTest.php b/core/modules/big_pipe/tests/src/Unit/StackMiddleware/ContentLengthTest.php
index 08682e400c7823fe5852a07a36a2f9189966220e..34388d32eadfefcb6944ea31babe431f04eb61a5 100644
--- a/core/modules/big_pipe/tests/src/Unit/StackMiddleware/ContentLengthTest.php
+++ b/core/modules/big_pipe/tests/src/Unit/StackMiddleware/ContentLengthTest.php
@@ -37,7 +37,7 @@ public function testHandle(false|int $expected_header, Response $response) {
     $this->assertSame((string) $expected_header, $response->headers->get('Content-Length'));
   }
 
-  public function providerTestSetContentLengthHeader() {
+  public static function providerTestSetContentLengthHeader() {
     $response = new Response('Test content', 200);
     $response->headers->set('Content-Length', (string) strlen('Test content'));
     return [
diff --git a/core/modules/block/tests/src/Kernel/Plugin/migrate/source/BlockTest.php b/core/modules/block/tests/src/Kernel/Plugin/migrate/source/BlockTest.php
index b0f507e126ec49db624cab04847958366f41e80f..a6621f972f0c2f5691d723824e800d5409b33417 100644
--- a/core/modules/block/tests/src/Kernel/Plugin/migrate/source/BlockTest.php
+++ b/core/modules/block/tests/src/Kernel/Plugin/migrate/source/BlockTest.php
@@ -20,7 +20,7 @@ class BlockTest extends MigrateSqlSourceTestBase {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     $tests = [];
 
     // The source data.
diff --git a/core/modules/block/tests/src/Kernel/Plugin/migrate/source/d6/BlockTranslationTest.php b/core/modules/block/tests/src/Kernel/Plugin/migrate/source/d6/BlockTranslationTest.php
index 18dd8041350b7cd9eb464cd7edf21e29ebe52fab..479318646b4383dfb7e0d119d669b7cf7672bef3 100644
--- a/core/modules/block/tests/src/Kernel/Plugin/migrate/source/d6/BlockTranslationTest.php
+++ b/core/modules/block/tests/src/Kernel/Plugin/migrate/source/d6/BlockTranslationTest.php
@@ -21,7 +21,7 @@ class BlockTranslationTest extends BlockTest {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     // Test data is the same as BlockTest, but with the addition of i18n_blocks.
     $tests = parent::providerSource();
 
diff --git a/core/modules/block/tests/src/Kernel/Plugin/migrate/source/d7/BlockTranslationTest.php b/core/modules/block/tests/src/Kernel/Plugin/migrate/source/d7/BlockTranslationTest.php
index b186fc95f7e4bd523d27abf6270dc139b3389a49..49b60c767e2cfddb7ad3e14df53557981e39b861 100644
--- a/core/modules/block/tests/src/Kernel/Plugin/migrate/source/d7/BlockTranslationTest.php
+++ b/core/modules/block/tests/src/Kernel/Plugin/migrate/source/d7/BlockTranslationTest.php
@@ -23,7 +23,7 @@ class BlockTranslationTest extends MigrateSqlSourceTestBase {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
 
     // The source data.
     $tests[0]['source_data']['block'] = [
diff --git a/core/modules/block/tests/src/Unit/BlockRepositoryTest.php b/core/modules/block/tests/src/Unit/BlockRepositoryTest.php
index a5abcdf596240f92723b7c143f476dc5bd3ae9af..15ac1c718fb1d2028a03f38ad4d7fff065011a9e 100644
--- a/core/modules/block/tests/src/Unit/BlockRepositoryTest.php
+++ b/core/modules/block/tests/src/Unit/BlockRepositoryTest.php
@@ -112,7 +112,7 @@ public function testGetVisibleBlocksPerRegion(array $blocks_config, array $expec
     $this->assertEquals($expected_blocks, $result);
   }
 
-  public function providerBlocksConfig() {
+  public static function providerBlocksConfig() {
     $blocks_config = [
       'block1' => [
         AccessResult::allowed(), 'top', 0,
diff --git a/core/modules/block/tests/src/Unit/CategoryAutocompleteTest.php b/core/modules/block/tests/src/Unit/CategoryAutocompleteTest.php
index 589d1c3f4b21a99d2bce69adb456307a8ca4d9bb..f54c2a90775b0ba8dca6d4aff61bad282f908abb 100644
--- a/core/modules/block/tests/src/Unit/CategoryAutocompleteTest.php
+++ b/core/modules/block/tests/src/Unit/CategoryAutocompleteTest.php
@@ -61,7 +61,7 @@ public function testAutocompleteSuggestions($string, $suggestions) {
    *
    * @return array
    */
-  public function providerTestAutocompleteSuggestions() {
+  public static function providerTestAutocompleteSuggestions() {
     $test_parameters = [];
     $test_parameters[] = [
       'string' => 'Com',
diff --git a/core/modules/block/tests/src/Unit/Menu/BlockLocalTasksTest.php b/core/modules/block/tests/src/Unit/Menu/BlockLocalTasksTest.php
index 06093da237d02a46db6ddd8997ec7a5fbeedd440..52e28bc45b9bdcb86055617e8ccc7dbe433b1f74 100644
--- a/core/modules/block/tests/src/Unit/Menu/BlockLocalTasksTest.php
+++ b/core/modules/block/tests/src/Unit/Menu/BlockLocalTasksTest.php
@@ -83,7 +83,7 @@ public function testBlockAdminDisplay($route, $expected) {
   /**
    * Provides a list of routes to test.
    */
-  public function providerTestBlockAdminDisplay() {
+  public static function providerTestBlockAdminDisplay() {
     return [
       ['block.admin_display', [['block.admin_display'], ['block.admin_display_theme:test_b', 'block.admin_display_theme:test_c']]],
       ['block.admin_display_theme', [['block.admin_display'], ['block.admin_display_theme:test_b', 'block.admin_display_theme:test_c']]],
diff --git a/core/modules/block/tests/src/Unit/Plugin/DisplayVariant/BlockPageVariantTest.php b/core/modules/block/tests/src/Unit/Plugin/DisplayVariant/BlockPageVariantTest.php
index 5842e957d6d279c990ae7c168ae0373ae11f8583..e057917bb5cf9e71290e9cd5edfa36e23ee53e07 100644
--- a/core/modules/block/tests/src/Unit/Plugin/DisplayVariant/BlockPageVariantTest.php
+++ b/core/modules/block/tests/src/Unit/Plugin/DisplayVariant/BlockPageVariantTest.php
@@ -68,7 +68,7 @@ public function setUpDisplayVariant($configuration = [], $definition = []) {
       ->getMock();
   }
 
-  public function providerBuild() {
+  public static function providerBuild() {
     $blocks_config = [
       'block1' => [
         // region, is main content block, is messages block, is title block
diff --git a/core/modules/block/tests/src/Unit/Plugin/migrate/process/BlockSettingsTest.php b/core/modules/block/tests/src/Unit/Plugin/migrate/process/BlockSettingsTest.php
index 1aaaf0c451b0d77ab45711352e627986d9d5faf1..38a14531fdb8cd4dc085418d8395a96685455b9b 100644
--- a/core/modules/block/tests/src/Unit/Plugin/migrate/process/BlockSettingsTest.php
+++ b/core/modules/block/tests/src/Unit/Plugin/migrate/process/BlockSettingsTest.php
@@ -40,7 +40,7 @@ public function testTransform($value, $expected) {
   /**
    * Provides data for testTransform.
    */
-  public function providerTestTransform() {
+  public static function providerTestTransform() {
     return [
       'title set' => [
         [
diff --git a/core/modules/block_content/tests/src/Kernel/BlockContentAccessHandlerTest.php b/core/modules/block_content/tests/src/Kernel/BlockContentAccessHandlerTest.php
index 6d676ddb3f3ae95ffdb5c6be8f25ab985fbcc9a6..97de5d8f204df9d62c72803113b293a5d9663249 100644
--- a/core/modules/block_content/tests/src/Kernel/BlockContentAccessHandlerTest.php
+++ b/core/modules/block_content/tests/src/Kernel/BlockContentAccessHandlerTest.php
@@ -191,7 +191,7 @@ public function testAccess(string $operation, bool $published, bool $reusable, a
   /**
    * Data provider for testAccess().
    */
-  public function providerTestAccess(): array {
+  public static function providerTestAccess(): array {
     $cases = [
       'view:published:reusable' => [
         'view',
diff --git a/core/modules/block_content/tests/src/Kernel/BlockContentEntityReferenceSelectionTest.php b/core/modules/block_content/tests/src/Kernel/BlockContentEntityReferenceSelectionTest.php
index daeace75e232bb6c0e1a8fce402f582eeafaa57a..db07637d86f1074a269f9f882d0b440f53f3d173 100644
--- a/core/modules/block_content/tests/src/Kernel/BlockContentEntityReferenceSelectionTest.php
+++ b/core/modules/block_content/tests/src/Kernel/BlockContentEntityReferenceSelectionTest.php
@@ -177,7 +177,7 @@ public function testFieldConditions($condition_type, $is_reusable) {
   /**
    * Provides possible fields and condition types.
    */
-  public function fieldConditionProvider() {
+  public static function fieldConditionProvider() {
     $cases = [];
     foreach (['base', 'group', 'nested_group'] as $condition_type) {
       foreach ([TRUE, FALSE] as $reusable) {
diff --git a/core/modules/block_content/tests/src/Kernel/Plugin/migrate/source/d6/BoxTest.php b/core/modules/block_content/tests/src/Kernel/Plugin/migrate/source/d6/BoxTest.php
index 7f84eb582020101341e1018354aacb56e6847270..25bbe2fe3f58daec5b27809ca25ca13bf7c45155 100644
--- a/core/modules/block_content/tests/src/Kernel/Plugin/migrate/source/d6/BoxTest.php
+++ b/core/modules/block_content/tests/src/Kernel/Plugin/migrate/source/d6/BoxTest.php
@@ -20,7 +20,7 @@ class BoxTest extends MigrateSqlSourceTestBase {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     $tests = [];
 
     $tests[0]['source_data']['boxes'] = [
diff --git a/core/modules/block_content/tests/src/Kernel/Plugin/migrate/source/d6/BoxTranslationTest.php b/core/modules/block_content/tests/src/Kernel/Plugin/migrate/source/d6/BoxTranslationTest.php
index 548c65d1e4d1ea5941719271633ea19fc7771637..baa43d5634abf9f0dbeb7e65e8b5df5ab6fc2168 100644
--- a/core/modules/block_content/tests/src/Kernel/Plugin/migrate/source/d6/BoxTranslationTest.php
+++ b/core/modules/block_content/tests/src/Kernel/Plugin/migrate/source/d6/BoxTranslationTest.php
@@ -23,7 +23,7 @@ class BoxTranslationTest extends MigrateSqlSourceTestBase {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     $tests = [];
 
     // The source data.
diff --git a/core/modules/block_content/tests/src/Kernel/Plugin/migrate/source/d7/BlockCustomTest.php b/core/modules/block_content/tests/src/Kernel/Plugin/migrate/source/d7/BlockCustomTest.php
index 3a2e02d534fc19a51cba00d98e118545e9e6011d..a017a86ec685759ba51bca787b815d9485495dab 100644
--- a/core/modules/block_content/tests/src/Kernel/Plugin/migrate/source/d7/BlockCustomTest.php
+++ b/core/modules/block_content/tests/src/Kernel/Plugin/migrate/source/d7/BlockCustomTest.php
@@ -20,7 +20,7 @@ class BlockCustomTest extends MigrateSqlSourceTestBase {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     $tests = [];
 
     $tests[0]['source_data']['block_custom'] = [
diff --git a/core/modules/block_content/tests/src/Kernel/Plugin/migrate/source/d7/BlockCustomTranslationTest.php b/core/modules/block_content/tests/src/Kernel/Plugin/migrate/source/d7/BlockCustomTranslationTest.php
index ef8dccbc17ea84a960735dcf921c40ce15663fd8..16e967b7e6c6129f03737382236bc4ef771228be 100644
--- a/core/modules/block_content/tests/src/Kernel/Plugin/migrate/source/d7/BlockCustomTranslationTest.php
+++ b/core/modules/block_content/tests/src/Kernel/Plugin/migrate/source/d7/BlockCustomTranslationTest.php
@@ -23,7 +23,7 @@ class BlockCustomTranslationTest extends MigrateSqlSourceTestBase {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     $tests = [];
 
     // The source data.
diff --git a/core/modules/block_content/tests/src/Unit/Access/DependentAccessTest.php b/core/modules/block_content/tests/src/Unit/Access/DependentAccessTest.php
index 338240e751c593a3750356ce636bdb7b0fcb1bf4..5abd871079a7c71a6514e3626afaf8512106ef66 100644
--- a/core/modules/block_content/tests/src/Unit/Access/DependentAccessTest.php
+++ b/core/modules/block_content/tests/src/Unit/Access/DependentAccessTest.php
@@ -142,7 +142,7 @@ public function testMergeGroup($use_set_first) {
    * mergeAccessDependency() first. A call to either should behave the same on a
    * new RefinableDependentAccessInterface object.
    */
-  public function providerTestSetFirst() {
+  public static function providerTestSetFirst() {
     return [
       [TRUE],
       [FALSE],
diff --git a/core/modules/block_content/tests/src/Unit/Menu/BlockContentLocalTasksTest.php b/core/modules/block_content/tests/src/Unit/Menu/BlockContentLocalTasksTest.php
index 1da30a5e54d8b43005c2cc770148392cb44afdd5..b81ad8905202d0eab952088f0360c536ef25e64d 100644
--- a/core/modules/block_content/tests/src/Unit/Menu/BlockContentLocalTasksTest.php
+++ b/core/modules/block_content/tests/src/Unit/Menu/BlockContentLocalTasksTest.php
@@ -80,7 +80,7 @@ public function testBlockContentListLocalTasks($route) {
   /**
    * Provides a list of routes to test.
    */
-  public function getBlockContentListingRoutes() {
+  public static function getBlockContentListingRoutes() {
     return [
       ['entity.block_content.collection', 'system.admin_content'],
     ];
diff --git a/core/modules/book/tests/src/Kernel/BookMultilingualTest.php b/core/modules/book/tests/src/Kernel/BookMultilingualTest.php
index f82473444c7e7f25277c1ec63efe84cb7a063e1e..089bbbc53325295d538d9ad3f4f7cff335863355 100644
--- a/core/modules/book/tests/src/Kernel/BookMultilingualTest.php
+++ b/core/modules/book/tests/src/Kernel/BookMultilingualTest.php
@@ -256,7 +256,7 @@ public function testMultilingualBookExport(string $langcode) {
   /**
    * Data provider for ::testMultilingualBooks().
    */
-  public function langcodesProvider() {
+  public static function langcodesProvider() {
     return [
       [self::LANGCODE],
       ['en'],
diff --git a/core/modules/book/tests/src/Kernel/Migrate/d6/MigrateBookConfigsTest.php b/core/modules/book/tests/src/Kernel/Migrate/d6/MigrateBookConfigsTest.php
index f4be91f0772e5c57ac6f72b300ec536d0ed64176..28c989bf3554bdeded7ef190ff3222ad50c3252f 100644
--- a/core/modules/book/tests/src/Kernel/Migrate/d6/MigrateBookConfigsTest.php
+++ b/core/modules/book/tests/src/Kernel/Migrate/d6/MigrateBookConfigsTest.php
@@ -32,7 +32,7 @@ protected function getFixtureFilePath() {
    * @return array
    *   The data for each test scenario.
    */
-  public function providerBookSettings() {
+  public static function providerBookSettings() {
     return [
       // d6_book_settings was renamed to book_settings, but use the old alias to
       // prove that it works.
diff --git a/core/modules/book/tests/src/Kernel/Plugin/migrate/source/BookTest.php b/core/modules/book/tests/src/Kernel/Plugin/migrate/source/BookTest.php
index a73f180a85c450fd50da8c6c8109323c5e06b220..d15d673a97c8c7b59c55ae51840aa5223eae180c 100644
--- a/core/modules/book/tests/src/Kernel/Plugin/migrate/source/BookTest.php
+++ b/core/modules/book/tests/src/Kernel/Plugin/migrate/source/BookTest.php
@@ -18,7 +18,7 @@ class BookTest extends MigrateSqlSourceTestBase {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     $tests = [];
 
     // The source data.
diff --git a/core/modules/book/tests/src/Unit/BookManagerTest.php b/core/modules/book/tests/src/Unit/BookManagerTest.php
index 945b21f788f8697028d1f8ff2fadbc7cee152b9d..dd39ef8d142160499c3346c341308add4317b0b4 100644
--- a/core/modules/book/tests/src/Unit/BookManagerTest.php
+++ b/core/modules/book/tests/src/Unit/BookManagerTest.php
@@ -104,7 +104,7 @@ public function testGetBookParents($book, $parent, $expected) {
    * @return array
    *   The test data.
    */
-  public function providerTestGetBookParents() {
+  public static function providerTestGetBookParents() {
     $empty = [
       'p1' => 0,
       'p2' => 0,
diff --git a/core/modules/book/tests/src/Unit/Menu/BookLocalTasksTest.php b/core/modules/book/tests/src/Unit/Menu/BookLocalTasksTest.php
index db1732cb7f432641f9ecb39800de515b39f14734..9138f8ff1804569274298ed3b5ab85d229de1088 100644
--- a/core/modules/book/tests/src/Unit/Menu/BookLocalTasksTest.php
+++ b/core/modules/book/tests/src/Unit/Menu/BookLocalTasksTest.php
@@ -39,7 +39,7 @@ public function testBookAdminLocalTasks($route) {
   /**
    * Provides a list of routes to test.
    */
-  public function getBookAdminRoutes() {
+  public static function getBookAdminRoutes() {
     return [
       ['book.admin'],
       ['book.settings'],
@@ -60,7 +60,7 @@ public function testBookNodeLocalTasks($route) {
   /**
    * Provides a list of routes to test.
    */
-  public function getBookNodeRoutes() {
+  public static function getBookNodeRoutes() {
     return [
       ['entity.node.canonical'],
       ['entity.node.book_outline_form'],
diff --git a/core/modules/ckeditor5/tests/src/Functional/Update/CKEditor5UpdateImageToolbarItemTest.php b/core/modules/ckeditor5/tests/src/Functional/Update/CKEditor5UpdateImageToolbarItemTest.php
index f481448e35e3f5fba7562be281e8db4b00f270d7..5c950c0af964058299ed3431cae982edeffcbf84 100644
--- a/core/modules/ckeditor5/tests/src/Functional/Update/CKEditor5UpdateImageToolbarItemTest.php
+++ b/core/modules/ckeditor5/tests/src/Functional/Update/CKEditor5UpdateImageToolbarItemTest.php
@@ -146,7 +146,7 @@ function (ConstraintViolation $v) {
    * @return array
    *   The test cases.
    */
-  public function provider(): array {
+  public static function provider(): array {
     // There are 3 aspects that need to be verified, each can be true or false,
     // making for 8 test cases in total.
     $test_cases = [];
diff --git a/core/modules/ckeditor5/tests/src/FunctionalJavascript/ImageTestBase.php b/core/modules/ckeditor5/tests/src/FunctionalJavascript/ImageTestBase.php
index a30b9ce9f6559e2e94f27cc7b7cb6bfdcf151f41..7eb2894cc95b7e80e1c936a01c200ac3645c9896 100644
--- a/core/modules/ckeditor5/tests/src/FunctionalJavascript/ImageTestBase.php
+++ b/core/modules/ckeditor5/tests/src/FunctionalJavascript/ImageTestBase.php
@@ -450,14 +450,14 @@ public function testAltTextRequired(bool $unrestricted) {
     $this->assertVisibleBalloon('.ck-text-alternative-form');
   }
 
-  public function providerAltTextRequired(): array {
+  public static function providerAltTextRequired(): array {
     return [
       'Restricted' => [FALSE],
       'Unrestricted' => [TRUE],
     ];
   }
 
-  public function providerLinkability(): array {
+  public static function providerLinkability(): array {
     return [
       'BLOCK image, restricted' => ['block', FALSE],
       'BLOCK image, unrestricted' => ['block', TRUE],
@@ -528,7 +528,7 @@ public function testAlignment(string $image_type): void {
     $this->assertFalse($drupal_media_element->hasAttribute('data-align'));
   }
 
-  public function providerAlignment() {
+  public static function providerAlignment() {
     return [
       'Block image' => ['block'],
       'Inline image' => ['inline'],
@@ -620,7 +620,7 @@ public function testImageCaption() {
    *
    * @return string[][]
    */
-  public function providerWidth(): array {
+  public static function providerWidth(): array {
     return [
       'Image resize with percent unit (only allowed in HTML 4)' => [
         'width' => '33%',
@@ -674,7 +674,7 @@ public function testResize(bool $is_resize_enabled): void {
    * @return array
    *   The test cases.
    */
-  public function providerResize(): array {
+  public static function providerResize(): array {
     return [
       'Image resize is enabled' => [
         'is_resize_enabled' => TRUE,
diff --git a/core/modules/ckeditor5/tests/src/FunctionalJavascript/LanguageTest.php b/core/modules/ckeditor5/tests/src/FunctionalJavascript/LanguageTest.php
index 4a89ab103802b9867e3fda5e5845338e4b1a34d6..4b3f570cd4807522e91136e8ac34bc21d3a885a7 100644
--- a/core/modules/ckeditor5/tests/src/FunctionalJavascript/LanguageTest.php
+++ b/core/modules/ckeditor5/tests/src/FunctionalJavascript/LanguageTest.php
@@ -82,7 +82,7 @@ public function test(string $langcode, string $toolbar_item_name, string $toolba
    *
    * @return string[][]
    */
-  public function provider(): array {
+  public static function provider(): array {
     return [
       'Language code both in Drupal and CKEditor' => [
         'langcode' => 'th',
diff --git a/core/modules/ckeditor5/tests/src/FunctionalJavascript/MediaLinkabilityTest.php b/core/modules/ckeditor5/tests/src/FunctionalJavascript/MediaLinkabilityTest.php
index 9d953723781661d9132b241892558f7b64968004..209b1de962c1b7f071a8cb707c6ffee04a949f81 100644
--- a/core/modules/ckeditor5/tests/src/FunctionalJavascript/MediaLinkabilityTest.php
+++ b/core/modules/ckeditor5/tests/src/FunctionalJavascript/MediaLinkabilityTest.php
@@ -221,7 +221,7 @@ public function testLinkability(bool $unrestricted) {
     $this->assertEmpty($xpath->query('//a'));
   }
 
-  public function providerLinkability(): array {
+  public static function providerLinkability(): array {
     return [
       'restricted' => [FALSE],
       'unrestricted' => [TRUE],
diff --git a/core/modules/ckeditor5/tests/src/FunctionalJavascript/MediaPreviewTest.php b/core/modules/ckeditor5/tests/src/FunctionalJavascript/MediaPreviewTest.php
index ac88edb64c333811c671364b1e9cdd86a37e6038..59cbf7f30748da6ae2f7c50eddefc06a89c660ca 100644
--- a/core/modules/ckeditor5/tests/src/FunctionalJavascript/MediaPreviewTest.php
+++ b/core/modules/ckeditor5/tests/src/FunctionalJavascript/MediaPreviewTest.php
@@ -186,7 +186,7 @@ public function testEmbedPreviewAccess($media_embed_enabled, $can_use_format) {
   /**
    * Data provider for ::testEmbedPreviewAccess.
    */
-  public function previewAccessProvider() {
+  public static function previewAccessProvider() {
     return [
       'media_embed filter enabled' => [
         TRUE,
diff --git a/core/modules/ckeditor5/tests/src/FunctionalJavascript/MediaTest.php b/core/modules/ckeditor5/tests/src/FunctionalJavascript/MediaTest.php
index 255c264c63721c31d361e4ca1d988800c6767f3f..ebbf600ed809d34116d1686c0f7fca8bde2d903e 100644
--- a/core/modules/ckeditor5/tests/src/FunctionalJavascript/MediaTest.php
+++ b/core/modules/ckeditor5/tests/src/FunctionalJavascript/MediaTest.php
@@ -1007,7 +1007,7 @@ public function testViewMode(bool $with_alignment) {
   /**
    * For testing view modes in different scenarios.
    */
-  public function providerTestViewMode(): array {
+  public static function providerTestViewMode(): array {
     return [
       'with alignment' => [TRUE],
       'without alignment' => [FALSE],
diff --git a/core/modules/ckeditor5/tests/src/FunctionalJavascript/SourceEditingTest.php b/core/modules/ckeditor5/tests/src/FunctionalJavascript/SourceEditingTest.php
index a638d5676596871c31ac95831ae8ab8a90670027..b7c1af2d051493315bd17da5ac78aeb3e736d4c0 100644
--- a/core/modules/ckeditor5/tests/src/FunctionalJavascript/SourceEditingTest.php
+++ b/core/modules/ckeditor5/tests/src/FunctionalJavascript/SourceEditingTest.php
@@ -118,7 +118,7 @@ function (ConstraintViolation $v) {
    * @return array
    *   The test cases.
    */
-  public function providerAllowingExtraAttributes(): array {
+  public static function providerAllowingExtraAttributes(): array {
     $general_test_case_markup = '<div class="llama" data-llama="🦙"><p data-llama="🦙">The <a href="https://example.com/pirate" class="button" data-grammar="subject">pirate</a> is <a href="https://example.com/irate" class="use-ajax" data-grammar="adjective">irate</a>.</p></div>';
     return [
       'no extra attributes allowed' => [
diff --git a/core/modules/ckeditor5/tests/src/Kernel/CKEditor5PluginManagerTest.php b/core/modules/ckeditor5/tests/src/Kernel/CKEditor5PluginManagerTest.php
index 469e582d244149880bbf755fbf4e7996ad3c905e..1ae537c185b40ef099e45ff7017393331aeb92b2 100644
--- a/core/modules/ckeditor5/tests/src/Kernel/CKEditor5PluginManagerTest.php
+++ b/core/modules/ckeditor5/tests/src/Kernel/CKEditor5PluginManagerTest.php
@@ -201,7 +201,7 @@ public function testInvalidPluginDefinitions(string $yaml, ?string $expected_mes
    * @return \Generator
    *   Test scenarios.
    */
-  public function providerTestInvalidPluginDefinitions(): \Generator {
+  public static function providerTestInvalidPluginDefinitions(): \Generator {
     yield 'invalid plugin ID with everything else okay' => [
       <<<YAML
 foo_bar:
@@ -1282,7 +1282,7 @@ public function testProvidedElements(array $plugins, array $text_editor_settings
   /**
    * Provides uses cases enabling different elements and the expected results.
    */
-  public function providerTestProvidedElements(): array {
+  public static function providerTestProvidedElements(): array {
     $text_align_classes = [
       'text-align-left' => TRUE,
       'text-align-center' => TRUE,
@@ -1507,7 +1507,7 @@ public function testPluginSupportingElement(string $tag, ?string $expected_plugi
   /**
    * Provides use cases for findPluginSupportingElement().
    */
-  public function providerTestPluginSupportingElement() {
+  public static function providerTestPluginSupportingElement() {
     return [
       'tag that belongs to a superset' => [
         'tag' => 'h2',
diff --git a/core/modules/ckeditor5/tests/src/Kernel/CKEditor5StylesheetsTest.php b/core/modules/ckeditor5/tests/src/Kernel/CKEditor5StylesheetsTest.php
index 7883277e9762db909432a4d952c4de087fd042e4..248e26719883bd526bd1549a1640be080d35b25b 100644
--- a/core/modules/ckeditor5/tests/src/Kernel/CKEditor5StylesheetsTest.php
+++ b/core/modules/ckeditor5/tests/src/Kernel/CKEditor5StylesheetsTest.php
@@ -46,7 +46,7 @@ public function testExternalStylesheets($theme, $expected) {
    * @return array
    *   An array of test cases.
    */
-  public function externalStylesheetsProvider() {
+  public static function externalStylesheetsProvider() {
     return [
       'Install theme which has an absolute external CSS URL' => [
         'test_ckeditor_stylesheets_external',
diff --git a/core/modules/ckeditor5/tests/src/Kernel/SmartDefaultSettingsTest.php b/core/modules/ckeditor5/tests/src/Kernel/SmartDefaultSettingsTest.php
index 99235f7264e953d70aa3d72d110923ac48bd20dd..d5f50e4a98a7c5796bb3bb958f19d24f0e8c8a6d 100644
--- a/core/modules/ckeditor5/tests/src/Kernel/SmartDefaultSettingsTest.php
+++ b/core/modules/ckeditor5/tests/src/Kernel/SmartDefaultSettingsTest.php
@@ -649,7 +649,7 @@ public function test(string $format_id, array $filters_to_drop, array $expected_
    * @return \Generator
    *   Test scenarios.
    */
-  public function provider() {
+  public static function provider() {
     $basic_html_test_case = [
       'format_id' => 'basic_html',
       'filters_to_drop' => [],
diff --git a/core/modules/ckeditor5/tests/src/Kernel/ValidatorsTest.php b/core/modules/ckeditor5/tests/src/Kernel/ValidatorsTest.php
index adacf4d2c08b45b2954048814558069c5f38cb41..bb18c3cef653d9269302f5d149c24e85ba5e43ba 100644
--- a/core/modules/ckeditor5/tests/src/Kernel/ValidatorsTest.php
+++ b/core/modules/ckeditor5/tests/src/Kernel/ValidatorsTest.php
@@ -110,7 +110,7 @@ public function test(array $ckeditor5_settings, array $expected_violations) {
   /**
    * Provides a list of Text Editor config entities using CKEditor 5 to test.
    */
-  public function provider(): array {
+  public static function provider(): array {
     $data = [];
     $data['CKEditor5::getDefaultSettings()'] = [
       // @see ::test()
@@ -703,7 +703,7 @@ public function testPair(array $ckeditor5_settings, array $editor_image_upload_s
   /**
    * Provides a list of Text Editor + Text Format pairs to test.
    */
-  public function providerPair(): array {
+  public static function providerPair(): array {
     // cspell:ignore donk
     $data = [];
     $data['INVALID: allow_view_mode_override condition not met: filter must be configured to allow 2 or more view modes'] = [
diff --git a/core/modules/ckeditor5/tests/src/Kernel/WildcardHtmlSupportTest.php b/core/modules/ckeditor5/tests/src/Kernel/WildcardHtmlSupportTest.php
index 9a3023738a7caa98adf5725a849d5108980c2ffc..725ed1f66a2e154f9fae07677c3e1220c3914c66 100644
--- a/core/modules/ckeditor5/tests/src/Kernel/WildcardHtmlSupportTest.php
+++ b/core/modules/ckeditor5/tests/src/Kernel/WildcardHtmlSupportTest.php
@@ -99,7 +99,7 @@ function (ConstraintViolation $v) {
     $this->assertEquals($expected_ghs_configuration, $ghs_configuration);
   }
 
-  public function providerGhsConfiguration(): array {
+  public static function providerGhsConfiguration(): array {
     return [
       'empty source editing' => [
         '<p> <br>',
diff --git a/core/modules/ckeditor5/tests/src/Unit/AlignmentPluginTest.php b/core/modules/ckeditor5/tests/src/Unit/AlignmentPluginTest.php
index 6e3ef192a32c344029efc99dede590cdc3821181..904fca1bc49d9ba5e7ac871eecf0d92c41c8386e 100644
--- a/core/modules/ckeditor5/tests/src/Unit/AlignmentPluginTest.php
+++ b/core/modules/ckeditor5/tests/src/Unit/AlignmentPluginTest.php
@@ -19,7 +19,7 @@ class AlignmentPluginTest extends UnitTestCase {
   /**
    * Provides a list of configs to test.
    */
-  public function providerGetDynamicPluginConfig(): array {
+  public static function providerGetDynamicPluginConfig(): array {
     return [
       'All alignments' => [
         Alignment::DEFAULT_CONFIGURATION,
diff --git a/core/modules/ckeditor5/tests/src/Unit/CKEditor5Test.php b/core/modules/ckeditor5/tests/src/Unit/CKEditor5Test.php
index 7b85d9becf1f67fca7cb7b44dc12527ae740f171..7a202abfc2f74586197ad0a0f9f226bc8f55e851 100644
--- a/core/modules/ckeditor5/tests/src/Unit/CKEditor5Test.php
+++ b/core/modules/ckeditor5/tests/src/Unit/CKEditor5Test.php
@@ -62,7 +62,7 @@ public function testPathsToFormNames(string $property_path, string $expected_for
    * @return array[]
    *   An array with the property path and expected form item name.
    */
-  public function providerPathsToFormNames(): array {
+  public static function providerPathsToFormNames(): array {
     return [
       'validation error targeting toolbar items' => [
         'settings.toolbar.items',
diff --git a/core/modules/ckeditor5/tests/src/Unit/HTMLRestrictionsTest.php b/core/modules/ckeditor5/tests/src/Unit/HTMLRestrictionsTest.php
index a923d34f8905a32608b55ccd6063b00dd8dfc6c1..3452689dfbcabb915ae93a8b53a00bcb915238a9 100644
--- a/core/modules/ckeditor5/tests/src/Unit/HTMLRestrictionsTest.php
+++ b/core/modules/ckeditor5/tests/src/Unit/HTMLRestrictionsTest.php
@@ -27,7 +27,7 @@ public function testConstructor(array $elements, ?string $expected_exception_mes
     new HTMLRestrictions($elements);
   }
 
-  public function providerConstruct(): \Generator {
+  public static function providerConstruct(): \Generator {
     // Fundamental structure.
     yield 'INVALID: list instead of key-value pairs' => [
       ['<foo>', '<bar>'],
@@ -166,7 +166,7 @@ public function testCounting(array $elements, bool $expected_is_empty, int $expe
     $this->assertCount($expected_concrete_plus_wildcard_count, $r->getAllowedElements(FALSE));
   }
 
-  public function providerCounting(): \Generator {
+  public static function providerCounting(): \Generator {
     yield 'empty' => [
       [],
       TRUE,
@@ -256,7 +256,7 @@ public function testConvenienceConstructors($input, array $expected, ?array $exp
     $this->assertSame($expected_raw + $filter_html_additional_expectations, HTMLRestrictions::fromFilterPluginInstance($filter_plugin_instance->reveal())->getAllowedElements(FALSE));
   }
 
-  public function providerConvenienceConstructors(): \Generator {
+  public static function providerConvenienceConstructors(): \Generator {
     // All empty cases.
     yield 'empty string' => [
       '',
@@ -638,7 +638,7 @@ public function testRepresentations(HTMLRestrictions $restrictions, array $expec
     $this->assertSame($expected_ghs_config, $restrictions->toGeneralHtmlSupportConfig());
   }
 
-  public function providerRepresentations(): \Generator {
+  public static function providerRepresentations(): \Generator {
     yield 'empty set' => [
       HTMLRestrictions::emptySet(),
       [],
@@ -904,7 +904,7 @@ public function testOperations(HTMLRestrictions $a, HTMLRestrictions $b, $expect
     $this->assertEquals($expected_union, $a->merge($b));
   }
 
-  public function providerOperands(): \Generator {
+  public static function providerOperands(): \Generator {
     // Empty set operand cases.
     yield 'any set + empty set' => [
       'a' => new HTMLRestrictions(['a' => ['href' => TRUE]]),
@@ -1504,7 +1504,7 @@ public function testSubsets(HTMLRestrictions $input, HTMLRestrictions $expected_
     $this->assertEquals($expected_extracted_plain_tags_subset, $input->extractPlainTagsSubset());
   }
 
-  public function providerSubsets(): \Generator {
+  public static function providerSubsets(): \Generator {
     yield 'empty set' => [
       new HTMLRestrictions([]),
       new HTMLRestrictions([]),
diff --git a/core/modules/ckeditor5/tests/src/Unit/HeadingPluginTest.php b/core/modules/ckeditor5/tests/src/Unit/HeadingPluginTest.php
index bd20e30d9f1ad61af3fe9845e9a52078227aa095..f6515c637a195f1626a2bdae8b6cde060b84d105 100644
--- a/core/modules/ckeditor5/tests/src/Unit/HeadingPluginTest.php
+++ b/core/modules/ckeditor5/tests/src/Unit/HeadingPluginTest.php
@@ -19,7 +19,7 @@ class HeadingPluginTest extends UnitTestCase {
   /**
    * Provides a list of configs to test.
    */
-  public function providerGetDynamicPluginConfig(): array {
+  public static function providerGetDynamicPluginConfig(): array {
     // Prepare headings matching ckeditor5.ckeditor5.yml to also protect
     // against unexpected changes to the YAML file given the YAML file is used
     // to generate the dynamic plugin configuration.
diff --git a/core/modules/ckeditor5/tests/src/Unit/ListPluginTest.php b/core/modules/ckeditor5/tests/src/Unit/ListPluginTest.php
index 1173e417fb3113916d1004ed6447bf62508b7e79..1efae1f5b7ffa98ec6b47535ee4610886d2d899e 100644
--- a/core/modules/ckeditor5/tests/src/Unit/ListPluginTest.php
+++ b/core/modules/ckeditor5/tests/src/Unit/ListPluginTest.php
@@ -19,7 +19,7 @@ class ListPluginTest extends UnitTestCase {
   /**
    * Provides a list of configs to test.
    */
-  public function providerGetDynamicPluginConfig(): array {
+  public static function providerGetDynamicPluginConfig(): array {
     return [
       'startIndex is false' => [
         [
diff --git a/core/modules/ckeditor5/tests/src/Unit/SmartDefaultSettingsTest.php b/core/modules/ckeditor5/tests/src/Unit/SmartDefaultSettingsTest.php
index f590ef6311a1b0f3bd9c8fc80d3b05bf179a7ac8..ebeb5a12147ce2e0a093f57c7c6f9e2b09ae4109 100644
--- a/core/modules/ckeditor5/tests/src/Unit/SmartDefaultSettingsTest.php
+++ b/core/modules/ckeditor5/tests/src/Unit/SmartDefaultSettingsTest.php
@@ -34,7 +34,7 @@ public function testSurplusScore(HTMLRestrictions $surplus, HTMLRestrictions $ne
    *
    * @return \Generator
    */
-  public function providerSurplusScore(): \Generator {
+  public static function providerSurplusScore(): \Generator {
     $needed = new HTMLRestrictions(['code' => FALSE]);
 
     yield 'surplus: 1 tag, 1 attribute, 1 attribute with wildcard restriction' => [
@@ -92,7 +92,7 @@ public function testCandidates(HTMLRestrictions $provided, HTMLRestrictions $sti
    *
    * @return \Generator
    */
-  public function providerCandidates(): \Generator {
+  public static function providerCandidates(): \Generator {
     $generate_definition = function (string $label_and_id, array $overrides): CKEditor5PluginDefinition {
       $annotation = [
         'provider' => 'test',
diff --git a/core/modules/ckeditor5/tests/src/Unit/SourceEditingPluginTest.php b/core/modules/ckeditor5/tests/src/Unit/SourceEditingPluginTest.php
index 13060bd98a8da1431259a58cd5260de3d6609aa9..b32146fba100929c2ccfbe7b0652c1da7557bbff 100644
--- a/core/modules/ckeditor5/tests/src/Unit/SourceEditingPluginTest.php
+++ b/core/modules/ckeditor5/tests/src/Unit/SourceEditingPluginTest.php
@@ -18,7 +18,7 @@ class SourceEditingPluginTest extends UnitTestCase {
   /**
    * Provides a list of configs to test.
    */
-  public function providerGetDynamicPluginConfig(): array {
+  public static function providerGetDynamicPluginConfig(): array {
     return [
       'Empty array of allowed tags' => [
         [
diff --git a/core/modules/ckeditor5/tests/src/Unit/StylePluginTest.php b/core/modules/ckeditor5/tests/src/Unit/StylePluginTest.php
index 1418467d8dd21c2a224eddbcbdf46ecaf209c477..6ca265b51ec6dcbb0fdb98d31f49877e78d36fa2 100644
--- a/core/modules/ckeditor5/tests/src/Unit/StylePluginTest.php
+++ b/core/modules/ckeditor5/tests/src/Unit/StylePluginTest.php
@@ -18,7 +18,7 @@ class StylePluginTest extends UnitTestCase {
   /**
    * Provides a list of configs to test.
    */
-  public function providerGetDynamicPluginConfig(): array {
+  public static function providerGetDynamicPluginConfig(): array {
     return [
       'default configuration (empty)' => [
         [
diff --git a/core/modules/comment/tests/src/Kernel/CommentOrphanTest.php b/core/modules/comment/tests/src/Kernel/CommentOrphanTest.php
index 73fdf4e8039ebe50b28289e6aab1f4b99f6efc5b..492eb6ffc9cc29ea72d6ef1cabb4bc4f927a7201 100644
--- a/core/modules/comment/tests/src/Kernel/CommentOrphanTest.php
+++ b/core/modules/comment/tests/src/Kernel/CommentOrphanTest.php
@@ -124,7 +124,7 @@ public function testOrphan($property) {
   /**
    * Provides test data for testOrphan.
    */
-  public function providerTestOrphan() {
+  public static function providerTestOrphan() {
     return [
       ['entity_id'],
       ['uid'],
diff --git a/core/modules/comment/tests/src/Kernel/Migrate/d6/MigrateCommentTypeTest.php b/core/modules/comment/tests/src/Kernel/Migrate/d6/MigrateCommentTypeTest.php
index 084a8e1005d1580b9335367cc86fe4a6d00c62aa..8d53bee41ba0e157abc159ba8605e6c059bf0d56 100644
--- a/core/modules/comment/tests/src/Kernel/Migrate/d6/MigrateCommentTypeTest.php
+++ b/core/modules/comment/tests/src/Kernel/Migrate/d6/MigrateCommentTypeTest.php
@@ -113,7 +113,7 @@ public function testNoCommentTypeMigration(array $disabled_source_modules, array
   /**
    * Provides test cases for ::testNoCommentTypeMigration().
    */
-  public function providerTestNoCommentTypeMigration() {
+  public static function providerTestNoCommentTypeMigration() {
     return [
       'Node module is disabled in source' => [
         'Disabled source modules' => ['node'],
diff --git a/core/modules/comment/tests/src/Kernel/Migrate/d7/CommentEntityTranslationCheckRequirementsTest.php b/core/modules/comment/tests/src/Kernel/Migrate/d7/CommentEntityTranslationCheckRequirementsTest.php
index ff780ae89af4c3cfb766817cbc1d0ded80e1f785..217427c6215c7b4d087f7011a49e075ec752797e 100644
--- a/core/modules/comment/tests/src/Kernel/Migrate/d7/CommentEntityTranslationCheckRequirementsTest.php
+++ b/core/modules/comment/tests/src/Kernel/Migrate/d7/CommentEntityTranslationCheckRequirementsTest.php
@@ -46,7 +46,7 @@ public function testCheckRequirements($module) {
    *
    * @return string[][]
    */
-  public function providerTestCheckRequirements() {
+  public static function providerTestCheckRequirements() {
     return [
       ['comment'],
       ['node'],
diff --git a/core/modules/comment/tests/src/Kernel/Migrate/d7/MigrateCommentTypeTest.php b/core/modules/comment/tests/src/Kernel/Migrate/d7/MigrateCommentTypeTest.php
index 770464d971f7cbcdf7fa493777aadbd48970706f..2a82104ed5c6df92672467a4ff684c5cb87d1a51 100644
--- a/core/modules/comment/tests/src/Kernel/Migrate/d7/MigrateCommentTypeTest.php
+++ b/core/modules/comment/tests/src/Kernel/Migrate/d7/MigrateCommentTypeTest.php
@@ -119,7 +119,7 @@ public function testNoCommentTypeMigration(array $disabled_source_modules, array
   /**
    * Provides test cases for ::testNoCommentTypeMigration().
    */
-  public function providerTestNoCommentTypeMigration() {
+  public static function providerTestNoCommentTypeMigration() {
     return [
       'Node module is disabled in source' => [
         'Disabled source modules' => ['node'],
diff --git a/core/modules/comment/tests/src/Kernel/Plugin/migrate/source/CommentTypeRequirementsTest.php b/core/modules/comment/tests/src/Kernel/Plugin/migrate/source/CommentTypeRequirementsTest.php
index 7a09ad3cf8ebca42a90d520236ec492c716edc39..03a9b7ed536be41900d73c2a36c451ef540b9ddd 100644
--- a/core/modules/comment/tests/src/Kernel/Plugin/migrate/source/CommentTypeRequirementsTest.php
+++ b/core/modules/comment/tests/src/Kernel/Plugin/migrate/source/CommentTypeRequirementsTest.php
@@ -47,7 +47,7 @@ public function testCheckCommentTypeRequirements(array $disabled_source_modules,
   /**
    * Test cases for ::testCheckCommentTypeRequirements().
    */
-  public function providerTestCheckCommentTypeRequirements() {
+  public static function providerTestCheckCommentTypeRequirements() {
     return [
       'D6 comment is disabled on source' => [
         'Disabled source modules' => ['comment'],
diff --git a/core/modules/comment/tests/src/Kernel/Plugin/migrate/source/CommentTypeTest.php b/core/modules/comment/tests/src/Kernel/Plugin/migrate/source/CommentTypeTest.php
index 91d1bfb41c06d81b0bd41d901d9e4c8dd9141815..f838a575a5bfc1d7f2111a9e1a758a7af71a6e29 100644
--- a/core/modules/comment/tests/src/Kernel/Plugin/migrate/source/CommentTypeTest.php
+++ b/core/modules/comment/tests/src/Kernel/Plugin/migrate/source/CommentTypeTest.php
@@ -21,7 +21,7 @@ class CommentTypeTest extends MigrateSqlSourceTestBase {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     $node_type_rows = [
       [
         'type' => 'page',
diff --git a/core/modules/comment/tests/src/Kernel/Plugin/migrate/source/d6/CommentSourceWithHighWaterTest.php b/core/modules/comment/tests/src/Kernel/Plugin/migrate/source/d6/CommentSourceWithHighWaterTest.php
index 7370609aa24ab78be1880e19895994df62d8254d..69a932f3611038300c0525a732a1827833eff26d 100644
--- a/core/modules/comment/tests/src/Kernel/Plugin/migrate/source/d6/CommentSourceWithHighWaterTest.php
+++ b/core/modules/comment/tests/src/Kernel/Plugin/migrate/source/d6/CommentSourceWithHighWaterTest.php
@@ -21,7 +21,7 @@ class CommentSourceWithHighWaterTest extends MigrateSqlSourceTestBase {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     $tests = [];
 
     // The source data.
diff --git a/core/modules/comment/tests/src/Kernel/Plugin/migrate/source/d6/CommentTest.php b/core/modules/comment/tests/src/Kernel/Plugin/migrate/source/d6/CommentTest.php
index 76f6ac2a341c73ad7f22c6b72d8639ec0d07161b..38191327f65caed33c0001cfaaa6afe52b7430e0 100644
--- a/core/modules/comment/tests/src/Kernel/Plugin/migrate/source/d6/CommentTest.php
+++ b/core/modules/comment/tests/src/Kernel/Plugin/migrate/source/d6/CommentTest.php
@@ -20,7 +20,7 @@ class CommentTest extends MigrateSqlSourceTestBase {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     $tests = [];
 
     // The source data.
diff --git a/core/modules/comment/tests/src/Kernel/Plugin/migrate/source/d7/CommentEntityTranslationTest.php b/core/modules/comment/tests/src/Kernel/Plugin/migrate/source/d7/CommentEntityTranslationTest.php
index 800929388fe58c6db14f48a7d61e7fed58bf3cd4..8823e90ff9d9558fc3cabab806f03b29d60304ca 100644
--- a/core/modules/comment/tests/src/Kernel/Plugin/migrate/source/d7/CommentEntityTranslationTest.php
+++ b/core/modules/comment/tests/src/Kernel/Plugin/migrate/source/d7/CommentEntityTranslationTest.php
@@ -22,7 +22,7 @@ class CommentEntityTranslationTest extends MigrateSqlSourceTestBase {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     $tests = [];
 
     // The source data.
diff --git a/core/modules/comment/tests/src/Kernel/Plugin/migrate/source/d7/CommentTest.php b/core/modules/comment/tests/src/Kernel/Plugin/migrate/source/d7/CommentTest.php
index ad8f5902931963fa2b7b9a18c563d91b35771ecb..cca51f2797f6e3c584f180f65d6537c40c069fa7 100644
--- a/core/modules/comment/tests/src/Kernel/Plugin/migrate/source/d7/CommentTest.php
+++ b/core/modules/comment/tests/src/Kernel/Plugin/migrate/source/d7/CommentTest.php
@@ -22,7 +22,7 @@ class CommentTest extends MigrateSqlSourceTestBase {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     $tests = [];
 
     // The source data.
diff --git a/core/modules/config/tests/src/Unit/Menu/ConfigLocalTasksTest.php b/core/modules/config/tests/src/Unit/Menu/ConfigLocalTasksTest.php
index 496b57fbfbc8ce0f0951bc73f8cffe353305a852..753f949776d8566a73d024d51a229967fb7b3c1f 100644
--- a/core/modules/config/tests/src/Unit/Menu/ConfigLocalTasksTest.php
+++ b/core/modules/config/tests/src/Unit/Menu/ConfigLocalTasksTest.php
@@ -33,7 +33,7 @@ public function testConfigAdminLocalTasks($route, $expected) {
   /**
    * Provides a list of routes to test.
    */
-  public function getConfigAdminRoutes() {
+  public static function getConfigAdminRoutes() {
     return [
       ['config.sync', [['config.sync', 'config.import', 'config.export']]],
       ['config.import_full', [['config.sync', 'config.import', 'config.export'], ['config.import_full', 'config.import_single']]],
diff --git a/core/modules/config_translation/tests/src/Kernel/Plugin/migrate/source/d6/ProfileFieldTranslationTest.php b/core/modules/config_translation/tests/src/Kernel/Plugin/migrate/source/d6/ProfileFieldTranslationTest.php
index 22dd4150f33ec3513d5155e186f4c871d0b11c35..233fd4c4c7b9bf65bb82fd10d902e88e5b7942b4 100644
--- a/core/modules/config_translation/tests/src/Kernel/Plugin/migrate/source/d6/ProfileFieldTranslationTest.php
+++ b/core/modules/config_translation/tests/src/Kernel/Plugin/migrate/source/d6/ProfileFieldTranslationTest.php
@@ -22,7 +22,7 @@ class ProfileFieldTranslationTest extends MigrateSqlSourceTestBase {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     $test = [];
     $test[0]['source_data'] = [
       'profile_fields' => [
diff --git a/core/modules/config_translation/tests/src/Unit/ConfigNamesMapperTest.php b/core/modules/config_translation/tests/src/Unit/ConfigNamesMapperTest.php
index 23a13bed5f97c5a684f9ef9ef9d98d9d27de513a..2eaa4a14d72b5b34a4c9bef9cf15b76c7f3d73b4 100644
--- a/core/modules/config_translation/tests/src/Unit/ConfigNamesMapperTest.php
+++ b/core/modules/config_translation/tests/src/Unit/ConfigNamesMapperTest.php
@@ -523,7 +523,7 @@ public function testHasSchema(array $mock_return_values, $expected) {
    *   hasConfigSchema() as the first value and the expected return value of
    *   ConfigNamesMapper::hasSchema() as the second value.
    */
-  public function providerTestHasSchema() {
+  public static function providerTestHasSchema() {
     return [
       [[TRUE], TRUE],
       [[FALSE], FALSE],
@@ -570,7 +570,7 @@ public function testHasTranslatable(array $mock_return_values, $expected) {
    *   hasTranslatable() as the first value and the expected return value of
    *   ConfigNamesMapper::hasTranslatable() as the second value.
    */
-  public function providerTestHasTranslatable() {
+  public static function providerTestHasTranslatable() {
     return [
       [[], FALSE],
       [[TRUE], TRUE],
@@ -621,7 +621,7 @@ public function testHasTranslation(array $mock_return_values, $expected) {
    *   hasTranslation() as the first value and the expected return value of
    *   ConfigNamesMapper::hasTranslation() as the second value.
    */
-  public function providerTestHasTranslation() {
+  public static function providerTestHasTranslation() {
     return [
       [[TRUE], TRUE],
       [[FALSE], FALSE],
diff --git a/core/modules/contact/tests/src/Kernel/Plugin/migrate/source/ContactCategoryTest.php b/core/modules/contact/tests/src/Kernel/Plugin/migrate/source/ContactCategoryTest.php
index 1ea9b337f23987215e20bd34b68fa92b7ec49eb7..c8f6fa86d3a6cdff92c59607029e1d8ad6490c5f 100644
--- a/core/modules/contact/tests/src/Kernel/Plugin/migrate/source/ContactCategoryTest.php
+++ b/core/modules/contact/tests/src/Kernel/Plugin/migrate/source/ContactCategoryTest.php
@@ -20,7 +20,7 @@ class ContactCategoryTest extends MigrateSqlSourceTestBase {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     $tests = [
       [
         'source_data' => [],
diff --git a/core/modules/contact/tests/src/Kernel/Plugin/migrate/source/d6/ContactSettingsTest.php b/core/modules/contact/tests/src/Kernel/Plugin/migrate/source/d6/ContactSettingsTest.php
index 9c7952f74efb74d56289bc988ac42f8395741349..18bdc577b44037110320a904f73ff902c6877062 100644
--- a/core/modules/contact/tests/src/Kernel/Plugin/migrate/source/d6/ContactSettingsTest.php
+++ b/core/modules/contact/tests/src/Kernel/Plugin/migrate/source/d6/ContactSettingsTest.php
@@ -20,7 +20,7 @@ class ContactSettingsTest extends MigrateSqlSourceTestBase {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     $tests = [];
 
     $tests[0]['source_data']['variable'] = [
diff --git a/core/modules/content_moderation/tests/src/Functional/ModerationActionsTest.php b/core/modules/content_moderation/tests/src/Functional/ModerationActionsTest.php
index c678595ab6942846a91af05acd0eb68ee4bc6f26..6efd560f2c885d5fb09168578de9971cd020e775 100644
--- a/core/modules/content_moderation/tests/src/Functional/ModerationActionsTest.php
+++ b/core/modules/content_moderation/tests/src/Functional/ModerationActionsTest.php
@@ -102,7 +102,7 @@ public function testNodeStatusActions($action, $bundle, $warning_appears, $start
    * @return array
    *   An array of test cases.
    */
-  public function nodeStatusActionsTestCases() {
+  public static function nodeStatusActionsTestCases() {
     return [
       'Moderated bundle shows warning (publish action)' => [
         'node_publish_action',
diff --git a/core/modules/content_moderation/tests/src/Functional/ViewsModerationStateFilterTest.php b/core/modules/content_moderation/tests/src/Functional/ViewsModerationStateFilterTest.php
index cdaae0d2e41f115bbf21aac7b878c4c8e8915f81..97554b4427dbbe37e58aee598d3245d490c50ffd 100644
--- a/core/modules/content_moderation/tests/src/Functional/ViewsModerationStateFilterTest.php
+++ b/core/modules/content_moderation/tests/src/Functional/ViewsModerationStateFilterTest.php
@@ -261,7 +261,7 @@ protected function executeAndAssertIdenticalResultset(ViewEntityInterface $view_
    * @return string[]
    *   An array of view IDs.
    */
-  public function providerTestWorkflowChanges() {
+  public static function providerTestWorkflowChanges() {
     return [
       'view on base table, filter on base table' => [
         'test_content_moderation_state_filter_base_table',
diff --git a/core/modules/content_moderation/tests/src/Kernel/ContentModerationPermissionsTest.php b/core/modules/content_moderation/tests/src/Kernel/ContentModerationPermissionsTest.php
index 8498d8d97668718aa5faaee948d2ed84c14a875b..e26ddcf5348ac2204077a9dd7b7afebab52869d8 100644
--- a/core/modules/content_moderation/tests/src/Kernel/ContentModerationPermissionsTest.php
+++ b/core/modules/content_moderation/tests/src/Kernel/ContentModerationPermissionsTest.php
@@ -48,7 +48,7 @@ public function testPermissions($workflow, $permissions) {
    * @return array
    *   Content moderation permissions based test cases.
    */
-  public function permissionsTestCases() {
+  public static function permissionsTestCases() {
     return [
       'Simple Content Moderation Workflow' => [
         [
diff --git a/core/modules/content_moderation/tests/src/Kernel/ContentModerationStateTest.php b/core/modules/content_moderation/tests/src/Kernel/ContentModerationStateTest.php
index 6317a1f4ec5dc67008b5dec117fe9d11aa7a39c2..0a9b692f02399ff3a7c1e050125efc2bde03cd8d 100644
--- a/core/modules/content_moderation/tests/src/Kernel/ContentModerationStateTest.php
+++ b/core/modules/content_moderation/tests/src/Kernel/ContentModerationStateTest.php
@@ -169,7 +169,7 @@ public function testBasicModeration($entity_type_id) {
   /**
    * Test cases for basic moderation test.
    */
-  public function basicModerationTestCases() {
+  public static function basicModerationTestCases() {
     return [
       'Nodes' => [
         'node',
@@ -480,7 +480,7 @@ public function testModerationWithSpecialLanguages($original_language, $updated_
   /**
    * Test cases for ::testModerationWithSpecialLanguages().
    */
-  public function moderationWithSpecialLanguagesTestCases() {
+  public static function moderationWithSpecialLanguagesTestCases() {
     return [
       'Not specified to not specified' => [
         LanguageInterface::LANGCODE_NOT_SPECIFIED,
diff --git a/core/modules/content_moderation/tests/src/Kernel/EntityStateChangeValidationTest.php b/core/modules/content_moderation/tests/src/Kernel/EntityStateChangeValidationTest.php
index f2e74d743079f1d4064add56247eed0e5ab595a9..80ebf288c2179534b3294e2f3a014b48d6c10a94 100644
--- a/core/modules/content_moderation/tests/src/Kernel/EntityStateChangeValidationTest.php
+++ b/core/modules/content_moderation/tests/src/Kernel/EntityStateChangeValidationTest.php
@@ -364,7 +364,7 @@ public function testTransitionAccessValidation($permissions, $target_state, $mes
   /**
    * Test cases for ::testTransitionAccessValidation.
    */
-  public function transitionAccessValidationTestCases() {
+  public static function transitionAccessValidationTestCases() {
     return [
       'Invalid transition, no permissions validated' => [
         [],
diff --git a/core/modules/content_moderation/tests/src/Kernel/EntityTypeInfoTest.php b/core/modules/content_moderation/tests/src/Kernel/EntityTypeInfoTest.php
index 6090269ac3a1511ceeea8c15481a34dda781da4c..377908fff29cd7ae40c8a3fcd433b13cfa23e90d 100644
--- a/core/modules/content_moderation/tests/src/Kernel/EntityTypeInfoTest.php
+++ b/core/modules/content_moderation/tests/src/Kernel/EntityTypeInfoTest.php
@@ -98,7 +98,7 @@ public function testEntityTypeAlter($entity_type_id, $moderatable) {
    *   - An entity type ID.
    *   - Whether the entity type is moderatable or not.
    */
-  public function providerTestEntityTypeAlter() {
+  public static function providerTestEntityTypeAlter() {
     $tests = [];
     $tests['non_internal_non_revisionable'] = ['entity_test', FALSE];
     $tests['non_internal_revisionable'] = ['entity_test_rev', TRUE];
diff --git a/core/modules/content_moderation/tests/src/Kernel/ModerationInformationTest.php b/core/modules/content_moderation/tests/src/Kernel/ModerationInformationTest.php
index 786e2b8924dcd2bae681e2b990c91f736bb819e9..b2b708594a2c4023a429165bfa262bf7221adecc 100644
--- a/core/modules/content_moderation/tests/src/Kernel/ModerationInformationTest.php
+++ b/core/modules/content_moderation/tests/src/Kernel/ModerationInformationTest.php
@@ -97,7 +97,7 @@ public function testIsDefaultRevisionPublished($initial_state, $final_state, $in
   /**
    * Test cases for ::testIsDefaultRevisionPublished.
    */
-  public function isDefaultRevisionPublishedTestCases() {
+  public static function isDefaultRevisionPublishedTestCases() {
     return [
       'Draft to draft' => [
         'draft',
diff --git a/core/modules/content_moderation/tests/src/Kernel/ModerationStateFieldItemListTest.php b/core/modules/content_moderation/tests/src/Kernel/ModerationStateFieldItemListTest.php
index 25a32002e8bc77876746b9f207c311b36cfbd583..ac93ad291f975a544341f2cc2c0d208c799f5536 100644
--- a/core/modules/content_moderation/tests/src/Kernel/ModerationStateFieldItemListTest.php
+++ b/core/modules/content_moderation/tests/src/Kernel/ModerationStateFieldItemListTest.php
@@ -213,7 +213,7 @@ public function testModerationStateChanges($initial_state, $final_state, $first_
   /**
    * Data provider for ::testModerationStateChanges.
    */
-  public function moderationStateChangesTestCases() {
+  public static function moderationStateChangesTestCases() {
     return [
       'Draft to draft' => [
         'draft',
@@ -298,7 +298,7 @@ public function testEntityUnserialize($state, $default, $published) {
   /**
    * Test cases for ::testEntityUnserialize.
    */
-  public function entityUnserializeTestCases() {
+  public static function entityUnserializeTestCases() {
     return [
       'Default draft state' => [
         'draft',
@@ -332,7 +332,7 @@ public function testModeratedEntityWithExistingId($state) {
   /**
    * Tests cases for ::testModeratedEntityWithExistingId.
    */
-  public function moderatedEntityWithExistingIdTestCases() {
+  public static function moderatedEntityWithExistingIdTestCases() {
     return [
       'Draft non-default state' => [
         'draft',
diff --git a/core/modules/content_moderation/tests/src/Kernel/StateFormatterTest.php b/core/modules/content_moderation/tests/src/Kernel/StateFormatterTest.php
index 240af223463df1f34d80a75a2347c9324388c097..d8bc629e43f65a4f2a7e2c3045518555c4106293 100644
--- a/core/modules/content_moderation/tests/src/Kernel/StateFormatterTest.php
+++ b/core/modules/content_moderation/tests/src/Kernel/StateFormatterTest.php
@@ -64,7 +64,7 @@ public function testStateFieldFormatter($field_value, $formatter_settings, $expe
   /**
    * Test cases for testStateFieldFormatter().
    */
-  public function formatterTestCases() {
+  public static function formatterTestCases() {
     return [
       'Draft State' => [
         'draft',
diff --git a/core/modules/content_moderation/tests/src/Kernel/WorkspacesContentModerationStateTest.php b/core/modules/content_moderation/tests/src/Kernel/WorkspacesContentModerationStateTest.php
index 9f9776682e5dbdfeab615d85dc1fdd5d98bfd561..9e4b59a3097b5fdb3d64e6e35c871c2f9d2823d7 100644
--- a/core/modules/content_moderation/tests/src/Kernel/WorkspacesContentModerationStateTest.php
+++ b/core/modules/content_moderation/tests/src/Kernel/WorkspacesContentModerationStateTest.php
@@ -155,7 +155,7 @@ public function testContentModerationIntegrationWithWorkspaces() {
   /**
    * Test cases for basic moderation test.
    */
-  public function basicModerationTestCases() {
+  public static function basicModerationTestCases() {
     return [
       'Nodes' => [
         'node',
diff --git a/core/modules/content_moderation/tests/src/Unit/ContentModerationRouteSubscriberTest.php b/core/modules/content_moderation/tests/src/Unit/ContentModerationRouteSubscriberTest.php
index 10970b448479ac1a6113b65c20b7128e2b83bba9..1c1a942d18aa9bea0e2470df16d77a63be3b769d 100644
--- a/core/modules/content_moderation/tests/src/Unit/ContentModerationRouteSubscriberTest.php
+++ b/core/modules/content_moderation/tests/src/Unit/ContentModerationRouteSubscriberTest.php
@@ -69,7 +69,7 @@ protected function setupEntityTypes() {
   /**
    * Data provider for ::testSetLatestRevisionFlag.
    */
-  public function setLatestRevisionFlagTestCases() {
+  public static function setLatestRevisionFlagTestCases() {
     return [
       'Entity parameter not on an entity form' => [
         [],
diff --git a/core/modules/content_moderation/tests/src/Unit/ContentPreprocessTest.php b/core/modules/content_moderation/tests/src/Unit/ContentPreprocessTest.php
index 0a12971d0dfca4cc0bdf2ba860c82218e1f30325..7c8071b46e0629c923369c09371cc9584397c71f 100644
--- a/core/modules/content_moderation/tests/src/Unit/ContentPreprocessTest.php
+++ b/core/modules/content_moderation/tests/src/Unit/ContentPreprocessTest.php
@@ -29,7 +29,7 @@ public function testIsLatestVersionPage($route_name, $route_nid, $check_nid, $re
   /**
    * Data provider for self::testIsLatestVersionPage().
    */
-  public function routeNodeProvider() {
+  public static function routeNodeProvider() {
     return [
       ['entity.node.canonical', 1, 1, FALSE, 'Not on the latest version tab route.'],
       ['entity.node.latest_version', 1, 1, TRUE, 'On the latest version tab route, with the route node.'],
diff --git a/core/modules/content_moderation/tests/src/Unit/LatestRevisionCheckTest.php b/core/modules/content_moderation/tests/src/Unit/LatestRevisionCheckTest.php
index c384425e3e5e9fa589cba517c5a41ac7f227a2f7..3f094dc070036f586abbf583b266d8aab14dcbc8 100644
--- a/core/modules/content_moderation/tests/src/Unit/LatestRevisionCheckTest.php
+++ b/core/modules/content_moderation/tests/src/Unit/LatestRevisionCheckTest.php
@@ -105,7 +105,7 @@ public function testLatestAccessPermissions($entity_class, $entity_type, $has_pe
   /**
    * Data provider for testLastAccessPermissions().
    */
-  public function accessSituationProvider() {
+  public static function accessSituationProvider() {
     return [
       // Node with global permissions and latest version.
       [Node::class, 'node', TRUE, ['view latest version', 'view any unpublished content'], FALSE, AccessResultAllowed::class],
diff --git a/core/modules/content_moderation/tests/src/Unit/ModerationInformationTest.php b/core/modules/content_moderation/tests/src/Unit/ModerationInformationTest.php
index 0d92309af9ae91dfd9097bdd06224865cc9a2f9c..f35b3b7f29ece200a57a38eeeaeca0bce5359cd7 100644
--- a/core/modules/content_moderation/tests/src/Unit/ModerationInformationTest.php
+++ b/core/modules/content_moderation/tests/src/Unit/ModerationInformationTest.php
@@ -146,7 +146,7 @@ public function testShouldModerateEntities($workflow, $expected) {
   /**
    * Data provider for several tests.
    */
-  public function providerWorkflow() {
+  public static function providerWorkflow() {
     return [
       [NULL, FALSE],
       ['workflow', TRUE],
diff --git a/core/modules/content_moderation/tests/src/Unit/StateTransitionValidationTest.php b/core/modules/content_moderation/tests/src/Unit/StateTransitionValidationTest.php
index bb314149759398e2dcd81bf92d3b125dbf4bff83..b2aaaeee7827744aa1679ff00ac93d74c55c7ce4 100644
--- a/core/modules/content_moderation/tests/src/Unit/StateTransitionValidationTest.php
+++ b/core/modules/content_moderation/tests/src/Unit/StateTransitionValidationTest.php
@@ -98,7 +98,7 @@ public function testUserSensitiveValidTransitions($from_id, $to_id, $permission,
   /**
    * Data provider for the user transition test.
    */
-  public function userTransitionsProvider() {
+  public static function userTransitionsProvider() {
     // The user has the right permission, so let it through.
     $ret[] = ['draft', 'draft', 'use process transition draft', TRUE, TRUE];
 
diff --git a/core/modules/content_translation/tests/src/Kernel/ContentTranslationHandlerTest.php b/core/modules/content_translation/tests/src/Kernel/ContentTranslationHandlerTest.php
index 7d27abd9585cb8400b385ced4414d80818ac1576..000825ebdf5771e5d36935460a06d7255b5ec48d 100644
--- a/core/modules/content_translation/tests/src/Kernel/ContentTranslationHandlerTest.php
+++ b/core/modules/content_translation/tests/src/Kernel/ContentTranslationHandlerTest.php
@@ -134,7 +134,7 @@ public function testEntityFormSharedElements(array $element, $default_translatio
    *   An array of test cases, each one containing the element to alter, the
    *   form state, and the expected altered element.
    */
-  public function providerTestEntityFormSharedElements() {
+  public static function providerTestEntityFormSharedElements() {
     $tests = [];
 
     $element = [];
diff --git a/core/modules/content_translation/tests/src/Kernel/Plugin/migrate/source/d7/EntityTranslationSettingsTest.php b/core/modules/content_translation/tests/src/Kernel/Plugin/migrate/source/d7/EntityTranslationSettingsTest.php
index 7a25bf599da28e245c7c794619fef7af9fcc4ac4..50c7e84e5eb76abfd00ec3d131861ea49c4f06b8 100644
--- a/core/modules/content_translation/tests/src/Kernel/Plugin/migrate/source/d7/EntityTranslationSettingsTest.php
+++ b/core/modules/content_translation/tests/src/Kernel/Plugin/migrate/source/d7/EntityTranslationSettingsTest.php
@@ -25,7 +25,7 @@ class EntityTranslationSettingsTest extends MigrateSqlSourceTestBase {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     $tests = [];
 
     // Source data when there's no entity type that uses entity translation.
diff --git a/core/modules/content_translation/tests/src/Unit/Menu/ContentTranslationLocalTasksTest.php b/core/modules/content_translation/tests/src/Unit/Menu/ContentTranslationLocalTasksTest.php
index a21d03fb576360b23c5d0b2a443d8a6574ae7843..be57e9eb445866113bf144bbdbfbf4989b06eebb 100644
--- a/core/modules/content_translation/tests/src/Unit/Menu/ContentTranslationLocalTasksTest.php
+++ b/core/modules/content_translation/tests/src/Unit/Menu/ContentTranslationLocalTasksTest.php
@@ -55,7 +55,7 @@ public function testBlockAdminDisplay($route, $expected) {
   /**
    * Provides a list of routes to test.
    */
-  public function providerTestBlockAdminDisplay() {
+  public static function providerTestBlockAdminDisplay() {
     return [
       [
         'entity.node.canonical',
diff --git a/core/modules/contextual/tests/src/Kernel/ContextualUnitTest.php b/core/modules/contextual/tests/src/Kernel/ContextualUnitTest.php
index dc6cd8ef0fd2b0a5032e85b166d5a285b90a8e8b..418219627d2db07be3afff95645b9c221e8d17e5 100644
--- a/core/modules/contextual/tests/src/Kernel/ContextualUnitTest.php
+++ b/core/modules/contextual/tests/src/Kernel/ContextualUnitTest.php
@@ -26,7 +26,7 @@ class ContextualUnitTest extends KernelTestBase {
    * @return array[]
    *   Test cases.
    */
-  public function contextualLinksDataProvider(): array {
+  public static function contextualLinksDataProvider(): array {
     $tests['one group, one dynamic path argument, no metadata'] = [
       [
         'node' => [
diff --git a/core/modules/datetime/tests/src/Kernel/DateTimeItemTest.php b/core/modules/datetime/tests/src/Kernel/DateTimeItemTest.php
index 5119e78b88b4ad6865d64fd8f4050b48fde4e2b0..159b66797436463b55b969fe342ef91f018cb56e 100644
--- a/core/modules/datetime/tests/src/Kernel/DateTimeItemTest.php
+++ b/core/modules/datetime/tests/src/Kernel/DateTimeItemTest.php
@@ -272,7 +272,7 @@ public function testDatetimeValidation($value) {
   /**
    * Provider for testDatetimeValidation().
    */
-  public function datetimeValidationProvider() {
+  public static function datetimeValidationProvider() {
     return [
       // Valid ISO 8601 dates, but unsupported by DateTimeItem.
       ['2014-01-01T20:00:00Z'],
@@ -332,7 +332,7 @@ public function testDateOnlyValidation($value) {
   /**
    * Provider for testDatetimeValidation().
    */
-  public function dateOnlyValidationProvider() {
+  public static function dateOnlyValidationProvider() {
     return [
       // Valid date strings, but unsupported by DateTimeItem.
       ['Thu, 03 Nov 2014'],
diff --git a/core/modules/datetime/tests/src/Unit/Plugin/migrate/field/DateFieldTest.php b/core/modules/datetime/tests/src/Unit/Plugin/migrate/field/DateFieldTest.php
index b5dc4b4f42b7bb8750ca37ce35d620ccea1bd2ba..54833c375481ba51b41450d6197e1d439f67c860 100644
--- a/core/modules/datetime/tests/src/Unit/Plugin/migrate/field/DateFieldTest.php
+++ b/core/modules/datetime/tests/src/Unit/Plugin/migrate/field/DateFieldTest.php
@@ -66,7 +66,7 @@ public function testDefineValueProcessPipeline($data, $from_format, $to_format)
   /**
    * Provides data for testDefineValueProcessPipeline().
    */
-  public function providerTestDefineValueProcessPipeline() {
+  public static function providerTestDefineValueProcessPipeline() {
     return [
       [['type' => 'date'], 'Y-m-d\TH:i:s', 'Y-m-d\TH:i:s'],
       [['type' => 'datestamp'], 'U', 'U'],
diff --git a/core/modules/editor/tests/src/Unit/EditorXssFilter/StandardTest.php b/core/modules/editor/tests/src/Unit/EditorXssFilter/StandardTest.php
index ec4c927676db23532ebb169228aad9822f85b15c..c0d1d0f403eab74dbd195550871933d2eb20c726 100644
--- a/core/modules/editor/tests/src/Unit/EditorXssFilter/StandardTest.php
+++ b/core/modules/editor/tests/src/Unit/EditorXssFilter/StandardTest.php
@@ -58,7 +58,7 @@ protected function setUp(): void {
    *
    * @see \Drupal\Tests\editor\Unit\editor\EditorXssFilter\StandardTest::testFilterXss()
    */
-  public function providerTestFilterXss() {
+  public static function providerTestFilterXss() {
     $data = [];
     $data[] = ['<p>Hello, world!</p><unknown>Pink Fairy Armadillo</unknown>', '<p>Hello, world!</p><unknown>Pink Fairy Armadillo</unknown>'];
     $data[] = ['<p style="color:red">Hello, world!</p><unknown>Pink Fairy Armadillo</unknown>', '<p>Hello, world!</p><unknown>Pink Fairy Armadillo</unknown>'];
@@ -580,7 +580,7 @@ public function testBlacklistMode($value, $expected, $message, array $disallowed
    *     - The assertion message.
    *     - (optional) The disallowed HTML tags to be passed to \Drupal\Component\Utility\Xss::filter().
    */
-  public function providerTestBlackListMode() {
+  public static function providerTestBlackListMode() {
     return [
       [
         '<unknown style="visibility:hidden">Pink Fairy Armadillo</unknown><video src="gerenuk.mp4"><script>alert(0)</script>',
diff --git a/core/modules/field/tests/src/Kernel/Number/NumberItemTest.php b/core/modules/field/tests/src/Kernel/Number/NumberItemTest.php
index 6d5f6b4a58a042d0bd104ec46d86983eebf40bb4..0ccef5319f8c4088c6fcc468067f1b9b854c0f1a 100644
--- a/core/modules/field/tests/src/Kernel/Number/NumberItemTest.php
+++ b/core/modules/field/tests/src/Kernel/Number/NumberItemTest.php
@@ -167,7 +167,7 @@ public function testConstraints($type, $min, $max, $value, $expect_constraints,
    * @return \Generator
    *   The test data.
    */
-  public function dataNumberFieldSettingsProvider() {
+  public static function dataNumberFieldSettingsProvider() {
     yield ['integer', NULL, NULL, -100, FALSE];
     yield ['integer', 0, NULL, -100, TRUE, 'field_integer: the value may be no less than 0.'];
     yield ['integer', 10, NULL, 100, FALSE];
@@ -243,7 +243,7 @@ public function testFormFieldMinMaxValue(int|float|string $min, int|float|string
    * @return \Generator
    *   The test data.
    */
-  public function dataTestMinMaxValue() {
+  public static function dataTestMinMaxValue() {
     yield [1, 10, 5, FALSE, ''];
     yield [10, 5, 6, TRUE, 'The minimum value must be less than or equal to 5.'];
     yield [1, 0, 6, TRUE, 'The minimum value must be less than or equal to 0.'];
diff --git a/core/modules/field/tests/src/Kernel/Plugin/migrate/source/d6/FieldInstanceLabelDescriptionTranslationTest.php b/core/modules/field/tests/src/Kernel/Plugin/migrate/source/d6/FieldInstanceLabelDescriptionTranslationTest.php
index d718f11a5b212220bc4ec6f06367badc0bf81117..9efb332628a0bf81a76c5ac1a1bde970ebe2ed89 100644
--- a/core/modules/field/tests/src/Kernel/Plugin/migrate/source/d6/FieldInstanceLabelDescriptionTranslationTest.php
+++ b/core/modules/field/tests/src/Kernel/Plugin/migrate/source/d6/FieldInstanceLabelDescriptionTranslationTest.php
@@ -26,7 +26,7 @@ class FieldInstanceLabelDescriptionTranslationTest extends MigrateSqlSourceTestB
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     $test = [];
 
     // The source data.
diff --git a/core/modules/field/tests/src/Kernel/Plugin/migrate/source/d6/FieldInstanceOptionTranslationTest.php b/core/modules/field/tests/src/Kernel/Plugin/migrate/source/d6/FieldInstanceOptionTranslationTest.php
index 3ec153949a4ea4021573868e4f456dde3dcbbed8..8abca1b4bc40ccfa98aa624362b5b7b29e7dbb88 100644
--- a/core/modules/field/tests/src/Kernel/Plugin/migrate/source/d6/FieldInstanceOptionTranslationTest.php
+++ b/core/modules/field/tests/src/Kernel/Plugin/migrate/source/d6/FieldInstanceOptionTranslationTest.php
@@ -18,7 +18,7 @@ class FieldInstanceOptionTranslationTest extends FieldOptionTranslationTest {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     $test = parent::providerSource();
 
     // FieldInstanceOptionTranslation extends FieldOptionTranslation so the
diff --git a/core/modules/field/tests/src/Kernel/Plugin/migrate/source/d6/FieldInstancePerFormDisplayTest.php b/core/modules/field/tests/src/Kernel/Plugin/migrate/source/d6/FieldInstancePerFormDisplayTest.php
index 59900135c2d1553ed523f4bc3e7882037c2f2dcb..563619d937bf9919955fe0f02d696f5484d58732 100644
--- a/core/modules/field/tests/src/Kernel/Plugin/migrate/source/d6/FieldInstancePerFormDisplayTest.php
+++ b/core/modules/field/tests/src/Kernel/Plugin/migrate/source/d6/FieldInstancePerFormDisplayTest.php
@@ -22,7 +22,7 @@ class FieldInstancePerFormDisplayTest extends MigrateSqlSourceTestBase {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     $tests = [
       [
         'source_data' => [],
diff --git a/core/modules/field/tests/src/Kernel/Plugin/migrate/source/d6/FieldInstancePerViewModeTest.php b/core/modules/field/tests/src/Kernel/Plugin/migrate/source/d6/FieldInstancePerViewModeTest.php
index e46d00b15c100875c872d803e39ed0064b3094c1..6b0e91b80e336478379c96870196a21fbc0a228f 100644
--- a/core/modules/field/tests/src/Kernel/Plugin/migrate/source/d6/FieldInstancePerViewModeTest.php
+++ b/core/modules/field/tests/src/Kernel/Plugin/migrate/source/d6/FieldInstancePerViewModeTest.php
@@ -20,7 +20,7 @@ class FieldInstancePerViewModeTest extends MigrateSqlSourceTestBase {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     $tests = [
       [
         'source_data' => [],
diff --git a/core/modules/field/tests/src/Kernel/Plugin/migrate/source/d6/FieldInstanceTest.php b/core/modules/field/tests/src/Kernel/Plugin/migrate/source/d6/FieldInstanceTest.php
index 2fd757f771a508cf3ab685694beb02ba01e6a4cf..71c17a21d6173993072448183ddc08462039af80 100644
--- a/core/modules/field/tests/src/Kernel/Plugin/migrate/source/d6/FieldInstanceTest.php
+++ b/core/modules/field/tests/src/Kernel/Plugin/migrate/source/d6/FieldInstanceTest.php
@@ -20,7 +20,7 @@ class FieldInstanceTest extends MigrateSqlSourceTestBase {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     $tests = [
       [
         'source_data' => [],
diff --git a/core/modules/field/tests/src/Kernel/Plugin/migrate/source/d6/FieldOptionTranslationTest.php b/core/modules/field/tests/src/Kernel/Plugin/migrate/source/d6/FieldOptionTranslationTest.php
index 74f8b92ffdd26142d52ec943dba9048e0ea3a9be..fc52d119c557dcdba424cda402d6ae857e361ef0 100644
--- a/core/modules/field/tests/src/Kernel/Plugin/migrate/source/d6/FieldOptionTranslationTest.php
+++ b/core/modules/field/tests/src/Kernel/Plugin/migrate/source/d6/FieldOptionTranslationTest.php
@@ -22,7 +22,7 @@ class FieldOptionTranslationTest extends MigrateSqlSourceTestBase {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     $test = [];
 
     // The source data.
diff --git a/core/modules/field/tests/src/Kernel/Plugin/migrate/source/d6/FieldTest.php b/core/modules/field/tests/src/Kernel/Plugin/migrate/source/d6/FieldTest.php
index e83d05e7c43c7ea92241aa9520ec65dd96f6cb5b..97fbdf55744f9570a50323ab71be24ed9c2ccb7d 100644
--- a/core/modules/field/tests/src/Kernel/Plugin/migrate/source/d6/FieldTest.php
+++ b/core/modules/field/tests/src/Kernel/Plugin/migrate/source/d6/FieldTest.php
@@ -20,7 +20,7 @@ class FieldTest extends MigrateSqlSourceTestBase {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     $tests = [
       [
         'source_data' => [],
diff --git a/core/modules/field/tests/src/Kernel/Plugin/migrate/source/d7/FieldInstanceLabelDescriptionTranslationTest.php b/core/modules/field/tests/src/Kernel/Plugin/migrate/source/d7/FieldInstanceLabelDescriptionTranslationTest.php
index 8737c4e746966e5e2e020e50441f37a1a44b7663..a1e22b91ba6cc6b1b8d5af75d713f2197f672667 100644
--- a/core/modules/field/tests/src/Kernel/Plugin/migrate/source/d7/FieldInstanceLabelDescriptionTranslationTest.php
+++ b/core/modules/field/tests/src/Kernel/Plugin/migrate/source/d7/FieldInstanceLabelDescriptionTranslationTest.php
@@ -26,7 +26,7 @@ class FieldInstanceLabelDescriptionTranslationTest extends MigrateSqlSourceTestB
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     $test = [];
 
     // The source data.
diff --git a/core/modules/field/tests/src/Kernel/Plugin/migrate/source/d7/FieldInstancePerFormDisplayTest.php b/core/modules/field/tests/src/Kernel/Plugin/migrate/source/d7/FieldInstancePerFormDisplayTest.php
index 0482ce8afdbcd86e307279f682249604c9b9bad1..d44d6cd412f8569c380b6cc7b45f87d2472ee8bf 100644
--- a/core/modules/field/tests/src/Kernel/Plugin/migrate/source/d7/FieldInstancePerFormDisplayTest.php
+++ b/core/modules/field/tests/src/Kernel/Plugin/migrate/source/d7/FieldInstancePerFormDisplayTest.php
@@ -20,7 +20,7 @@ class FieldInstancePerFormDisplayTest extends MigrateSqlSourceTestBase {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     $tests = [
       [
         'source_data' => [],
diff --git a/core/modules/field/tests/src/Kernel/Plugin/migrate/source/d7/FieldInstancePerViewModeTest.php b/core/modules/field/tests/src/Kernel/Plugin/migrate/source/d7/FieldInstancePerViewModeTest.php
index 64c7d50ad9fa21582c7f022a12c3688b859e9978..d748f95a9a5d4cdc83fb1720ac1dba9b270b71aa 100644
--- a/core/modules/field/tests/src/Kernel/Plugin/migrate/source/d7/FieldInstancePerViewModeTest.php
+++ b/core/modules/field/tests/src/Kernel/Plugin/migrate/source/d7/FieldInstancePerViewModeTest.php
@@ -20,7 +20,7 @@ class FieldInstancePerViewModeTest extends MigrateSqlSourceTestBase {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     $tests = [
       [
         'source_data' => [],
diff --git a/core/modules/field/tests/src/Kernel/Plugin/migrate/source/d7/FieldInstanceTest.php b/core/modules/field/tests/src/Kernel/Plugin/migrate/source/d7/FieldInstanceTest.php
index 8cd0316603114ab53b82aefc9d66587ca2ca5532..bbbe5a5f249ff12c0d83488a1266cf867cdf1f63 100644
--- a/core/modules/field/tests/src/Kernel/Plugin/migrate/source/d7/FieldInstanceTest.php
+++ b/core/modules/field/tests/src/Kernel/Plugin/migrate/source/d7/FieldInstanceTest.php
@@ -20,7 +20,7 @@ class FieldInstanceTest extends MigrateSqlSourceTestBase {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     $tests = [
       [
         'source_data' => [],
diff --git a/core/modules/field/tests/src/Kernel/Plugin/migrate/source/d7/FieldOptionTranslationTest.php b/core/modules/field/tests/src/Kernel/Plugin/migrate/source/d7/FieldOptionTranslationTest.php
index d317ae7e54df7684514d60f46a3e218bd9cfd2ff..3b13e4494156d3ac9bdbb4f7cc4755033a1f01e3 100644
--- a/core/modules/field/tests/src/Kernel/Plugin/migrate/source/d7/FieldOptionTranslationTest.php
+++ b/core/modules/field/tests/src/Kernel/Plugin/migrate/source/d7/FieldOptionTranslationTest.php
@@ -22,7 +22,7 @@ class FieldOptionTranslationTest extends MigrateSqlSourceTestBase {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     $test = [];
 
     // The source data.
diff --git a/core/modules/field/tests/src/Kernel/Plugin/migrate/source/d7/FieldTest.php b/core/modules/field/tests/src/Kernel/Plugin/migrate/source/d7/FieldTest.php
index ee3478f3caf0ef8f9c413c40e8f4a9f886ae98d1..839312bf057fabcfa2ac656e806919f0363bb83e 100644
--- a/core/modules/field/tests/src/Kernel/Plugin/migrate/source/d7/FieldTest.php
+++ b/core/modules/field/tests/src/Kernel/Plugin/migrate/source/d7/FieldTest.php
@@ -20,7 +20,7 @@ class FieldTest extends MigrateSqlSourceTestBase {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     $tests = [
       [
         'source_data' => [],
diff --git a/core/modules/field/tests/src/Kernel/Plugin/migrate/source/d7/ViewModeTest.php b/core/modules/field/tests/src/Kernel/Plugin/migrate/source/d7/ViewModeTest.php
index 15f6a4c5219a6d77cf00d4e55a387b30553b16c1..a1fde03c4f90784c348eb47fa4be93f0fb04cb6d 100644
--- a/core/modules/field/tests/src/Kernel/Plugin/migrate/source/d7/ViewModeTest.php
+++ b/core/modules/field/tests/src/Kernel/Plugin/migrate/source/d7/ViewModeTest.php
@@ -20,7 +20,7 @@ class ViewModeTest extends MigrateSqlSourceTestBase {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     $tests = [
       [
         'source_data' => [],
diff --git a/core/modules/field/tests/src/Unit/FieldStorageConfigEntityUnitTest.php b/core/modules/field/tests/src/Unit/FieldStorageConfigEntityUnitTest.php
index 9cec8d16d89c13cb20c14ab2c4839c756c697daa..937d088109083b5635a6047676fe2584a44b24bf 100644
--- a/core/modules/field/tests/src/Unit/FieldStorageConfigEntityUnitTest.php
+++ b/core/modules/field/tests/src/Unit/FieldStorageConfigEntityUnitTest.php
@@ -202,7 +202,7 @@ public function testInvalidEnforcedCardinality($enforced_cardinality) {
    * @return array
    *   Test cases.
    */
-  public function providerInvalidEnforcedCardinality() {
+  public static function providerInvalidEnforcedCardinality() {
     return [
       'zero' => [0],
       'negative_other_than_-1' => [-70],
diff --git a/core/modules/field/tests/src/Unit/Plugin/migrate/process/ProcessFieldTest.php b/core/modules/field/tests/src/Unit/Plugin/migrate/process/ProcessFieldTest.php
index 4cf3a3fb4c739ec2600a468af44ff27f8ca82512..1014e9f056cff69b722f73e52bf9b72c103a5eec 100644
--- a/core/modules/field/tests/src/Unit/Plugin/migrate/process/ProcessFieldTest.php
+++ b/core/modules/field/tests/src/Unit/Plugin/migrate/process/ProcessFieldTest.php
@@ -111,7 +111,7 @@ public function testTransform($method, $value, $expected_value, $migrate_excepti
    *   - The MigrateException message to expect.
    *   - Whether the field plugin is not found.
    */
-  public function providerTestTransform() {
+  public static function providerTestTransform() {
     return [
       // Tests the getFieldType() method.
       [
diff --git a/core/modules/field/tests/src/Unit/Plugin/migrate/process/d6/FieldInstanceSettingsTest.php b/core/modules/field/tests/src/Unit/Plugin/migrate/process/d6/FieldInstanceSettingsTest.php
index e72ddecdbaeaeed7a308d3c15d709000bcb686c2..06fa3e8f2110f8d19ab3463a16fd8b6035a74541 100644
--- a/core/modules/field/tests/src/Unit/Plugin/migrate/process/d6/FieldInstanceSettingsTest.php
+++ b/core/modules/field/tests/src/Unit/Plugin/migrate/process/d6/FieldInstanceSettingsTest.php
@@ -44,7 +44,7 @@ public function testGetSettings($field_type, $instance_settings, $expected) {
   /**
    * Provides field settings for testGetSettings().
    */
-  public function getSettingsProvider() {
+  public static function getSettingsProvider() {
     return [
       'imagefield size set' => [
         'imagefield_widget',
diff --git a/core/modules/field/tests/src/Unit/Plugin/migrate/process/d6/FieldSettingsTest.php b/core/modules/field/tests/src/Unit/Plugin/migrate/process/d6/FieldSettingsTest.php
index 657cfb327303d0b9013458e04751a9b11cff13e3..d8307276d19d203b2e793dcbca794d279973a00a 100644
--- a/core/modules/field/tests/src/Unit/Plugin/migrate/process/d6/FieldSettingsTest.php
+++ b/core/modules/field/tests/src/Unit/Plugin/migrate/process/d6/FieldSettingsTest.php
@@ -37,7 +37,7 @@ public function testGetSettings($field_type, $field_settings, $allowed_values) {
   /**
    * Provides field settings for testGetSettings().
    */
-  public function getSettingsProvider() {
+  public static function getSettingsProvider() {
     return [
       [
         'list_integer',
diff --git a/core/modules/field_ui/tests/src/Functional/ManageFieldsMultipleTypesTest.php b/core/modules/field_ui/tests/src/Functional/ManageFieldsMultipleTypesTest.php
index 82ae6a6ded76772a56a37b890c15c5732c555419..00b76df65fc4afca2d53e289dc11026350fe9da7 100644
--- a/core/modules/field_ui/tests/src/Functional/ManageFieldsMultipleTypesTest.php
+++ b/core/modules/field_ui/tests/src/Functional/ManageFieldsMultipleTypesTest.php
@@ -138,7 +138,7 @@ public function testReuseFieldMultipleDisplay($entity_type, $bundle1, $bundle2)
    * @return array
    *   Test cases.
    */
-  public function entityTypesProvider() {
+  public static function entityTypesProvider() {
     return [
       'node' => [
         'entity_type' => 'node',
diff --git a/core/modules/field_ui/tests/src/FunctionalJavascript/DisplayModeBundleSelectionTest.php b/core/modules/field_ui/tests/src/FunctionalJavascript/DisplayModeBundleSelectionTest.php
index a915f5da15c35b97d89f21e48b73eeb6e9ce7f61..0c640f1215cfd44c31bdf01212a9996494c0c238 100644
--- a/core/modules/field_ui/tests/src/FunctionalJavascript/DisplayModeBundleSelectionTest.php
+++ b/core/modules/field_ui/tests/src/FunctionalJavascript/DisplayModeBundleSelectionTest.php
@@ -143,7 +143,7 @@ public function testBundleSelection($display_mode, $path, $custom_mode) {
   /**
    * Data provider for testBundleSelection().
    */
-  public function providerBundleSelection() {
+  public static function providerBundleSelection() {
     return [
       'view display' => ['view', 'display', 'full'],
       'form display' => ['form', 'form-display', 'foobar'],
diff --git a/core/modules/field_ui/tests/src/Unit/FieldConfigEditFormTest.php b/core/modules/field_ui/tests/src/Unit/FieldConfigEditFormTest.php
index e9c3a14a3169fcc0009ac8cc73570b0965a31049..caef52e9618084a4274c6f7cf380392b1eb613bd 100644
--- a/core/modules/field_ui/tests/src/Unit/FieldConfigEditFormTest.php
+++ b/core/modules/field_ui/tests/src/Unit/FieldConfigEditFormTest.php
@@ -52,7 +52,7 @@ public function testHasAnyRequired(array $element, bool $result) {
   /**
    * Provides test cases with required and optional elements.
    */
-  public function providerRequired(): \Generator {
+  public static function providerRequired(): \Generator {
     yield 'required' => [
       [['#required' => TRUE]],
       TRUE,
diff --git a/core/modules/field_ui/tests/src/Unit/FieldUiTableTest.php b/core/modules/field_ui/tests/src/Unit/FieldUiTableTest.php
index 8ba2415b13e0f48ac43f1ca9983e3fe3e8110cad..88b4c4da2fa809ab299a4bf80534690dddf2562f 100644
--- a/core/modules/field_ui/tests/src/Unit/FieldUiTableTest.php
+++ b/core/modules/field_ui/tests/src/Unit/FieldUiTableTest.php
@@ -25,7 +25,7 @@ public function testReduceOrder($array, $expected) {
   /**
    * Provides test data for testReduceOrder().
    */
-  public function providerTestReduceOrder() {
+  public static function providerTestReduceOrder() {
     return [
       'Flat' => [
         'array' => [
diff --git a/core/modules/file/tests/src/Kernel/FileItemValidationTest.php b/core/modules/file/tests/src/Kernel/FileItemValidationTest.php
index 300658f70332ac41f3f1aa330cc180d1656af29e..83b2efd54880774a49a828acbb13ced9c16c257c 100644
--- a/core/modules/file/tests/src/Kernel/FileItemValidationTest.php
+++ b/core/modules/file/tests/src/Kernel/FileItemValidationTest.php
@@ -128,7 +128,7 @@ public function testFileValidationConstraint($file_type) {
   /**
    * Provides a list of file types to test.
    */
-  public function getFileTypes() {
+  public static function getFileTypes() {
     return [['file'], ['image']];
   }
 
diff --git a/core/modules/file/tests/src/Kernel/LegacyValidatorTest.php b/core/modules/file/tests/src/Kernel/LegacyValidatorTest.php
index 150438c41f23a0d150d8fe686cdf24c84db8c232..357dcb357eb4e40de02ffdf3aa9799e2f48f353d 100644
--- a/core/modules/file/tests/src/Kernel/LegacyValidatorTest.php
+++ b/core/modules/file/tests/src/Kernel/LegacyValidatorTest.php
@@ -85,7 +85,7 @@ public function testFileValidateExtensionsOnUri(array $file_properties, array $e
    * @return array[][]
    *   The test cases.
    */
-  public function providerTestFileValidateExtensionsOnUri(): array {
+  public static function providerTestFileValidateExtensionsOnUri(): array {
     $temporary_txt_file_properties = [
       'filename' => 'asdf.txt',
       'uri' => 'temporary://asdf',
diff --git a/core/modules/file/tests/src/Kernel/Plugin/Validation/Constraint/FileExtensionConstraintValidatorTest.php b/core/modules/file/tests/src/Kernel/Plugin/Validation/Constraint/FileExtensionConstraintValidatorTest.php
index 7ca2ed03977913000ce5e66438ac898d0053df92..9347eb7f529ff8028b02cab286b63dfd4627de18 100644
--- a/core/modules/file/tests/src/Kernel/Plugin/Validation/Constraint/FileExtensionConstraintValidatorTest.php
+++ b/core/modules/file/tests/src/Kernel/Plugin/Validation/Constraint/FileExtensionConstraintValidatorTest.php
@@ -50,7 +50,7 @@ public function testFileExtensionOnUri(array $file_properties, array $extensions
    * @return array[][]
    *   The test cases.
    */
-  public function providerTestFileValidateExtensionsOnUri(): array {
+  public static function providerTestFileValidateExtensionsOnUri(): array {
     $temporary_txt_file_properties = [
       'filename' => 'asdf.txt',
       'uri' => 'temporary://asdf',
diff --git a/core/modules/file/tests/src/Kernel/Plugin/migrate/source/d6/FileTest.php b/core/modules/file/tests/src/Kernel/Plugin/migrate/source/d6/FileTest.php
index f316f9035e1c96bf515000525876df3a934f65f9..17619243a6a086bbb89da2868fd957719cd83b9e 100644
--- a/core/modules/file/tests/src/Kernel/Plugin/migrate/source/d6/FileTest.php
+++ b/core/modules/file/tests/src/Kernel/Plugin/migrate/source/d6/FileTest.php
@@ -21,7 +21,7 @@ class FileTest extends MigrateSqlSourceTestBase {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     $tests = [];
 
     // The source data.
diff --git a/core/modules/file/tests/src/Kernel/Plugin/migrate/source/d6/UploadInstanceTest.php b/core/modules/file/tests/src/Kernel/Plugin/migrate/source/d6/UploadInstanceTest.php
index b9976ebbc4f0aa596f94e9a78f3d9ff2afe5f0e6..ae7548607ff9df86d5bfb22bbbe41a494099c9d0 100644
--- a/core/modules/file/tests/src/Kernel/Plugin/migrate/source/d6/UploadInstanceTest.php
+++ b/core/modules/file/tests/src/Kernel/Plugin/migrate/source/d6/UploadInstanceTest.php
@@ -23,7 +23,7 @@ class UploadInstanceTest extends MigrateSqlSourceTestBase {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     $tests = [];
 
     // The source data.
diff --git a/core/modules/file/tests/src/Kernel/Plugin/migrate/source/d6/UploadTest.php b/core/modules/file/tests/src/Kernel/Plugin/migrate/source/d6/UploadTest.php
index ac41f4e24376c4ad7e4a22880b0b47960828be01..b6f5ded201fbdbb131c8f562942a2914db120a91 100644
--- a/core/modules/file/tests/src/Kernel/Plugin/migrate/source/d6/UploadTest.php
+++ b/core/modules/file/tests/src/Kernel/Plugin/migrate/source/d6/UploadTest.php
@@ -23,7 +23,7 @@ class UploadTest extends MigrateSqlSourceTestBase {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     $tests = [];
 
     // The source data.
diff --git a/core/modules/file/tests/src/Kernel/Plugin/migrate/source/d7/FileTest.php b/core/modules/file/tests/src/Kernel/Plugin/migrate/source/d7/FileTest.php
index 50b4d346d957a7eb193f9152c98470d25e0d16e8..9a955d56e510f18564a8646ad058256833cd8cd0 100644
--- a/core/modules/file/tests/src/Kernel/Plugin/migrate/source/d7/FileTest.php
+++ b/core/modules/file/tests/src/Kernel/Plugin/migrate/source/d7/FileTest.php
@@ -20,7 +20,7 @@ class FileTest extends MigrateSqlSourceTestBase {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     $tests = [];
 
     $tests[0]['source_data']['file_managed'] = [
diff --git a/core/modules/file/tests/src/Kernel/Validation/UploadedFileValidatorTest.php b/core/modules/file/tests/src/Kernel/Validation/UploadedFileValidatorTest.php
index 78e2716bbfc5337808551bf77f2f3661539b2ec0..45b1dbb7271a0bc7e6b8b0df26a3a6e7382dd3b8 100644
--- a/core/modules/file/tests/src/Kernel/Validation/UploadedFileValidatorTest.php
+++ b/core/modules/file/tests/src/Kernel/Validation/UploadedFileValidatorTest.php
@@ -103,7 +103,7 @@ public function testValidateFail(int $errorCode, string $message): void {
   /**
    * Data provider for ::testValidateFail.
    */
-  public function validateProvider(): array {
+  public static function validateProvider(): array {
     return [
       'ini size' => [
         \UPLOAD_ERR_INI_SIZE,
diff --git a/core/modules/file/tests/src/Unit/Plugin/migrate/field/d6/FileFieldTest.php b/core/modules/file/tests/src/Unit/Plugin/migrate/field/d6/FileFieldTest.php
index 2e8e046dc558c1232d4b583c564a4797a5ea4e07..0e9017cab235d98fc7dc10fdc57abf5192b0b5df 100644
--- a/core/modules/file/tests/src/Unit/Plugin/migrate/field/d6/FileFieldTest.php
+++ b/core/modules/file/tests/src/Unit/Plugin/migrate/field/d6/FileFieldTest.php
@@ -65,7 +65,7 @@ public function testDefineValueProcessPipeline($method = 'defineValueProcessPipe
   /**
    * Data provider for testGetFieldType().
    */
-  public function getFieldTypeProvider() {
+  public static function getFieldTypeProvider() {
     return [
       ['image', 'imagefield_widget'],
       ['file', 'filefield_widget'],
diff --git a/core/modules/file/tests/src/Unit/Plugin/migrate/field/d7/FileFieldTest.php b/core/modules/file/tests/src/Unit/Plugin/migrate/field/d7/FileFieldTest.php
index 10b3297c07c9871dd0f531782be04a92cb56eeb2..df8fc52a13c57b81f9894ede98c713d59652f396 100644
--- a/core/modules/file/tests/src/Unit/Plugin/migrate/field/d7/FileFieldTest.php
+++ b/core/modules/file/tests/src/Unit/Plugin/migrate/field/d7/FileFieldTest.php
@@ -70,7 +70,7 @@ public function testDefineValueProcessPipeline($method = 'defineValueProcessPipe
   /**
    * Data provider for testGetFieldType().
    */
-  public function getFieldTypeProvider() {
+  public static function getFieldTypeProvider() {
     return [
       ['image', 'imagefield_widget'],
       ['file', 'filefield_widget'],
diff --git a/core/modules/file/tests/src/Unit/SanitizeNameTest.php b/core/modules/file/tests/src/Unit/SanitizeNameTest.php
index 33b544f7bba2a19cb186876bc5f81a972bd71dd6..a2c4d7e55da3b347a8295214e5885449ff61c2b5 100644
--- a/core/modules/file/tests/src/Unit/SanitizeNameTest.php
+++ b/core/modules/file/tests/src/Unit/SanitizeNameTest.php
@@ -76,7 +76,7 @@ public function testFileNameTransliteration($original, $expected, array $options
    * @return array
    *   Arrays with original name, expected name, and sanitization options.
    */
-  public function provideFilenames() {
+  public static function provideFilenames() {
     return [
       'Test default options' => [
         'TÉXT-œ.txt',
diff --git a/core/modules/file/tests/src/Unit/Upload/ContentDispositionFilenameParserTest.php b/core/modules/file/tests/src/Unit/Upload/ContentDispositionFilenameParserTest.php
index 2d3545306b8a98cff896af3f4a9f8258e241a4b1..237e470768e675bd762d2e50fc960470bff00e4a 100644
--- a/core/modules/file/tests/src/Unit/Upload/ContentDispositionFilenameParserTest.php
+++ b/core/modules/file/tests/src/Unit/Upload/ContentDispositionFilenameParserTest.php
@@ -62,7 +62,7 @@ public function testParseFilenameExtended(): void {
   /**
    * A data provider for invalid headers.
    */
-  public function invalidHeaderProvider(): array {
+  public static function invalidHeaderProvider(): array {
     return [
       'multiple' => ['file; filename=""'],
       'empty' => ['filename=""'],
diff --git a/core/modules/filter/tests/src/Kernel/Plugin/migrate/process/FilterIdTest.php b/core/modules/filter/tests/src/Kernel/Plugin/migrate/process/FilterIdTest.php
index 49e54a859c6db4b632b68d5d7031ef85c2315f83..04dfe6818fa931ad1fd04724ec58e38a96a5d698 100644
--- a/core/modules/filter/tests/src/Kernel/Plugin/migrate/process/FilterIdTest.php
+++ b/core/modules/filter/tests/src/Kernel/Plugin/migrate/process/FilterIdTest.php
@@ -101,7 +101,7 @@ public function testTransform($value, $expected_value, $invalid_id = NULL, $skip
    *   When $invalid_id is provided the transformation should fail with the
    *   supplied id.
    */
-  public function provideFilters() {
+  public static function provideFilters() {
     return [
       'filter ID mapped to plugin that exists' => [
         'foo',
diff --git a/core/modules/filter/tests/src/Kernel/Plugin/migrate/process/FilterSettingsTest.php b/core/modules/filter/tests/src/Kernel/Plugin/migrate/process/FilterSettingsTest.php
index 51592ee8b986c8ad81ad3bc72378351992f64bf7..f9854b24cc872d943ef9e8a72406c648741210b0 100644
--- a/core/modules/filter/tests/src/Kernel/Plugin/migrate/process/FilterSettingsTest.php
+++ b/core/modules/filter/tests/src/Kernel/Plugin/migrate/process/FilterSettingsTest.php
@@ -44,7 +44,7 @@ public function testTransform($value, $destination_id, $expected_value) {
    *
    * @return array
    */
-  public function dataProvider() {
+  public static function dataProvider() {
     return [
       // Tests that the transformed value is identical to the input value when
       // destination is not the filter_html.
diff --git a/core/modules/filter/tests/src/Kernel/Plugin/migrate/source/d6/FilterFormatTest.php b/core/modules/filter/tests/src/Kernel/Plugin/migrate/source/d6/FilterFormatTest.php
index 18448d1f6e3bc855076152176e18a507680d401e..7e64934c0cc1ef61093bbfa704d68b7877378e49 100644
--- a/core/modules/filter/tests/src/Kernel/Plugin/migrate/source/d6/FilterFormatTest.php
+++ b/core/modules/filter/tests/src/Kernel/Plugin/migrate/source/d6/FilterFormatTest.php
@@ -21,7 +21,7 @@ class FilterFormatTest extends MigrateSqlSourceTestBase {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     $tests = [];
 
     // The source data.
diff --git a/core/modules/filter/tests/src/Kernel/Plugin/migrate/source/d7/FilterFormatTest.php b/core/modules/filter/tests/src/Kernel/Plugin/migrate/source/d7/FilterFormatTest.php
index d2a2d48b5fbf99558d6a96645552a78a76ea3d9c..466a8a7da97422b69104204d721e6f7a24c1c597 100644
--- a/core/modules/filter/tests/src/Kernel/Plugin/migrate/source/d7/FilterFormatTest.php
+++ b/core/modules/filter/tests/src/Kernel/Plugin/migrate/source/d7/FilterFormatTest.php
@@ -21,7 +21,7 @@ class FilterFormatTest extends MigrateSqlSourceTestBase {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     $tests = [];
 
     // The source data.
diff --git a/core/modules/filter/tests/src/Unit/FilterHtmlTest.php b/core/modules/filter/tests/src/Unit/FilterHtmlTest.php
index 1c3e3f054d61d7ec677765234e6fc5fdeb5b4898..d020f1d0197a69dd1b04eb0fea83001be955cd5b 100644
--- a/core/modules/filter/tests/src/Unit/FilterHtmlTest.php
+++ b/core/modules/filter/tests/src/Unit/FilterHtmlTest.php
@@ -52,7 +52,7 @@ public function testfilterAttributes($html, $expected) {
    * @return array
    *   An array of test data.
    */
-  public function providerFilterAttributes() {
+  public static function providerFilterAttributes() {
     return [
       ['<a href="/blog" title="Blog">Blog</a>', '<a href="/blog">Blog</a>'],
       ['<p dir="rtl" />', '<p dir="rtl"></p>'],
diff --git a/core/modules/filter/tests/src/Unit/FilterImageLazyLoadTest.php b/core/modules/filter/tests/src/Unit/FilterImageLazyLoadTest.php
index 847b3dcc5ff08dac9478b9d0716852d897062d59..4b7f471879b7fd635ab0fa09d4efcd1da648f8ac 100644
--- a/core/modules/filter/tests/src/Unit/FilterImageLazyLoadTest.php
+++ b/core/modules/filter/tests/src/Unit/FilterImageLazyLoadTest.php
@@ -46,7 +46,7 @@ public function testProcess(string $html, string $expected): void {
    * @return array
    *   An array of test data.
    */
-  public function providerHtml(): array {
+  public static function providerHtml(): array {
     return [
       'lazy loading attribute already added' => [
         'input' => '<p><img src="foo.png" loading="lazy"></p>',
diff --git a/core/modules/image/tests/src/Functional/ImageFieldValidateTest.php b/core/modules/image/tests/src/Functional/ImageFieldValidateTest.php
index e7444aa0059cfdbf4f9af45de88bc1be47d49153..1b882bd98d320612ebb7b02d14fb89a2803d21c3 100644
--- a/core/modules/image/tests/src/Functional/ImageFieldValidateTest.php
+++ b/core/modules/image/tests/src/Functional/ImageFieldValidateTest.php
@@ -249,7 +249,7 @@ public function testEmpty($field_name, $required, $cardinality, $form_element_na
    * @return array
    *   Test cases.
    */
-  public function providerTestEmpty() {
+  public static function providerTestEmpty() {
     return [
       'optional-single' => ['field_image', FALSE, 1, 'files[field_image_0]', 'Article Article with edit-access-allowed image field has been created.', 'Article Article with edit-access-forbidden image field has been created.'],
       'optional-unlimited' => ['field_image', FALSE, FieldStorageDefinitionInterface::CARDINALITY_UNLIMITED, 'files[field_image_0][]', 'Article Article with edit-access-allowed image field has been created.', 'Article Article with edit-access-forbidden image field has been created.'],
diff --git a/core/modules/image/tests/src/Kernel/ImageStyleCustomStreamWrappersTest.php b/core/modules/image/tests/src/Kernel/ImageStyleCustomStreamWrappersTest.php
index 2e7759a41f2d9996cf9354ab58f941672f6ed16d..2e79a71272b6a930ea1df3e195c756d7da3c34c3 100644
--- a/core/modules/image/tests/src/Kernel/ImageStyleCustomStreamWrappersTest.php
+++ b/core/modules/image/tests/src/Kernel/ImageStyleCustomStreamWrappersTest.php
@@ -102,7 +102,7 @@ public function testCustomStreamWrappers($source_scheme, $expected_scheme) {
    *   - The derivative expected stream wrapper scheme.
    *   - The stream wrapper service class.
    */
-  public function providerTestCustomStreamWrappers() {
+  public static function providerTestCustomStreamWrappers() {
     return [
       ['public', 'public', PublicStream::class],
       ['private', 'private', PrivateStream::class],
diff --git a/core/modules/image/tests/src/Kernel/Plugin/migrate/source/d6/ImageCachePresetTest.php b/core/modules/image/tests/src/Kernel/Plugin/migrate/source/d6/ImageCachePresetTest.php
index 80d8b541981f7182f10f69b499ad3974dd1d77e8..6aea581777833d94c0fbdbf132702b3a7e0ed876 100644
--- a/core/modules/image/tests/src/Kernel/Plugin/migrate/source/d6/ImageCachePresetTest.php
+++ b/core/modules/image/tests/src/Kernel/Plugin/migrate/source/d6/ImageCachePresetTest.php
@@ -23,7 +23,7 @@ class ImageCachePresetTest extends MigrateSqlSourceTestBase {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     $tests = [];
 
     // The source data.
diff --git a/core/modules/image/tests/src/Kernel/Plugin/migrate/source/d7/ImageStylesTest.php b/core/modules/image/tests/src/Kernel/Plugin/migrate/source/d7/ImageStylesTest.php
index df88fb0f467cab6d42af0b862d08b56aee5a10f5..906d197ce3c3fc3e77ce0821de0666f139b428a7 100644
--- a/core/modules/image/tests/src/Kernel/Plugin/migrate/source/d7/ImageStylesTest.php
+++ b/core/modules/image/tests/src/Kernel/Plugin/migrate/source/d7/ImageStylesTest.php
@@ -23,7 +23,7 @@ class ImageStylesTest extends MigrateSqlSourceTestBase {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     $tests = [];
 
     // The source data.
diff --git a/core/modules/image/tests/src/Unit/PageCache/DenyPrivateImageStyleDownloadTest.php b/core/modules/image/tests/src/Unit/PageCache/DenyPrivateImageStyleDownloadTest.php
index ecdff2372f8c1e8f58637860769a894aa599579b..eb6866f17384cde9360c2cd01d955f806e933b39 100644
--- a/core/modules/image/tests/src/Unit/PageCache/DenyPrivateImageStyleDownloadTest.php
+++ b/core/modules/image/tests/src/Unit/PageCache/DenyPrivateImageStyleDownloadTest.php
@@ -77,7 +77,7 @@ public function testPrivateImageStyleDownloadPolicy($expected_result, $route_nam
    * @return array
    *   Data and expected results.
    */
-  public function providerPrivateImageStyleDownloadPolicy() {
+  public static function providerPrivateImageStyleDownloadPolicy() {
     return [
       [ResponsePolicyInterface::DENY, 'image.style_private'],
       [NULL, 'some.other.route'],
diff --git a/core/modules/jsonapi/tests/src/Functional/ExternalNormalizersTest.php b/core/modules/jsonapi/tests/src/Functional/ExternalNormalizersTest.php
index 1963cb02b9ea50db3afc7669df6f017d5414c9f7..924bd6dab38a4f4907da9becaaf6427f68f4eb40 100644
--- a/core/modules/jsonapi/tests/src/Functional/ExternalNormalizersTest.php
+++ b/core/modules/jsonapi/tests/src/Functional/ExternalNormalizersTest.php
@@ -182,7 +182,7 @@ public function testFormatAgnosticNormalizers($test_module, $expected_value_json
    * @return array
    *   Test cases.
    */
-  public function providerTestFormatAgnosticNormalizers() {
+  public static function providerTestFormatAgnosticNormalizers() {
     return [
       'Format-agnostic @FieldType-level normalizers SHOULD NOT be able to affect the JSON:API normalization' => [
         'jsonapi_test_field_type',
diff --git a/core/modules/jsonapi/tests/src/Functional/TermTest.php b/core/modules/jsonapi/tests/src/Functional/TermTest.php
index 5a56f19b1b2aa97255366b739502d89a98771ffb..bebe37dda40cb82d46ff8dc25f9f7a76aeab7bdf 100644
--- a/core/modules/jsonapi/tests/src/Functional/TermTest.php
+++ b/core/modules/jsonapi/tests/src/Functional/TermTest.php
@@ -484,7 +484,7 @@ public function testGetIndividualTermWithParent(array $parent_term_ids) {
   /**
    * Data provider for ::testGetIndividualTermWithParent().
    */
-  public function providerTestGetIndividualTermWithParent() {
+  public static function providerTestGetIndividualTermWithParent() {
     return [
       'root parent: [0] (= no parent)' => [
         [0],
diff --git a/core/modules/jsonapi/tests/src/Kernel/Context/FieldResolverTest.php b/core/modules/jsonapi/tests/src/Kernel/Context/FieldResolverTest.php
index f53992897980827a7eb98cb9ef53c2b691e85757..7393e99b183ec5611b676a7b43405de9a2347b76 100644
--- a/core/modules/jsonapi/tests/src/Kernel/Context/FieldResolverTest.php
+++ b/core/modules/jsonapi/tests/src/Kernel/Context/FieldResolverTest.php
@@ -96,7 +96,7 @@ public function testResolveInternalIncludePath($expect, $external_path, $entity_
   /**
    * Provides test cases for resolveInternalEntityQueryPath.
    */
-  public function resolveInternalIncludePathProvider() {
+  public static function resolveInternalIncludePathProvider() {
     return [
       'entity reference' => [[['field_test_ref2']], 'field_test_ref2'],
       'entity reference with multi target bundles' => [[['field_test_ref1']], 'field_test_ref1'],
@@ -142,7 +142,7 @@ public function testResolveInternalIncludePathError($entity_type, $bundle, $exte
   /**
    * Provides test cases for ::testResolveInternalIncludePathError.
    */
-  public function resolveInternalIncludePathErrorProvider() {
+  public static function resolveInternalIncludePathErrorProvider() {
     return [
       // Should fail because none of these bundles have these fields.
       ['entity_test_with_bundle', 'bundle1', 'host.fail!!.deep'],
@@ -180,7 +180,7 @@ public function testResolveInternalEntityQueryPath($expect, $external_path, $ent
   /**
    * Provides test cases for ::testResolveInternalEntityQueryPath.
    */
-  public function resolveInternalEntityQueryPathProvider() {
+  public static function resolveInternalEntityQueryPathProvider() {
     return [
       'config entity as base' => [
         'uuid', 'id', 'entity_test_bundle', 'entity_test_bundle',
@@ -265,7 +265,7 @@ public function testResolveInternalEntityQueryPathError($entity_type, $bundle, $
   /**
    * Provides test cases for ::testResolveInternalEntityQueryPathError.
    */
-  public function resolveInternalEntityQueryPathErrorProvider() {
+  public static function resolveInternalEntityQueryPathErrorProvider() {
     return [
       'nested fields' => [
         'entity_test_with_bundle', 'bundle1', 'none.of.these.exist',
diff --git a/core/modules/jsonapi/tests/src/Kernel/Normalizer/JsonApiDocumentTopLevelNormalizerTest.php b/core/modules/jsonapi/tests/src/Kernel/Normalizer/JsonApiDocumentTopLevelNormalizerTest.php
index 41f32c9bf37c207a348e036d169845f18728f8b7..f9a022b3497ec8552776e4c31d744514106db969 100644
--- a/core/modules/jsonapi/tests/src/Kernel/Normalizer/JsonApiDocumentTopLevelNormalizerTest.php
+++ b/core/modules/jsonapi/tests/src/Kernel/Normalizer/JsonApiDocumentTopLevelNormalizerTest.php
@@ -776,7 +776,7 @@ public function testCacheableMetadata(CacheableMetadata $expected_metadata) {
   /**
    * Provides test cases for asserting cacheable metadata behavior.
    */
-  public function testCacheableMetadataProvider() {
+  public static function testCacheableMetadataProvider() {
     $cacheable_metadata = function ($metadata) {
       return CacheableMetadata::createFromRenderArray(['#cache' => $metadata]);
     };
diff --git a/core/modules/jsonapi/tests/src/Kernel/Normalizer/LinkCollectionNormalizerTest.php b/core/modules/jsonapi/tests/src/Kernel/Normalizer/LinkCollectionNormalizerTest.php
index 305a7309b7bd8a6aa1e5570364ef291fc5e2628c..02cb357ac69e2c473300933baa165bdaf0f5331d 100644
--- a/core/modules/jsonapi/tests/src/Kernel/Normalizer/LinkCollectionNormalizerTest.php
+++ b/core/modules/jsonapi/tests/src/Kernel/Normalizer/LinkCollectionNormalizerTest.php
@@ -168,7 +168,7 @@ public function testLinkAccess($current_user_id, $edit_form_uid, $expected_link_
    *
    * @return array[]
    */
-  public function linkAccessTestData() {
+  public static function linkAccessTestData() {
     return [
       'the edit-form link is present because uid 2 has access to the targeted resource (its own edit form)' => [
         'uid' => 2,
diff --git a/core/modules/jsonapi/tests/src/Kernel/Normalizer/RelationshipNormalizerTest.php b/core/modules/jsonapi/tests/src/Kernel/Normalizer/RelationshipNormalizerTest.php
index f27dbed3159199e7a5bd7ecaa6ff58ccb2bad535..f575410c92cfd737c9814cb6665a0798863c4e07 100644
--- a/core/modules/jsonapi/tests/src/Kernel/Normalizer/RelationshipNormalizerTest.php
+++ b/core/modules/jsonapi/tests/src/Kernel/Normalizer/RelationshipNormalizerTest.php
@@ -262,7 +262,7 @@ public function testNormalize($entity_property_names, $field_name, $expected) {
   /**
    * Data provider for testNormalize.
    */
-  public function normalizeProvider() {
+  public static function normalizeProvider() {
     return [
       'single cardinality' => [
         ['user1'],
diff --git a/core/modules/jsonapi/tests/src/Kernel/Query/FilterTest.php b/core/modules/jsonapi/tests/src/Kernel/Query/FilterTest.php
index b271cb687552b3c65632a5709259a99ad850123c..5dde622981a1905d71f3871ac6725f6d38080a79 100644
--- a/core/modules/jsonapi/tests/src/Kernel/Query/FilterTest.php
+++ b/core/modules/jsonapi/tests/src/Kernel/Query/FilterTest.php
@@ -327,7 +327,7 @@ public function testCreateFromQueryParameter($case, $expected) {
   /**
    * Data provider for testCreateFromQueryParameter.
    */
-  public function parameterProvider() {
+  public static function parameterProvider() {
     return [
       'shorthand' => [
         ['uid' => ['value' => 1]],
diff --git a/core/modules/jsonapi/tests/src/Kernel/ResourceType/RelatedResourceTypesTest.php b/core/modules/jsonapi/tests/src/Kernel/ResourceType/RelatedResourceTypesTest.php
index 5ee39d67366b9f105c49a08f4df1e965bb9346fb..75f75a0f3b333a2842b360e9c6c14302675d574a 100644
--- a/core/modules/jsonapi/tests/src/Kernel/ResourceType/RelatedResourceTypesTest.php
+++ b/core/modules/jsonapi/tests/src/Kernel/ResourceType/RelatedResourceTypesTest.php
@@ -144,7 +144,7 @@ public function testGetRelatableResourceTypes($resource_type_name, $relatable_ty
    * @covers ::getRelatableResourceTypes
    * @dataProvider getRelatableResourceTypesProvider
    */
-  public function getRelatableResourceTypesProvider() {
+  public static function getRelatableResourceTypesProvider() {
     return [
       [
         'node--foo',
@@ -174,7 +174,7 @@ public function testGetRelatableResourceTypesByField($entity_type_id, $bundle, $
   /**
    * Provides cases to test getRelatableTypesByField.
    */
-  public function getRelatableResourceTypesByFieldProvider() {
+  public static function getRelatableResourceTypesByFieldProvider() {
     return [
       ['node', 'foo', 'field_ref_foo'],
       ['node', 'foo', 'field_ref_bar'],
diff --git a/core/modules/jsonapi/tests/src/Kernel/ResourceType/ResourceTypeRepositoryTest.php b/core/modules/jsonapi/tests/src/Kernel/ResourceType/ResourceTypeRepositoryTest.php
index e9820e1a08f15a9c9ab410b671658d622396f24a..5207ede69e4136e3eb550e2db173d72304f242e3 100644
--- a/core/modules/jsonapi/tests/src/Kernel/ResourceType/ResourceTypeRepositoryTest.php
+++ b/core/modules/jsonapi/tests/src/Kernel/ResourceType/ResourceTypeRepositoryTest.php
@@ -97,7 +97,7 @@ public function testGet($entity_type_id, $bundle, $entity_class) {
    * @return array
    *   The data for the test method.
    */
-  public function getProvider() {
+  public static function getProvider() {
     return [
       ['node', 'article', 'Drupal\node\Entity\Node'],
       ['node', '42', 'Drupal\node\Entity\Node'],
@@ -147,7 +147,7 @@ public function testMappingNameConflictCheck($field_name_list) {
    * @return array
    *   The data for the test method.
    */
-  public function getFieldsProvider() {
+  public static function getFieldsProvider() {
     return [
       [['type', 'node_type']],
       [['id', 'node_id']],
diff --git a/core/modules/jsonapi/tests/src/Unit/EventSubscriber/ResourceResponseValidatorTest.php b/core/modules/jsonapi/tests/src/Unit/EventSubscriber/ResourceResponseValidatorTest.php
index 5875ebc06c7441302957d0c0ee7a9e341848ec07..7ca219a3e4179cedeae9b98997d6a1c8e707894a 100644
--- a/core/modules/jsonapi/tests/src/Unit/EventSubscriber/ResourceResponseValidatorTest.php
+++ b/core/modules/jsonapi/tests/src/Unit/EventSubscriber/ResourceResponseValidatorTest.php
@@ -72,7 +72,7 @@ public function testValidateResponse($request, $response, $expected, $descriptio
    * @return array
    *   An array of test cases.
    */
-  public function validateResponseProvider() {
+  public static function validateResponseProvider() {
     $defaults = [
       'route_name' => 'jsonapi.node--article.individual',
       'resource_type' => new ResourceType('node', 'article', NULL),
diff --git a/core/modules/jsonapi/tests/src/Unit/Normalizer/JsonApiDocumentTopLevelNormalizerTest.php b/core/modules/jsonapi/tests/src/Unit/Normalizer/JsonApiDocumentTopLevelNormalizerTest.php
index e88a8d29b62dab247f8f44e9814720595de070e7..da5d2aeb44d789ca1848a87f65a1d4786aa37b82 100644
--- a/core/modules/jsonapi/tests/src/Unit/Normalizer/JsonApiDocumentTopLevelNormalizerTest.php
+++ b/core/modules/jsonapi/tests/src/Unit/Normalizer/JsonApiDocumentTopLevelNormalizerTest.php
@@ -103,7 +103,7 @@ public function testDenormalize($input, $expected) {
    * @return array
    *   The data for the test method.
    */
-  public function denormalizeProvider() {
+  public static function denormalizeProvider() {
     return [
       [
         [
@@ -240,7 +240,7 @@ public function testDenormalizeUuid($id, $expect_exception) {
   /**
    * Provides test cases for testDenormalizeUuid.
    */
-  public function denormalizeUuidProvider() {
+  public static function denormalizeUuidProvider() {
     return [
       'valid' => ['76dd5c18-ea1b-4150-9e75-b21958a2b836', FALSE],
       'missing' => [NULL, FALSE],
diff --git a/core/modules/jsonapi/tests/src/Unit/Normalizer/ResourceIdentifierNormalizerTest.php b/core/modules/jsonapi/tests/src/Unit/Normalizer/ResourceIdentifierNormalizerTest.php
index 4b15495a0975db1fff26625a7e58f5823a112483..fc78271bf3b31c8dc06b4f453ae87bc96784a9f4 100644
--- a/core/modules/jsonapi/tests/src/Unit/Normalizer/ResourceIdentifierNormalizerTest.php
+++ b/core/modules/jsonapi/tests/src/Unit/Normalizer/ResourceIdentifierNormalizerTest.php
@@ -128,7 +128,7 @@ public function testDenormalize($input, $field_name, $expected) {
    * @return array
    *   The data for the test method.
    */
-  public function denormalizeProvider() {
+  public static function denormalizeProvider() {
     return [
       [
         ['data' => [['type' => 'lorem--dummy_bundle', 'id' => '4e6cb61d-4f04-437f-99fe-42c002393658']]],
@@ -168,7 +168,7 @@ public function testDenormalizeInvalidResource($data, $field_name) {
    * @return array
    *   The input data for the test method.
    */
-  public function denormalizeInvalidResourceProvider() {
+  public static function denormalizeInvalidResourceProvider() {
     return [
       [
         [
diff --git a/core/modules/jsonapi/tests/src/Unit/Query/EntityConditionGroupTest.php b/core/modules/jsonapi/tests/src/Unit/Query/EntityConditionGroupTest.php
index 2cc50c559dc886d1057936ffc51eaf0f92dd8030..5544e70012e0e76b59b01a8ad812ccb90b31203e 100644
--- a/core/modules/jsonapi/tests/src/Unit/Query/EntityConditionGroupTest.php
+++ b/core/modules/jsonapi/tests/src/Unit/Query/EntityConditionGroupTest.php
@@ -41,7 +41,7 @@ public function testConstructException() {
   /**
    * Data provider for testConstruct.
    */
-  public function constructProvider() {
+  public static function constructProvider() {
     return [
       [['conjunction' => 'AND', 'members' => []]],
       [['conjunction' => 'OR', 'members' => []]],
diff --git a/core/modules/jsonapi/tests/src/Unit/Query/EntityConditionTest.php b/core/modules/jsonapi/tests/src/Unit/Query/EntityConditionTest.php
index 9ea56e57056da75752c700275876995b9c5fa513..adea6af9f0ded163cf845afbfdc5fb18fb567055 100644
--- a/core/modules/jsonapi/tests/src/Unit/Query/EntityConditionTest.php
+++ b/core/modules/jsonapi/tests/src/Unit/Query/EntityConditionTest.php
@@ -49,7 +49,7 @@ public function testCreateFromQueryParameter($case) {
   /**
    * Data provider for testDenormalize.
    */
-  public function queryParameterProvider() {
+  public static function queryParameterProvider() {
     return [
       [['path' => 'some_field', 'value' => NULL, 'operator' => '=']],
       [['path' => 'some_field', 'operator' => '=', 'value' => 'some_string']],
@@ -87,7 +87,7 @@ public function testValidation($input, $exception) {
   /**
    * Data provider for testValidation.
    */
-  public function validationProvider() {
+  public static function validationProvider() {
     return [
       [['path' => 'some_field', 'value' => 'some_value'], NULL],
       [
diff --git a/core/modules/jsonapi/tests/src/Unit/Query/OffsetPageTest.php b/core/modules/jsonapi/tests/src/Unit/Query/OffsetPageTest.php
index af1b3292bd96e98c71ff1fe211407e705ee39c9b..264d3bd7f61581f44fec38fdc2ab73acfe60cafa 100644
--- a/core/modules/jsonapi/tests/src/Unit/Query/OffsetPageTest.php
+++ b/core/modules/jsonapi/tests/src/Unit/Query/OffsetPageTest.php
@@ -46,7 +46,7 @@ public function testCreateFromQueryParameter($original, $expected) {
   /**
    * Data provider for testCreateFromQueryParameter.
    */
-  public function parameterProvider() {
+  public static function parameterProvider() {
     return [
       [['offset' => 12, 'limit' => 20], ['offset' => 12, 'limit' => 20]],
       [['offset' => 12, 'limit' => 60], ['offset' => 12, 'limit' => 50]],
diff --git a/core/modules/jsonapi/tests/src/Unit/Query/SortTest.php b/core/modules/jsonapi/tests/src/Unit/Query/SortTest.php
index 5aa88a11c71ecebbfdcf872aa29b382be79daf49..14b3faa9f52bce50338d90a57473884a600bce9d 100644
--- a/core/modules/jsonapi/tests/src/Unit/Query/SortTest.php
+++ b/core/modules/jsonapi/tests/src/Unit/Query/SortTest.php
@@ -49,7 +49,7 @@ public function testCreateFromQueryParameter($input, $expected) {
   /**
    * Provides a suite of shortcut sort parameters and their expected expansions.
    */
-  public function parameterProvider() {
+  public static function parameterProvider() {
     return [
       ['lorem', [['path' => 'lorem', 'direction' => 'ASC', 'langcode' => NULL]]],
       [
@@ -93,7 +93,7 @@ public function testCreateFromQueryParameterFail($input) {
   /**
    * Data provider for testCreateFromQueryParameterFail.
    */
-  public function badParameterProvider() {
+  public static function badParameterProvider() {
     return [
       [[['lorem']]],
       [''],
diff --git a/core/modules/jsonapi/tests/src/Unit/Routing/RoutesTest.php b/core/modules/jsonapi/tests/src/Unit/Routing/RoutesTest.php
index 5ea0022b5318ad536b690358d168f6a0a261ff29..59000936c3ef6dd7e6c36dec41bbd355ba78b780 100644
--- a/core/modules/jsonapi/tests/src/Unit/Routing/RoutesTest.php
+++ b/core/modules/jsonapi/tests/src/Unit/Routing/RoutesTest.php
@@ -198,7 +198,7 @@ public function testRoutes($route) {
   /**
    * Lists routes which should have been created.
    */
-  public function expectedRoutes() {
+  public static function expectedRoutes() {
     return [
       ['jsonapi.entity_type_1--bundle_1_1.individual'],
       ['jsonapi.entity_type_1--bundle_1_1.collection'],
@@ -232,7 +232,7 @@ public function testInternalRoutes($route) {
   /**
    * Lists routes which should have been created.
    */
-  public function notExpectedRoutes() {
+  public static function notExpectedRoutes() {
     return [
       ['jsonapi.entity_type_2--bundle_2_1.individual'],
       ['jsonapi.entity_type_2--bundle_2_1.collection'],
diff --git a/core/modules/language/tests/src/Kernel/Plugin/migrate/source/LanguageTest.php b/core/modules/language/tests/src/Kernel/Plugin/migrate/source/LanguageTest.php
index d04b57af5b95d9b5202c244b7404de44ca6545e6..31d48685021290fce0187f6e3c647263bc32f972 100644
--- a/core/modules/language/tests/src/Kernel/Plugin/migrate/source/LanguageTest.php
+++ b/core/modules/language/tests/src/Kernel/Plugin/migrate/source/LanguageTest.php
@@ -20,7 +20,7 @@ class LanguageTest extends MigrateSqlSourceTestBase {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     $tests = [];
 
     // The source data.
diff --git a/core/modules/language/tests/src/Kernel/Plugin/migrate/source/d6/LanguageContentSettingsTest.php b/core/modules/language/tests/src/Kernel/Plugin/migrate/source/d6/LanguageContentSettingsTest.php
index f4fa2dacce0066b9f4d0935a198f1544334a9df2..939edc14acae128c9389feb4bcd558436b0a49e3 100644
--- a/core/modules/language/tests/src/Kernel/Plugin/migrate/source/d6/LanguageContentSettingsTest.php
+++ b/core/modules/language/tests/src/Kernel/Plugin/migrate/source/d6/LanguageContentSettingsTest.php
@@ -21,7 +21,7 @@ class LanguageContentSettingsTest extends MigrateSqlSourceTestBase {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     $tests = [];
 
     // The source data.
diff --git a/core/modules/language/tests/src/Kernel/Plugin/migrate/source/d6/LanguageContentTaxonomyVocabularySettingsTest.php b/core/modules/language/tests/src/Kernel/Plugin/migrate/source/d6/LanguageContentTaxonomyVocabularySettingsTest.php
index b7cb2b5f2cc1c99766e9a95571dcdaa19cb3a69c..9631ebe62567bb221978bead55c409d5fd6e4e2e 100644
--- a/core/modules/language/tests/src/Kernel/Plugin/migrate/source/d6/LanguageContentTaxonomyVocabularySettingsTest.php
+++ b/core/modules/language/tests/src/Kernel/Plugin/migrate/source/d6/LanguageContentTaxonomyVocabularySettingsTest.php
@@ -21,7 +21,7 @@ class LanguageContentTaxonomyVocabularySettingsTest extends MigrateSqlSourceTest
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     $tests = [];
 
     // The source data.
diff --git a/core/modules/language/tests/src/Kernel/Plugin/migrate/source/d7/LanguageContentSettingsTest.php b/core/modules/language/tests/src/Kernel/Plugin/migrate/source/d7/LanguageContentSettingsTest.php
index 3fc1df57c334768fdf9a5ea11f3cfd7ce7077931..5489164813bcf25c676ef357d5558b1ec1b3c7ce 100644
--- a/core/modules/language/tests/src/Kernel/Plugin/migrate/source/d7/LanguageContentSettingsTest.php
+++ b/core/modules/language/tests/src/Kernel/Plugin/migrate/source/d7/LanguageContentSettingsTest.php
@@ -21,7 +21,7 @@ class LanguageContentSettingsTest extends MigrateSqlSourceTestBase {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     $tests = [];
 
     // The source data.
diff --git a/core/modules/language/tests/src/Kernel/Plugin/migrate/source/d7/LanguageContentTaxonomyVocabularySettingsTest.php b/core/modules/language/tests/src/Kernel/Plugin/migrate/source/d7/LanguageContentTaxonomyVocabularySettingsTest.php
index c681cd1082a563ae0978d98be153fc168f4f4f65..f48f336de589bd9cfa2762382a468c06ebe4b60e 100644
--- a/core/modules/language/tests/src/Kernel/Plugin/migrate/source/d7/LanguageContentTaxonomyVocabularySettingsTest.php
+++ b/core/modules/language/tests/src/Kernel/Plugin/migrate/source/d7/LanguageContentTaxonomyVocabularySettingsTest.php
@@ -21,7 +21,7 @@ class LanguageContentTaxonomyVocabularySettingsTest extends VocabularyTest {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     // Get the source data from parent.
     $tests = parent::providerSource();
 
diff --git a/core/modules/language/tests/src/Unit/ContentLanguageSettingsUnitTest.php b/core/modules/language/tests/src/Unit/ContentLanguageSettingsUnitTest.php
index 960730908f18fc0ceeccd11bbd31d5b85b5aebed..82bace1834e03f9215a282a89fce2c24ca38436a 100644
--- a/core/modules/language/tests/src/Unit/ContentLanguageSettingsUnitTest.php
+++ b/core/modules/language/tests/src/Unit/ContentLanguageSettingsUnitTest.php
@@ -180,7 +180,7 @@ public function testLanguageAlterable(ContentLanguageSettings $config, $expected
     $this->assertSame($expected, $config->isLanguageAlterable());
   }
 
-  public function providerLanguageAlterable() {
+  public static function providerLanguageAlterable() {
     $alterableConfig = new ContentLanguageSettings([
       'target_entity_type_id' => 'test_entity_type',
       'target_bundle' => 'test_bundle',
diff --git a/core/modules/language/tests/src/Unit/LanguageNegotiationUrlTest.php b/core/modules/language/tests/src/Unit/LanguageNegotiationUrlTest.php
index 8eaf87478dda1813b844bf65f9c121fea1e9713e..5cea18f24ed6a3286142e4aa7aca04f09c871216 100644
--- a/core/modules/language/tests/src/Unit/LanguageNegotiationUrlTest.php
+++ b/core/modules/language/tests/src/Unit/LanguageNegotiationUrlTest.php
@@ -113,7 +113,7 @@ public function testPathPrefix($prefix, $prefixes, $expected_langcode) {
    * @return array
    *   An array of data for checking path prefix negotiation.
    */
-  public function providerTestPathPrefix() {
+  public static function providerTestPathPrefix() {
     $path_prefix_configuration[] = [
       'prefix' => 'de',
       'prefixes' => [
@@ -214,7 +214,7 @@ public function testNeutralLanguages($langcode, $expected_langcode) {
    *   An array of data for checking path prefix negotiation for neutral
    *   languages.
    */
-  public function providerNeutralLanguages() {
+  public static function providerNeutralLanguages() {
     return [
       [LanguageInterface::LANGCODE_NOT_APPLICABLE, NULL],
       [LanguageInterface::LANGCODE_NOT_SPECIFIED, 'en'],
@@ -263,7 +263,7 @@ public function testDomain($http_host, $domains, $expected_langcode) {
    * @return array
    *   An array of data for checking domain negotiation.
    */
-  public function providerTestDomain() {
+  public static function providerTestDomain() {
 
     $domain_configuration[] = [
       'http_host' => 'example.de',
diff --git a/core/modules/language/tests/src/Unit/Menu/LanguageLocalTasksTest.php b/core/modules/language/tests/src/Unit/Menu/LanguageLocalTasksTest.php
index c246618cfb13d756fc28d328b3fc942deb1e8209..f69026f7f9849396e9cd04c3f6c98416fbd3bd2b 100644
--- a/core/modules/language/tests/src/Unit/Menu/LanguageLocalTasksTest.php
+++ b/core/modules/language/tests/src/Unit/Menu/LanguageLocalTasksTest.php
@@ -35,7 +35,7 @@ public function testLanguageAdminLocalTasks($route, $expected) {
   /**
    * Provides a list of routes to test.
    */
-  public function getLanguageAdminOverviewRoutes() {
+  public static function getLanguageAdminOverviewRoutes() {
     return [
       ['entity.configurable_language.collection', [['entity.configurable_language.collection', 'language.negotiation']]],
       ['language.negotiation', [['entity.configurable_language.collection', 'language.negotiation']]],
diff --git a/core/modules/layout_builder/tests/src/Functional/LayoutBuilderAccessTest.php b/core/modules/layout_builder/tests/src/Functional/LayoutBuilderAccessTest.php
index 24983d439d6d52756b3f964db39aae971145cdc1..bb81323437436e8776dd0202e4714cb7cdacb85c 100644
--- a/core/modules/layout_builder/tests/src/Functional/LayoutBuilderAccessTest.php
+++ b/core/modules/layout_builder/tests/src/Functional/LayoutBuilderAccessTest.php
@@ -141,7 +141,7 @@ public function testAccessWithBundles(array $permissions, $default_access, $non_
   /**
    * Provides test data for ::testAccessWithBundles().
    */
-  public function providerTestAccessWithBundles() {
+  public static function providerTestAccessWithBundles() {
     // Data provider values are:
     // - the permissions to grant to the user
     // - whether access is expected for the defaults
@@ -235,7 +235,7 @@ public function testAccessWithoutBundles(array $permissions, $default_access, $n
   /**
    * Provides test data for ::testAccessWithoutBundles().
    */
-  public function providerTestAccessWithoutBundles() {
+  public static function providerTestAccessWithoutBundles() {
     // Data provider values are:
     // - the permissions to grant to the user
     // - whether access is expected for the defaults
diff --git a/core/modules/layout_builder/tests/src/Functional/LayoutSectionTest.php b/core/modules/layout_builder/tests/src/Functional/LayoutSectionTest.php
index f04478f8b00874e6b5afbe77cdea39f4e2b93a43..f575bc85b72857f0f513f39185966effd9cf742f 100644
--- a/core/modules/layout_builder/tests/src/Functional/LayoutSectionTest.php
+++ b/core/modules/layout_builder/tests/src/Functional/LayoutSectionTest.php
@@ -59,7 +59,7 @@ protected function setUp(): void {
   /**
    * Provides test data for ::testLayoutSectionFormatter().
    */
-  public function providerTestLayoutSectionFormatter() {
+  public static function providerTestLayoutSectionFormatter() {
     $data = [];
     $data['block_with_global_context'] = [
       [
diff --git a/core/modules/layout_builder/tests/src/FunctionalJavascript/InlineBlockTest.php b/core/modules/layout_builder/tests/src/FunctionalJavascript/InlineBlockTest.php
index 75b465d1a263286a4f8a583b901400cddd608b47..b76512c849748fadd545825857b32f0bed51c19c 100644
--- a/core/modules/layout_builder/tests/src/FunctionalJavascript/InlineBlockTest.php
+++ b/core/modules/layout_builder/tests/src/FunctionalJavascript/InlineBlockTest.php
@@ -186,7 +186,7 @@ public function testNoLayoutSave($operation, $no_save_button_text, $confirm_butt
   /**
    * Provides test data for ::testNoLayoutSave().
    */
-  public function layoutNoSaveProvider() {
+  public static function layoutNoSaveProvider() {
     return [
       'discard_changes' => [
         'discard_changes',
diff --git a/core/modules/layout_builder/tests/src/Kernel/DefaultsSectionStorageTest.php b/core/modules/layout_builder/tests/src/Kernel/DefaultsSectionStorageTest.php
index 864d0df00d1ec4b680b8146fc79984c2a4d783ee..e749f35643213d5d248182e925b20f322f3d47db 100644
--- a/core/modules/layout_builder/tests/src/Kernel/DefaultsSectionStorageTest.php
+++ b/core/modules/layout_builder/tests/src/Kernel/DefaultsSectionStorageTest.php
@@ -109,7 +109,7 @@ public function testAccess($expected, $operation, $is_enabled, array $section_da
   /**
    * Provides test data for ::testAccess().
    */
-  public function providerTestAccess() {
+  public static function providerTestAccess() {
     $section_data = [
       new Section(
         'layout_onecol',
diff --git a/core/modules/layout_builder/tests/src/Kernel/FieldBlockTest.php b/core/modules/layout_builder/tests/src/Kernel/FieldBlockTest.php
index 605006f12d06428332495cd48a82fc1676d7184b..24a45c9628e480540aac2d5b506a82f3df8f6fa6 100644
--- a/core/modules/layout_builder/tests/src/Kernel/FieldBlockTest.php
+++ b/core/modules/layout_builder/tests/src/Kernel/FieldBlockTest.php
@@ -75,7 +75,7 @@ public function testBlockAccessEntityNotAllowed($expected, $entity_access) {
   /**
    * Provides test data for ::testBlockAccessEntityNotAllowed().
    */
-  public function providerTestBlockAccessNotAllowed() {
+  public static function providerTestBlockAccessNotAllowed() {
     $data = [];
     $data['entity_forbidden'] = [
       FALSE,
@@ -176,7 +176,7 @@ public function testBlockAccessEntityAllowedFieldHasValue($expected, $is_empty,
   /**
    * Provides test data for ::testBlockAccessEntityAllowedFieldHasValue().
    */
-  public function providerTestBlockAccessEntityAllowedFieldHasValue() {
+  public static function providerTestBlockAccessEntityAllowedFieldHasValue() {
     $data = [];
     $data['empty'] = [
       FALSE,
@@ -282,7 +282,7 @@ public function testBuild(PromiseInterface $promise, $expected_markup, $log_mess
   /**
    * Provides test data for ::testBuild().
    */
-  public function providerTestBuild() {
+  public static function providerTestBuild() {
     $data = [];
     $data['array'] = [
       new ReturnPromise([['content' => ['#markup' => 'The field value']]]),
diff --git a/core/modules/layout_builder/tests/src/Kernel/LayoutBuilderEntityViewDisplayTest.php b/core/modules/layout_builder/tests/src/Kernel/LayoutBuilderEntityViewDisplayTest.php
index e0df4ad034bc51334e55d92a5ba81f5354b7beef..e18a30afbe49c64df662d69e8f396faf6761ad58 100644
--- a/core/modules/layout_builder/tests/src/Kernel/LayoutBuilderEntityViewDisplayTest.php
+++ b/core/modules/layout_builder/tests/src/Kernel/LayoutBuilderEntityViewDisplayTest.php
@@ -64,7 +64,7 @@ public function testIsLayoutBuilderEnabled($expected, $view_mode, $enabled) {
   /**
    * Provides test data for ::testIsLayoutBuilderEnabled().
    */
-  public function providerTestIsLayoutBuilderEnabled() {
+  public static function providerTestIsLayoutBuilderEnabled() {
     $data = [];
     $data['default enabled'] = [TRUE, 'default', TRUE];
     $data['default disabled'] = [FALSE, 'default', FALSE];
diff --git a/core/modules/layout_builder/tests/src/Kernel/LayoutEntityHelperTraitTest.php b/core/modules/layout_builder/tests/src/Kernel/LayoutEntityHelperTraitTest.php
index 1b9c74e59f1ded09099d6d245d0bd71201d53158..62f77f78830fbb262a93402bfab96f32c7a65a1a 100644
--- a/core/modules/layout_builder/tests/src/Kernel/LayoutEntityHelperTraitTest.php
+++ b/core/modules/layout_builder/tests/src/Kernel/LayoutEntityHelperTraitTest.php
@@ -49,7 +49,7 @@ protected function setUp(): void {
   /**
    * Data provider for testGetSectionStorageForEntity().
    */
-  public function providerTestGetSectionStorageForEntity() {
+  public static function providerTestGetSectionStorageForEntity() {
     $data = [];
     $data['entity_view_display'] = [
       'entity_view_display',
@@ -122,7 +122,7 @@ public function testGetSectionStorageForEntity($entity_type_id, $values, $expect
   /**
    * Data provider for testOriginalEntityUsesDefaultStorage().
    */
-  public function providerTestOriginalEntityUsesDefaultStorage() {
+  public static function providerTestOriginalEntityUsesDefaultStorage() {
     return [
       'original uses default' => [
         [
diff --git a/core/modules/layout_builder/tests/src/Kernel/OverridesSectionStorageTest.php b/core/modules/layout_builder/tests/src/Kernel/OverridesSectionStorageTest.php
index b4dbf785e17dbaff53894dfa396c43a4abeee3bb..ff4dcf7298cb75a006d68493ebc4046e9f86e5f3 100644
--- a/core/modules/layout_builder/tests/src/Kernel/OverridesSectionStorageTest.php
+++ b/core/modules/layout_builder/tests/src/Kernel/OverridesSectionStorageTest.php
@@ -117,7 +117,7 @@ public function testAccess($expected, $is_enabled, array $section_data, array $p
   /**
    * Provides test data for ::testAccess().
    */
-  public function providerTestAccess() {
+  public static function providerTestAccess() {
     $section_data = [
       new Section('layout_onecol', [], [
         '10000000-0000-1000-a000-000000000000' => new SectionComponent('10000000-0000-1000-a000-000000000000', 'content', ['id' => 'foo']),
diff --git a/core/modules/layout_builder/tests/src/Kernel/SectionListTestBase.php b/core/modules/layout_builder/tests/src/Kernel/SectionListTestBase.php
index 0a769bca3baea08f018ce314840d6e2c22924a7c..2e3de8b4bccb6e4a3bd798e6523187e2a4cd49e0 100644
--- a/core/modules/layout_builder/tests/src/Kernel/SectionListTestBase.php
+++ b/core/modules/layout_builder/tests/src/Kernel/SectionListTestBase.php
@@ -142,7 +142,7 @@ public function testRemoveAllSections($set_blank, $expected) {
   /**
    * Provides test data for ::testRemoveAllSections().
    */
-  public function providerTestRemoveAllSections() {
+  public static function providerTestRemoveAllSections() {
     $data = [];
     $data[] = [NULL, []];
     $data[] = [FALSE, []];
diff --git a/core/modules/layout_builder/tests/src/Unit/BlockComponentRenderArrayTest.php b/core/modules/layout_builder/tests/src/Unit/BlockComponentRenderArrayTest.php
index 7ace912fc5b021fdb41bc6a809fa49ebe39a862c..10787a76cb5572300e4a2fe706bf274edbc64671 100644
--- a/core/modules/layout_builder/tests/src/Unit/BlockComponentRenderArrayTest.php
+++ b/core/modules/layout_builder/tests/src/Unit/BlockComponentRenderArrayTest.php
@@ -47,7 +47,7 @@ class BlockComponentRenderArrayTest extends UnitTestCase {
   /**
    * Data provider for test functions that should test block types.
    */
-  public function providerBlockTypes() {
+  public static function providerBlockTypes() {
     return [
       [TRUE],
       [FALSE],
diff --git a/core/modules/layout_builder/tests/src/Unit/DefaultsSectionStorageTest.php b/core/modules/layout_builder/tests/src/Unit/DefaultsSectionStorageTest.php
index a0abb96c7b58146be094de76e3c0b41552e4a62b..190110cda711ce3b98d29fdc9a638e781776c6e8 100644
--- a/core/modules/layout_builder/tests/src/Unit/DefaultsSectionStorageTest.php
+++ b/core/modules/layout_builder/tests/src/Unit/DefaultsSectionStorageTest.php
@@ -148,7 +148,7 @@ public function testExtractEntityFromRoute($success, $expected_entity_id, $value
   /**
    * Provides data for ::testExtractEntityFromRoute().
    */
-  public function providerTestExtractEntityFromRoute() {
+  public static function providerTestExtractEntityFromRoute() {
     // Data provider values are:
     // - whether a successful result is expected
     // - the expected entity ID
diff --git a/core/modules/layout_builder/tests/src/Unit/LayoutBuilderIsActiveCacheContextTest.php b/core/modules/layout_builder/tests/src/Unit/LayoutBuilderIsActiveCacheContextTest.php
index 2b8cbd00f8b5b4e003213cca7e868048cf6530a5..b81f9b2ff61af8f251df856b82642356d514fea2 100644
--- a/core/modules/layout_builder/tests/src/Unit/LayoutBuilderIsActiveCacheContextTest.php
+++ b/core/modules/layout_builder/tests/src/Unit/LayoutBuilderIsActiveCacheContextTest.php
@@ -96,7 +96,7 @@ public function testGetContext($is_overridden, $expected) {
   /**
    * Provides test data for ::testGetContext().
    */
-  public function providerTestGetContext() {
+  public static function providerTestGetContext() {
     $data = [];
     $data['overridden'] = [
       TRUE,
diff --git a/core/modules/layout_builder/tests/src/Unit/OverridesSectionStorageTest.php b/core/modules/layout_builder/tests/src/Unit/OverridesSectionStorageTest.php
index 6510e6289340414f479048f9da54ad01533ccb0e..a9f8ba3b4c2a705559b34aa9e3f2cdae1d697af9 100644
--- a/core/modules/layout_builder/tests/src/Unit/OverridesSectionStorageTest.php
+++ b/core/modules/layout_builder/tests/src/Unit/OverridesSectionStorageTest.php
@@ -120,7 +120,7 @@ public function testExtractEntityFromRoute($success, $expected_entity_type_id, $
   /**
    * Provides data for ::testExtractEntityFromRoute().
    */
-  public function providerTestExtractEntityFromRoute() {
+  public static function providerTestExtractEntityFromRoute() {
     // Data provider values are:
     // - whether a successful result is expected
     // - the expected entity ID
diff --git a/core/modules/layout_builder/tests/src/Unit/SectionStorageManagerTest.php b/core/modules/layout_builder/tests/src/Unit/SectionStorageManagerTest.php
index 64ffbf5abd38c3168e0a686e2cb8852b0d6fcfb7..0f3f8f0cc4ca3636ee9c11c1d9fe940d52722b0a 100644
--- a/core/modules/layout_builder/tests/src/Unit/SectionStorageManagerTest.php
+++ b/core/modules/layout_builder/tests/src/Unit/SectionStorageManagerTest.php
@@ -192,7 +192,7 @@ public function testFindByContext($plugin_is_applicable) {
   /**
    * Provides test data for ::testFindByContext().
    */
-  public function providerTestFindByContext() {
+  public static function providerTestFindByContext() {
     // Data provider values are:
     // - the result for the plugin's isApplicable() method to return.
     $data = [];
diff --git a/core/modules/layout_builder/tests/src/Unit/SectionTest.php b/core/modules/layout_builder/tests/src/Unit/SectionTest.php
index f911459daff034697d78c79ef77c7fa5dc86178e..6ffa19570bdb85b8ad57e9a79edbfe072e9b5392 100644
--- a/core/modules/layout_builder/tests/src/Unit/SectionTest.php
+++ b/core/modules/layout_builder/tests/src/Unit/SectionTest.php
@@ -210,7 +210,7 @@ public function testGetThirdPartySettings($provider, $expected) {
   /**
    * Provides test data for ::testGetThirdPartySettings().
    */
-  public function providerTestGetThirdPartySettings() {
+  public static function providerTestGetThirdPartySettings() {
     $data = [];
     $data[] = [
       'bad_judgement',
@@ -286,7 +286,7 @@ public function testSetThirdPartySetting($provider, $key, $value, $expected) {
   /**
    * Provides test data for ::testSetThirdPartySettings().
    */
-  public function providerTestSetThirdPartySetting() {
+  public static function providerTestSetThirdPartySetting() {
     $data = [];
     $data[] = [
       'bad_judgement',
@@ -330,7 +330,7 @@ public function testUnsetThirdPartySetting($provider, $key, $expected) {
   /**
    * Provides test data for ::testUnsetThirdPartySetting().
    */
-  public function providerTestUnsetThirdPartySetting() {
+  public static function providerTestUnsetThirdPartySetting() {
     $data = [];
     $data['Key with values'] = [
       'bad_judgement',
@@ -399,7 +399,7 @@ public function testGetLayout(array $contexts, bool $should_context_apply) {
   /**
    * Provides test data for ::testGetLayout().
    */
-  public function providerTestGetLayout() {
+  public static function providerTestGetLayout() {
     $data = [];
     $data['contexts'] = [['foo' => 'bar'], TRUE];
     $data['no contexts'] = [[], FALSE];
diff --git a/core/modules/layout_discovery/tests/src/Kernel/LayoutTest.php b/core/modules/layout_discovery/tests/src/Kernel/LayoutTest.php
index 1e76337a638b411170dd7787c7063fef12a7f7c2..afc7835ae0ebc1d229b5b21a15ba9431d7b0d350 100644
--- a/core/modules/layout_discovery/tests/src/Kernel/LayoutTest.php
+++ b/core/modules/layout_discovery/tests/src/Kernel/LayoutTest.php
@@ -91,7 +91,7 @@ protected function render(array &$elements) {
   /**
    * Data provider for testRenderLayout().
    */
-  public function renderLayoutData() {
+  public static function renderLayoutData() {
     $html = [];
     $html[] = '<div data-drupal-selector="edit-layout" class="layout layout--onecol">';
     $html[] = '<div data-drupal-selector="edit-content" class="layout__region layout__region--content">';
diff --git a/core/modules/link/tests/src/FunctionalJavascript/LinkFieldFormStatesTest.php b/core/modules/link/tests/src/FunctionalJavascript/LinkFieldFormStatesTest.php
index 2a6d9ca6b6437f2a692ae21bdb81b8f3ee8bca88..bc76b1e78a1f090c612a52a23fc84b751e9be1b5 100644
--- a/core/modules/link/tests/src/FunctionalJavascript/LinkFieldFormStatesTest.php
+++ b/core/modules/link/tests/src/FunctionalJavascript/LinkFieldFormStatesTest.php
@@ -64,7 +64,7 @@ public function testLinkFieldFormStates(string $uri, string $title) {
   /**
    * Provides data for ::testLinkFieldJSFormStates.
    */
-  public function linkFieldFormStatesData() {
+  public static function linkFieldFormStatesData() {
     return [
       'Fill uri, keep title empty' => [
         'https://example.com',
diff --git a/core/modules/link/tests/src/Unit/Plugin/Validation/Constraint/LinkExternalProtocolsConstraintValidatorTest.php b/core/modules/link/tests/src/Unit/Plugin/Validation/Constraint/LinkExternalProtocolsConstraintValidatorTest.php
index 1ed27c5097628a3ec60744cfaa94a657d0b2dcbc..e88b63296726ff65322235a2e19074dd672ce4e1 100644
--- a/core/modules/link/tests/src/Unit/Plugin/Validation/Constraint/LinkExternalProtocolsConstraintValidatorTest.php
+++ b/core/modules/link/tests/src/Unit/Plugin/Validation/Constraint/LinkExternalProtocolsConstraintValidatorTest.php
@@ -51,7 +51,7 @@ public function testValidate($url, $valid) {
   /**
    * Data provider for ::testValidate.
    */
-  public function providerValidate() {
+  public static function providerValidate() {
     $data = [];
 
     // Test allowed protocols.
diff --git a/core/modules/link/tests/src/Unit/Plugin/migrate/process/FieldLinkTest.php b/core/modules/link/tests/src/Unit/Plugin/migrate/process/FieldLinkTest.php
index 87c399172e9b0fb3253bb70ee43bfa52d6e4d277..fb09c54c68e6766c6f5d5d5afcecdf60078c8ca0 100644
--- a/core/modules/link/tests/src/Unit/Plugin/migrate/process/FieldLinkTest.php
+++ b/core/modules/link/tests/src/Unit/Plugin/migrate/process/FieldLinkTest.php
@@ -33,7 +33,7 @@ public function testCanonicalizeUri($url, $expected, $configuration = []) {
   /**
    * Data provider for testCanonicalizeUri.
    */
-  public function canonicalizeUriDataProvider() {
+  public static function canonicalizeUriDataProvider() {
     return [
       'Simple front-page' => [
         '<front>',
diff --git a/core/modules/locale/tests/src/Functional/LocaleLocaleLookupTest.php b/core/modules/locale/tests/src/Functional/LocaleLocaleLookupTest.php
index 7ea710286ee10b589e7530128537bbc328e227d1..7df92f83b31a4401a8336b3f895ac6452554fe9b 100644
--- a/core/modules/locale/tests/src/Functional/LocaleLocaleLookupTest.php
+++ b/core/modules/locale/tests/src/Functional/LocaleLocaleLookupTest.php
@@ -104,7 +104,7 @@ public function testFixOldPluralStyle($translation_value, $expected) {
    *     - translation value
    *     - expected result
    */
-  public function providerTestFixOldPluralStyle() {
+  public static function providerTestFixOldPluralStyle() {
     return [
       'non-plural translation' => ['@count[2] non-plural test', '@count[2] non-plural test'],
       'plural translation' => ['@count[2] plural test' . PoItem::DELIMITER, '@count plural test'],
diff --git a/core/modules/locale/tests/src/Unit/LocaleLookupTest.php b/core/modules/locale/tests/src/Unit/LocaleLookupTest.php
index d4de8d8106ebb5e8d2f9038e955fab44dbdf18ff..1a01ed1598182a55a4f1d3096f8d98cb4a275371 100644
--- a/core/modules/locale/tests/src/Unit/LocaleLookupTest.php
+++ b/core/modules/locale/tests/src/Unit/LocaleLookupTest.php
@@ -195,7 +195,7 @@ public function testResolveCacheMissWithFallback($langcode, $string, $context, $
   /**
    * Provides test data for testResolveCacheMissWithFallback().
    */
-  public function resolveCacheMissWithFallbackProvider() {
+  public static function resolveCacheMissWithFallbackProvider() {
     // cSpell:disable
     return [
       ['cs', 'test', 'irrelevant', 'test v české'],
@@ -325,7 +325,7 @@ public function testFixOldPluralStyleTranslations($translations, $langcode, $str
   /**
    * Provides test data for testResolveCacheMissWithFallback().
    */
-  public function providerFixOldPluralTranslationProvider() {
+  public static function providerFixOldPluralTranslationProvider() {
     $translations = [
       'by' => [
         'word1' => '@count[2] word-by',
@@ -373,7 +373,7 @@ public function testGetCid(array $roles, $expected) {
   /**
    * Provides test data for testGetCid().
    */
-  public function getCidProvider() {
+  public static function getCidProvider() {
     return [
       [
         ['a'], 'locale:en:irrelevant:a',
diff --git a/core/modules/locale/tests/src/Unit/Menu/LocaleLocalTasksTest.php b/core/modules/locale/tests/src/Unit/Menu/LocaleLocalTasksTest.php
index 72ad654bad75ff1c8b72155337336941a412229f..f56b021476bfc39f732ab01caf3ff6b1c284fb35 100644
--- a/core/modules/locale/tests/src/Unit/Menu/LocaleLocalTasksTest.php
+++ b/core/modules/locale/tests/src/Unit/Menu/LocaleLocalTasksTest.php
@@ -38,7 +38,7 @@ public function testLocalePageLocalTasks($route) {
   /**
    * Provides a list of routes to test.
    */
-  public function getLocalePageRoutes() {
+  public static function getLocalePageRoutes() {
     return [
       ['locale.translate_page'],
       ['locale.translate_import'],
diff --git a/core/modules/media/tests/src/Functional/FieldFormatter/OEmbedFormatterTest.php b/core/modules/media/tests/src/Functional/FieldFormatter/OEmbedFormatterTest.php
index 269160976d8cd350f09e2490ddaa6438b5a80ba4..ee70fb8f5794938c36a28ea050a0ba8c2883a008 100644
--- a/core/modules/media/tests/src/Functional/FieldFormatter/OEmbedFormatterTest.php
+++ b/core/modules/media/tests/src/Functional/FieldFormatter/OEmbedFormatterTest.php
@@ -55,7 +55,7 @@ protected function setUp(): void {
    *
    * @return array
    */
-  public function providerRender() {
+  public static function providerRender() {
     return [
       'Vimeo video' => [
         'https://vimeo.com/7073899',
diff --git a/core/modules/media/tests/src/Functional/MediaUiReferenceWidgetTest.php b/core/modules/media/tests/src/Functional/MediaUiReferenceWidgetTest.php
index 49489022eeae03e38a3dc6d94a539f1212c849ed..4a4f395ff47fb90b6b9dc94d69d54c1126165640 100644
--- a/core/modules/media/tests/src/Functional/MediaUiReferenceWidgetTest.php
+++ b/core/modules/media/tests/src/Functional/MediaUiReferenceWidgetTest.php
@@ -50,7 +50,7 @@ protected function setUp(): void {
    * @return array[]
    *   Test data. See testMediaReferenceWidget() for the child array structure.
    */
-  public function providerTestMediaReferenceWidget() {
+  public static function providerTestMediaReferenceWidget() {
     return [
       // Single-value fields with a single media type and the default widget:
       // - The user can create and list the media.
diff --git a/core/modules/media/tests/src/Functional/ProviderRepositoryTest.php b/core/modules/media/tests/src/Functional/ProviderRepositoryTest.php
index d791a2f90ea771df2dfd890b2a437150566b34c8..6c812dae765d78d6692d5e44cd9715a80fcae4aa 100644
--- a/core/modules/media/tests/src/Functional/ProviderRepositoryTest.php
+++ b/core/modules/media/tests/src/Functional/ProviderRepositoryTest.php
@@ -50,7 +50,7 @@ public function testEmptyProviderList($content) {
    *
    * @return array
    */
-  public function providerEmptyProviderList() {
+  public static function providerEmptyProviderList() {
     return [
       'empty array' => ['[]'],
       'empty string' => [''],
@@ -84,7 +84,7 @@ public function testNonExistingProviderDatabase($providers_url, $exception_messa
    *
    * @return array
    */
-  public function providerNonExistingProviderDatabase() {
+  public static function providerNonExistingProviderDatabase() {
     return [
       [
         'http://oembed1.com/providers.json',
diff --git a/core/modules/media/tests/src/Functional/ResourceFetcherTest.php b/core/modules/media/tests/src/Functional/ResourceFetcherTest.php
index b83f7b9fa885b69f14299c36e2dfcf9eff7acfd9..699e07ad19b8dbd6f43ab3d2c91154d0968f2c90 100644
--- a/core/modules/media/tests/src/Functional/ResourceFetcherTest.php
+++ b/core/modules/media/tests/src/Functional/ResourceFetcherTest.php
@@ -35,7 +35,7 @@ protected function setUp(): void {
    *
    * @return array
    */
-  public function providerFetchResource() {
+  public static function providerFetchResource() {
     return [
       'JSON resource' => [
         'video_vimeo.json',
diff --git a/core/modules/media/tests/src/Functional/UrlResolverTest.php b/core/modules/media/tests/src/Functional/UrlResolverTest.php
index beb88d0de879dc82ce4d9708b7b5a3d0d59fa5e5..2af6722a86303a9c773e74955844522902c78316 100644
--- a/core/modules/media/tests/src/Functional/UrlResolverTest.php
+++ b/core/modules/media/tests/src/Functional/UrlResolverTest.php
@@ -37,7 +37,7 @@ protected function setUp(): void {
    *
    * @return array
    */
-  public function providerEndpointMatching() {
+  public static function providerEndpointMatching() {
     return [
       'match by endpoint: Twitter' => [
         'https://twitter.com/Dries/status/999985431595880448',
@@ -99,7 +99,7 @@ public function testResourceUrlAlterHook() {
    *
    * @return array
    */
-  public function providerUrlDiscovery() {
+  public static function providerUrlDiscovery() {
     return [
       'JSON resource' => [
         'video_vimeo.html',
diff --git a/core/modules/media/tests/src/Kernel/MediaAccessControlHandlerTest.php b/core/modules/media/tests/src/Kernel/MediaAccessControlHandlerTest.php
index 9853060416ce6d24dabb722783a6c4ec179396c7..af64534a6493da538e131f141598e5980b87fba4 100644
--- a/core/modules/media/tests/src/Kernel/MediaAccessControlHandlerTest.php
+++ b/core/modules/media/tests/src/Kernel/MediaAccessControlHandlerTest.php
@@ -132,7 +132,7 @@ protected function assertAccess(AccessResultInterface $expected_access_result, a
    * @return array
    *   The data sets to test.
    */
-  public function providerAccess() {
+  public static function providerAccess() {
     $test_data = [];
 
     // Check published / unpublished media access for a user owning the media
@@ -624,7 +624,7 @@ public function providerAccess() {
    * @return array
    *   The data sets to test.
    */
-  public function providerCreateAccess() {
+  public static function providerCreateAccess() {
     $test_data = [];
 
     // Check create access for a user without permissions.
diff --git a/core/modules/media/tests/src/Kernel/MediaEmbedFilterTest.php b/core/modules/media/tests/src/Kernel/MediaEmbedFilterTest.php
index 6a9e6717ac0ba7e2ce1dea880552c99cefcfa6f9..0b20c3f8f8dc8f0e62f5e1233c60592f0ce6fd36 100644
--- a/core/modules/media/tests/src/Kernel/MediaEmbedFilterTest.php
+++ b/core/modules/media/tests/src/Kernel/MediaEmbedFilterTest.php
@@ -44,7 +44,7 @@ public function testBasics(array $embed_attributes, $expected_view_mode, array $
   /**
    * Data provider for testBasics().
    */
-  public function providerTestBasics() {
+  public static function providerTestBasics() {
     $default_cacheability = (new CacheableMetadata())
       ->setCacheTags([
         '_media_test_embed_filter_access:media:1',
@@ -162,7 +162,7 @@ public function testAccessUnpublished($allowed_to_view_unpublished, $expected_re
   /**
    * Data provider for testAccessUnpublished().
    */
-  public function providerAccessUnpublished() {
+  public static function providerAccessUnpublished() {
     return [
       'user cannot access embedded media' => [
         FALSE,
@@ -260,7 +260,7 @@ public function testOverridesAltAndTitle($title_field_property_enabled, array $e
   /**
    * Data provider for testOverridesAltAndTitle().
    */
-  public function providerOverridesAltAndTitle() {
+  public static function providerOverridesAltAndTitle() {
     return [
       '`title` field property disabled ⇒ `title` is not overridable' => [
         FALSE,
@@ -306,7 +306,7 @@ public function testMissingEntityIndicator($uuid, array $filter_ids, array $addi
   /**
    * Data provider for testMissingEntityIndicator().
    */
-  public function providerMissingEntityIndicator() {
+  public static function providerMissingEntityIndicator() {
     return [
       'invalid UUID' => [
         'uuid' => 'invalidUUID',
@@ -425,7 +425,7 @@ public function testFilterIntegration(array $filter_ids, array $additional_attri
   /**
    * Data provider for testFilterIntegration().
    */
-  public function providerFilterIntegration() {
+  public static function providerFilterIntegration() {
     $default_asset_libraries = ['media/filter.caption'];
 
     $caption_additional_attributes = ['data-caption' => 'Yo.'];
diff --git a/core/modules/media/tests/src/Kernel/MediaEmbedFilterTranslationTest.php b/core/modules/media/tests/src/Kernel/MediaEmbedFilterTranslationTest.php
index ead63b80b8c4b49d9b838e605802cdb4127e5047..da9335a6b5e7338a1371cb4c08a4da35426a44b4 100644
--- a/core/modules/media/tests/src/Kernel/MediaEmbedFilterTranslationTest.php
+++ b/core/modules/media/tests/src/Kernel/MediaEmbedFilterTranslationTest.php
@@ -68,7 +68,7 @@ public function testTranslationSelection($text_langcode, $expected_title_langcod
   /**
    * Data provider for testTranslationSelection().
    */
-  public function providerTranslationSituations() {
+  public static function providerTranslationSituations() {
     $embedded_entity_translation_languages = ['en', 'pt-br'];
 
     foreach (['en', 'pt-br', 'nl'] as $text_langcode) {
diff --git a/core/modules/media/tests/src/Kernel/MediaThumbnailFormatterTest.php b/core/modules/media/tests/src/Kernel/MediaThumbnailFormatterTest.php
index f02290e7f5c4cccb003140a6ddc7d501b1ef1eb8..4671e43fb9958a7d4f2d78fbb5cca59e821beb0d 100644
--- a/core/modules/media/tests/src/Kernel/MediaThumbnailFormatterTest.php
+++ b/core/modules/media/tests/src/Kernel/MediaThumbnailFormatterTest.php
@@ -91,7 +91,7 @@ public function testSettingsSummary(array $settings, array $expected_summary): v
    *
    * @return array[]
    */
-  public function providerTestSettingsSummary(): array {
+  public static function providerTestSettingsSummary(): array {
     return [
       'link to content' => [
         [
diff --git a/core/modules/media/tests/src/Kernel/OEmbedSourceTest.php b/core/modules/media/tests/src/Kernel/OEmbedSourceTest.php
index be3b092508f2d30b9f9ecb019ad63840f5ff3895..67b465c450f8304d676aaf288f34de2bdea5c19c 100644
--- a/core/modules/media/tests/src/Kernel/OEmbedSourceTest.php
+++ b/core/modules/media/tests/src/Kernel/OEmbedSourceTest.php
@@ -50,7 +50,7 @@ public function testGetMetadata() {
    * @return array
    *   Sets of arguments to pass to the test method.
    */
-  public function providerThumbnailUri(): array {
+  public static function providerThumbnailUri(): array {
     return [
       'no query string, extension in URL' => [
         'internal:/core/misc/druplicon.png',
diff --git a/core/modules/media/tests/src/Unit/IFrameUrlHelperTest.php b/core/modules/media/tests/src/Unit/IFrameUrlHelperTest.php
index 8bcf151c7f8b5f66de084d349f261eec79b411b3..c4eb068ffcc478e469e795c8203df0e779c003dc 100644
--- a/core/modules/media/tests/src/Unit/IFrameUrlHelperTest.php
+++ b/core/modules/media/tests/src/Unit/IFrameUrlHelperTest.php
@@ -23,7 +23,7 @@ class IFrameUrlHelperTest extends UnitTestCase {
    *
    * @return array
    */
-  public function providerIsSecure() {
+  public static function providerIsSecure() {
     return [
       'no domain' => [
         '/path/to/media.php',
diff --git a/core/modules/media/tests/src/Unit/ProviderRepositoryTest.php b/core/modules/media/tests/src/Unit/ProviderRepositoryTest.php
index ec353f195435454e3f27f39c890ad449094b7c9e..c45b1e4d609aa7aa5aa18fd3dce655ba5998a2a4 100644
--- a/core/modules/media/tests/src/Unit/ProviderRepositoryTest.php
+++ b/core/modules/media/tests/src/Unit/ProviderRepositoryTest.php
@@ -166,7 +166,7 @@ public function testInvalidResponse(int $expiration_offset): void {
    * @return array[]
    *   Sets of arguments to pass to the test method.
    */
-  public function providerInvalidResponse(): array {
+  public static function providerInvalidResponse(): array {
     return [
       'expired' => [
         -86400,
diff --git a/core/modules/media/tests/src/Unit/ResourceTest.php b/core/modules/media/tests/src/Unit/ResourceTest.php
index b47099e212f8d7b77dd3d49178b4d468fe4ca04b..cff1d3ab5bbd0cfcfe18d1dd2718be44ef3033ce 100644
--- a/core/modules/media/tests/src/Unit/ResourceTest.php
+++ b/core/modules/media/tests/src/Unit/ResourceTest.php
@@ -16,7 +16,7 @@ class ResourceTest extends UnitTestCase {
   /**
    * Test cases for ::testSetDimensions.
    */
-  public function setDimensionsTestCases() {
+  public static function setDimensionsTestCases() {
     return [
       'Standard rich dimensions' => [
         'rich',
diff --git a/core/modules/media_library/tests/src/FunctionalJavascript/EmbeddedFormWidgetTest.php b/core/modules/media_library/tests/src/FunctionalJavascript/EmbeddedFormWidgetTest.php
index 75378f053673dc260e96db8e9771dbbbc91b164a..36e294abb77a5fdd9b651703f03ca3578b6b5854 100644
--- a/core/modules/media_library/tests/src/FunctionalJavascript/EmbeddedFormWidgetTest.php
+++ b/core/modules/media_library/tests/src/FunctionalJavascript/EmbeddedFormWidgetTest.php
@@ -150,7 +150,7 @@ public function testInsertionAndReselection($widget) {
    * @return array
    *   Test data.
    */
-  public function insertionReselectionProvider() {
+  public static function insertionReselectionProvider() {
     return [
       'using media_library_widget' => [
         'widget' => 'media_library_widget',
diff --git a/core/modules/media_library/tests/src/FunctionalJavascript/WidgetOverflowTest.php b/core/modules/media_library/tests/src/FunctionalJavascript/WidgetOverflowTest.php
index a9139748901dc198c50f5f97608ee2c8d957f7b6..36692a563c9b7a47ee3c8f5f3c7006fde308c0a9 100644
--- a/core/modules/media_library/tests/src/FunctionalJavascript/WidgetOverflowTest.php
+++ b/core/modules/media_library/tests/src/FunctionalJavascript/WidgetOverflowTest.php
@@ -174,7 +174,7 @@ public function testUnlimitedCardinality(?string $selected_operation): void {
    * @return array[]
    *   Sets of arguments to pass to the test method.
    */
-  public function providerWidgetOverflow(): array {
+  public static function providerWidgetOverflow(): array {
     return [
       'Save' => [NULL],
       'Save and insert' => ['insert'],
diff --git a/core/modules/media_library/tests/src/Kernel/MediaLibraryAccessTest.php b/core/modules/media_library/tests/src/Kernel/MediaLibraryAccessTest.php
index 207b1f3241797b86ec57a9744df9fba1a6d6a374..0df7497470dfb3a22864f44ceb7ba81720573fb0 100644
--- a/core/modules/media_library/tests/src/Kernel/MediaLibraryAccessTest.php
+++ b/core/modules/media_library/tests/src/Kernel/MediaLibraryAccessTest.php
@@ -163,7 +163,7 @@ public function testEditorOpenerAccess($media_embed_enabled, $can_use_format) {
   /**
    * Data provider for ::testEditorOpenerAccess.
    */
-  public function editorOpenerAccessProvider() {
+  public static function editorOpenerAccessProvider() {
     return [
       'media_embed filter enabled' => [
         TRUE,
@@ -244,7 +244,7 @@ public function testFieldWidgetEntityEditAccess() {
    * @return array[]
    *   Sets of arguments to pass to the test method.
    */
-  public function providerFieldWidgetEntityFieldAccess(): array {
+  public static function providerFieldWidgetEntityFieldAccess(): array {
     return [
       ['entity_reference'],
       ['entity_reference_subclass'],
diff --git a/core/modules/media_library/tests/src/Kernel/MediaLibraryStateTest.php b/core/modules/media_library/tests/src/Kernel/MediaLibraryStateTest.php
index f174f014131416c4f7bebb843cfe13ba97ceea7d..57a6b75f97c9052e70fe4d16ce3c978b2c2e2ba5 100644
--- a/core/modules/media_library/tests/src/Kernel/MediaLibraryStateTest.php
+++ b/core/modules/media_library/tests/src/Kernel/MediaLibraryStateTest.php
@@ -118,7 +118,7 @@ public function testCreate($opener_id, array $allowed_media_type_ids, $selected_
    * @return array
    *   The data sets to test.
    */
-  public function providerCreate() {
+  public static function providerCreate() {
     $test_data = [];
 
     // Assert no exception is thrown when we add the parameters as expected.
@@ -306,7 +306,7 @@ public function testFromRequestQueryLess() {
    * @return array
    *   The data sets to test.
    */
-  public function providerFromRequest() {
+  public static function providerFromRequest() {
     $test_data = [];
 
     // Assert no exception is thrown when we use valid state parameters.
diff --git a/core/modules/menu_link_content/tests/src/Kernel/Plugin/migrate/process/LinkUriTest.php b/core/modules/menu_link_content/tests/src/Kernel/Plugin/migrate/process/LinkUriTest.php
index 01ac9ffd84902206040b27947bb49e9e6f2c6e68..d9aa5b0708ad024491de85ede5efba7bf0e3182b 100644
--- a/core/modules/menu_link_content/tests/src/Kernel/Plugin/migrate/process/LinkUriTest.php
+++ b/core/modules/menu_link_content/tests/src/Kernel/Plugin/migrate/process/LinkUriTest.php
@@ -62,7 +62,7 @@ public function testRouted($value, $expected) {
    *   - The value array to pass to LinkUri::transform().
    *   - The expected path returned by LinkUri::transform().
    */
-  public function providerTestRouted() {
+  public static function providerTestRouted() {
     $tests = [];
 
     $value = 'http://example.com';
@@ -105,7 +105,7 @@ public function testNotRouted($value, $exception_message) {
    *   - The expected path returned by LinkUri::transform().
    *   - (optional) A URL object that the path validator prophecy will return.
    */
-  public function providerTestNotRouted() {
+  public static function providerTestNotRouted() {
     $tests = [];
 
     $message = 'The path "%s" failed validation.';
@@ -155,7 +155,7 @@ public function testDisablingRouteValidation($value, $expected) {
    *   - The value array to pass to LinkUri::transform().
    *   - The expected path returned by LinkUri::transform().
    */
-  public function providerTestDisablingRouteValidation() {
+  public static function providerTestDisablingRouteValidation() {
     $tests = [];
 
     $value = 'node/1';
diff --git a/core/modules/menu_link_content/tests/src/Kernel/Plugin/migrate/source/MenuLinkTest.php b/core/modules/menu_link_content/tests/src/Kernel/Plugin/migrate/source/MenuLinkTest.php
index 05e4d9fe38b244d0c0664dcfa9e3e65fea38b118..84ba5f931672ca485ce1292bc22317faf82808fd 100644
--- a/core/modules/menu_link_content/tests/src/Kernel/Plugin/migrate/source/MenuLinkTest.php
+++ b/core/modules/menu_link_content/tests/src/Kernel/Plugin/migrate/source/MenuLinkTest.php
@@ -25,7 +25,7 @@ class MenuLinkTest extends MigrateSqlSourceTestBase {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     $tests = [];
 
     // The source data.
diff --git a/core/modules/menu_link_content/tests/src/Kernel/Plugin/migrate/source/d6/MenuLinkTranslationTest.php b/core/modules/menu_link_content/tests/src/Kernel/Plugin/migrate/source/d6/MenuLinkTranslationTest.php
index a61096eadfbf84006808d55a6a1e3cba7c7716bc..52614e05218610ecaffb9495ec282d20fceaeab9 100644
--- a/core/modules/menu_link_content/tests/src/Kernel/Plugin/migrate/source/d6/MenuLinkTranslationTest.php
+++ b/core/modules/menu_link_content/tests/src/Kernel/Plugin/migrate/source/d6/MenuLinkTranslationTest.php
@@ -22,7 +22,7 @@ class MenuLinkTranslationTest extends MigrateSqlSourceTestBase {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     $test = [];
     $test[0]['source_data']['menu_links'] = [
       [
diff --git a/core/modules/menu_link_content/tests/src/Kernel/Plugin/migrate/source/d7/MenuLinkLocalizedTest.php b/core/modules/menu_link_content/tests/src/Kernel/Plugin/migrate/source/d7/MenuLinkLocalizedTest.php
index d6cb4112e0e73f50bfb32e4a85d4ed03e94956d8..37ef4fce9a4f308d066babf64b7dc73acb7b53e3 100644
--- a/core/modules/menu_link_content/tests/src/Kernel/Plugin/migrate/source/d7/MenuLinkLocalizedTest.php
+++ b/core/modules/menu_link_content/tests/src/Kernel/Plugin/migrate/source/d7/MenuLinkLocalizedTest.php
@@ -22,7 +22,7 @@ class MenuLinkLocalizedTest extends MigrateSqlSourceTestBase {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     $tests = [];
     $tests[0]['source_data']['menu_links'] = [
       [
diff --git a/core/modules/menu_link_content/tests/src/Kernel/Plugin/migrate/source/d7/MenuLinkTranslationTest.php b/core/modules/menu_link_content/tests/src/Kernel/Plugin/migrate/source/d7/MenuLinkTranslationTest.php
index 35876e6bbe501e87e5cd92c4e77d8096d75d755f..9f8b3adf93db7127aee248735e9c1a38dee7ee1a 100644
--- a/core/modules/menu_link_content/tests/src/Kernel/Plugin/migrate/source/d7/MenuLinkTranslationTest.php
+++ b/core/modules/menu_link_content/tests/src/Kernel/Plugin/migrate/source/d7/MenuLinkTranslationTest.php
@@ -22,7 +22,7 @@ class MenuLinkTranslationTest extends MigrateSqlSourceTestBase {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     $test = [];
     $test[0]['source_data']['menu_links'] = [
       [
diff --git a/core/modules/menu_ui/tests/src/Functional/MenuUiContentTranslationTest.php b/core/modules/menu_ui/tests/src/Functional/MenuUiContentTranslationTest.php
index 2fe723911c89149e7ae6d8b0ceb8be9dd930b674..4aa35b2d2de7d5d7fc21a30910e5336bc311d13c 100644
--- a/core/modules/menu_ui/tests/src/Functional/MenuUiContentTranslationTest.php
+++ b/core/modules/menu_ui/tests/src/Functional/MenuUiContentTranslationTest.php
@@ -101,7 +101,7 @@ protected function getContentEntityByTitle($entity_type_id, $title) {
    * @return array
    *   Data sets to test keyed by data set label.
    */
-  public function provideChangeContentToPseudoLanguageData() {
+  public static function provideChangeContentToPseudoLanguageData() {
     return [
       'und' => ['langcode' => LanguageInterface::LANGCODE_NOT_SPECIFIED],
       'zxx' => ['langcode' => LanguageInterface::LANGCODE_NOT_APPLICABLE],
diff --git a/core/modules/migrate/tests/src/Kernel/HighWaterNotJoinableTest.php b/core/modules/migrate/tests/src/Kernel/HighWaterNotJoinableTest.php
index a2eaa6e44629993ed0762bcc3fbc362584a24749..50d5793ce0f70ac112e7148c08c815a19aada55f 100644
--- a/core/modules/migrate/tests/src/Kernel/HighWaterNotJoinableTest.php
+++ b/core/modules/migrate/tests/src/Kernel/HighWaterNotJoinableTest.php
@@ -22,7 +22,7 @@ class HighWaterNotJoinableTest extends MigrateSqlSourceTestBase {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     $tests = [];
 
     // Test high water when the map is not joinable.
diff --git a/core/modules/migrate/tests/src/Kernel/MigrateSourceTestBase.php b/core/modules/migrate/tests/src/Kernel/MigrateSourceTestBase.php
index 56f6db4bdf05dad9a36dbbfff94ea52b15bc5230..6cc02b6f81a012852ac13ea6a4c93b74ad459f05 100644
--- a/core/modules/migrate/tests/src/Kernel/MigrateSourceTestBase.php
+++ b/core/modules/migrate/tests/src/Kernel/MigrateSourceTestBase.php
@@ -48,7 +48,7 @@ abstract class MigrateSourceTestBase extends KernelTestBase {
    *     counted.
    *   - (optional) Array of configuration options for the plugin under test.
    */
-  abstract public function providerSource();
+  abstract public static function providerSource();
 
   /**
    * {@inheritdoc}
diff --git a/core/modules/migrate/tests/src/Kernel/MigrationPluginManagerTest.php b/core/modules/migrate/tests/src/Kernel/MigrationPluginManagerTest.php
index 44fe7878babaf57dff244b6beaff33e177fc5c8b..11364ebdb3beb62c5f0210177dd80576f4ff6b35 100644
--- a/core/modules/migrate/tests/src/Kernel/MigrationPluginManagerTest.php
+++ b/core/modules/migrate/tests/src/Kernel/MigrationPluginManagerTest.php
@@ -52,7 +52,7 @@ public function testCreateInstancesByTag($tags, $expected) {
   /**
    * Data provider for testCreateInstancesByTag.
    */
-  public function providerCreateInstanceByTag() {
+  public static function providerCreateInstanceByTag() {
     return [
       'get test' => [
         'test',
diff --git a/core/modules/migrate/tests/src/Kernel/Plugin/MigrationPluginConfigurationTest.php b/core/modules/migrate/tests/src/Kernel/Plugin/MigrationPluginConfigurationTest.php
index 618b548f10b76cbc51ff0ed2eacbbb54af0fa615..0ba5fe499805e8f5f055a058189760a874ee5810 100644
--- a/core/modules/migrate/tests/src/Kernel/Plugin/MigrationPluginConfigurationTest.php
+++ b/core/modules/migrate/tests/src/Kernel/Plugin/MigrationPluginConfigurationTest.php
@@ -39,7 +39,7 @@ public function testConfigurationMerge($id, $configuration, $expected) {
   /**
    * Provide configuration data for testing.
    */
-  public function mergeProvider() {
+  public static function mergeProvider() {
     return [
       // Tests adding new configuration to a migration.
       [
diff --git a/core/modules/migrate/tests/src/Kernel/Plugin/MigrationProvidersExistTest.php b/core/modules/migrate/tests/src/Kernel/Plugin/MigrationProvidersExistTest.php
index 2312e6f74d5a59572fa78740f35e88d0229c15b1..2e53ebc263d82cc1f8108e43ac1eafc5b505a2c3 100644
--- a/core/modules/migrate/tests/src/Kernel/Plugin/MigrationProvidersExistTest.php
+++ b/core/modules/migrate/tests/src/Kernel/Plugin/MigrationProvidersExistTest.php
@@ -200,7 +200,7 @@ public function testFieldProviderMissingRequiredProperty(array $definitions, $mi
    * @return array
    *   Array of plugin definitions.
    */
-  public function fieldPluginDefinitionsProvider() {
+  public static function fieldPluginDefinitionsProvider() {
     return [
       'missing_core_scenario' => [
         'definitions' => [
diff --git a/core/modules/migrate/tests/src/Kernel/Plugin/MigrationTest.php b/core/modules/migrate/tests/src/Kernel/Plugin/MigrationTest.php
index 0211874690a24f69f10896a14a32b609a1bf25b0..9a7caf0dabf4b66679cc0da3ce230a33dcd4c335 100644
--- a/core/modules/migrate/tests/src/Kernel/Plugin/MigrationTest.php
+++ b/core/modules/migrate/tests/src/Kernel/Plugin/MigrationTest.php
@@ -71,7 +71,7 @@ public function testGetProcessPluginsExceptionMessage(array $process) {
   /**
    * Provides data for testing invalid process pipeline.
    */
-  public function getProcessPluginsExceptionMessageProvider() {
+  public static function getProcessPluginsExceptionMessageProvider() {
     return [
       [
         'Null' =>
diff --git a/core/modules/migrate/tests/src/Kernel/Plugin/id_map/SqlTest.php b/core/modules/migrate/tests/src/Kernel/Plugin/id_map/SqlTest.php
index fbf5765851f3df7fad07ff6ba8bd317e69adc5f8..6a93ad21c0dde2cac99844d8d7d1467ad97e00b0 100644
--- a/core/modules/migrate/tests/src/Kernel/Plugin/id_map/SqlTest.php
+++ b/core/modules/migrate/tests/src/Kernel/Plugin/id_map/SqlTest.php
@@ -96,7 +96,7 @@ public function testEnsureTables($ids) {
   /**
    * Provides data for testEnsureTables.
    */
-  public function providerTestEnsureTables() {
+  public static function providerTestEnsureTables() {
     return [
       'no ids' => [
         [],
@@ -156,7 +156,7 @@ public function testFailEnsureTables($ids) {
   /**
    * Provides data for testFailEnsureTables.
    */
-  public function providerTestFailEnsureTables() {
+  public static function providerTestFailEnsureTables() {
     return [
       'one id' => [
         [
diff --git a/core/modules/migrate/tests/src/Kernel/Plugin/source/MigrateSqlSourceCountCacheTest.php b/core/modules/migrate/tests/src/Kernel/Plugin/source/MigrateSqlSourceCountCacheTest.php
index b5b4db34aa85121fe058af6188469d3989b05cc7..5914cbf6f98e78ff4bdaa5f46146cc824f074579 100644
--- a/core/modules/migrate/tests/src/Kernel/Plugin/source/MigrateSqlSourceCountCacheTest.php
+++ b/core/modules/migrate/tests/src/Kernel/Plugin/source/MigrateSqlSourceCountCacheTest.php
@@ -23,7 +23,7 @@ class MigrateSqlSourceCountCacheTest extends MigrateSqlSourceTestBase {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     // All tests use the same source_data, expected_data, expected_count, and
     // high_water. The high water is set later to maintain the order of the
     // parameters.
diff --git a/core/modules/migrate/tests/src/Kernel/SqlBaseTest.php b/core/modules/migrate/tests/src/Kernel/SqlBaseTest.php
index 87dd77ba918b8838991c154600754e4dd168c18d..ad65962e06e0f2c80776f36b94fa9d2c104f6fec 100644
--- a/core/modules/migrate/tests/src/Kernel/SqlBaseTest.php
+++ b/core/modules/migrate/tests/src/Kernel/SqlBaseTest.php
@@ -189,7 +189,7 @@ public function testHighWater($high_water = NULL, array $query_result = []) {
    * @return array
    *   The scenarios to test.
    */
-  public function highWaterDataProvider() {
+  public static function highWaterDataProvider() {
     return [
       'no high-water value set' => [],
       'high-water value set' => [33],
diff --git a/core/modules/migrate/tests/src/Kernel/process/ExtractTest.php b/core/modules/migrate/tests/src/Kernel/process/ExtractTest.php
index c85f8aab1a574910f19a92a32fdc75d2f6ba8ac3..5537d99378c84236bf9c1895381445eafcac7e4c 100644
--- a/core/modules/migrate/tests/src/Kernel/process/ExtractTest.php
+++ b/core/modules/migrate/tests/src/Kernel/process/ExtractTest.php
@@ -80,7 +80,7 @@ public function testMultipleValueExplode(array $source_data, array $expected_dat
   /**
    * Provides multiple source data for "extract" process plugin test.
    */
-  public function multipleValueProviderSource() {
+  public static function multipleValueProviderSource() {
     $tests = [
       [
         'source_data' => [
diff --git a/core/modules/migrate/tests/src/Kernel/process/FileCopyTest.php b/core/modules/migrate/tests/src/Kernel/process/FileCopyTest.php
index ae52f6c6fe7a9ca002446eb2f03b471fbe5f9ad0..3c5c5e1d0c4933ff80b90c10e15529cf43913f59 100644
--- a/core/modules/migrate/tests/src/Kernel/process/FileCopyTest.php
+++ b/core/modules/migrate/tests/src/Kernel/process/FileCopyTest.php
@@ -109,7 +109,7 @@ public function testSuccessfulReuse($source_path, $destination_path) {
   /**
    * Provides the source and destination path files.
    */
-  public function providerSuccessfulReuse() {
+  public static function providerSuccessfulReuse() {
     return [
       [
         'local_source_path' => static::getDrupalRoot() . '/core/tests/fixtures/files/image-test.jpg',
diff --git a/core/modules/migrate/tests/src/Kernel/process/HandleMultiplesTest.php b/core/modules/migrate/tests/src/Kernel/process/HandleMultiplesTest.php
index 548219feb155b0d6095600d52f4624b3e0e64e3f..29f4e6829430793c6cfa6f865513803586c42d2f 100644
--- a/core/modules/migrate/tests/src/Kernel/process/HandleMultiplesTest.php
+++ b/core/modules/migrate/tests/src/Kernel/process/HandleMultiplesTest.php
@@ -136,7 +136,7 @@ public function testScalarAndMultipleValues(array $source_data, array $expected_
    *
    * @return array
    */
-  public function scalarAndMultipleValuesProviderSource() {
+  public static function scalarAndMultipleValuesProviderSource() {
     return [
       [
         'source_data' => [
diff --git a/core/modules/migrate/tests/src/Kernel/process/RouteTest.php b/core/modules/migrate/tests/src/Kernel/process/RouteTest.php
index 850abf21ac85dd95d9b02f485baa9b498c119459..53ebf0362551f007e7b2743007ab85943963b298 100644
--- a/core/modules/migrate/tests/src/Kernel/process/RouteTest.php
+++ b/core/modules/migrate/tests/src/Kernel/process/RouteTest.php
@@ -49,7 +49,7 @@ public function testRoute($value, $expected) {
    *   An array of arrays, where the first element is the input to the Route
    *   process plugin, and the second is the expected results.
    */
-  public function providerTestRoute() {
+  public static function providerTestRoute() {
     // Internal link tests.
     // Valid link path and options.
     $values[0] = [
@@ -214,7 +214,7 @@ public function testRouteWithParamQuery($value, $expected) {
    *   An array of arrays, where the first element is the input to the Route
    *   process plugin, and the second is the expected results.
    */
-  public function providerTestRouteWithParamQuery() {
+  public static function providerTestRouteWithParamQuery() {
     $values = [];
     $expected = [];
     // Valid link path with query options and parameters.
diff --git a/core/modules/migrate/tests/src/Unit/MigrateExecutableTest.php b/core/modules/migrate/tests/src/Unit/MigrateExecutableTest.php
index b984b7ae52edb664e1961ee9f254492823d40f53..773919205fa1ccbf098d6efce3aa59086fc76198 100644
--- a/core/modules/migrate/tests/src/Unit/MigrateExecutableTest.php
+++ b/core/modules/migrate/tests/src/Unit/MigrateExecutableTest.php
@@ -510,7 +510,7 @@ public function testRollback(array $id_map_records, bool $rollback_called = TRUE
    * @return array
    *   The test cases.
    */
-  public function providerTestRollback() {
+  public static function providerTestRollback() {
     return [
       'Rollback delete' => [
         'ID map records' => [
diff --git a/core/modules/migrate/tests/src/Unit/MigrateLookupTest.php b/core/modules/migrate/tests/src/Unit/MigrateLookupTest.php
index 9805916fd54ef25448426d29851190374866c10d..7aa4eeeca54e83cb941fe6799a033d4da57d93ac 100644
--- a/core/modules/migrate/tests/src/Unit/MigrateLookupTest.php
+++ b/core/modules/migrate/tests/src/Unit/MigrateLookupTest.php
@@ -66,7 +66,7 @@ public function testExceptionOnMigrationNotFound($migrations, $message) {
   /**
    * Provides data for testExceptionOnMigrationNotFound.
    */
-  public function providerExceptionOnMigrationNotFound() {
+  public static function providerExceptionOnMigrationNotFound() {
     return [
       'string' => [
         'bad_plugin',
@@ -96,7 +96,7 @@ public function testExceptionOnMultipleMigrationsNotFound($migrations, $message)
   /**
    * Provides data for testExceptionOnMultipleMigrationsNotFound.
    */
-  public function providerExceptionOnMultipleMigrationsNotFound() {
+  public static function providerExceptionOnMultipleMigrationsNotFound() {
     return [
       'array two items' => [
         ['foo', 'bar'],
diff --git a/core/modules/migrate/tests/src/Unit/MigrateSqlIdMapTest.php b/core/modules/migrate/tests/src/Unit/MigrateSqlIdMapTest.php
index 0ba79e1aab5d9f90bb18b901e7bc7024ed9923c2..49070c2edba8f7e0f9c19108938baeed555ac813 100644
--- a/core/modules/migrate/tests/src/Unit/MigrateSqlIdMapTest.php
+++ b/core/modules/migrate/tests/src/Unit/MigrateSqlIdMapTest.php
@@ -387,7 +387,7 @@ public function testGetRowBySource() {
    * @return array
    *   An array of data values.
    */
-  public function lookupDestinationIdMappingDataProvider() {
+  public static function lookupDestinationIdMappingDataProvider() {
     return [
       [1, 1],
       [2, 2],
@@ -605,7 +605,7 @@ public function testGetRowByDestination() {
    * @return array
    *   An array of data values.
    */
-  public function lookupSourceIdMappingDataProvider() {
+  public static function lookupSourceIdMappingDataProvider() {
     return [
       [1, 1],
       [2, 2],
@@ -762,7 +762,7 @@ public function testProcessedCount() {
    * @return array
    *   An array of data values.
    */
-  public function updateCountDataProvider() {
+  public static function updateCountDataProvider() {
     return [
       [0],
       [1],
@@ -810,7 +810,7 @@ public function testUpdateCount($num_update_rows) {
    * @return array
    *   An array of data values.
    */
-  public function errorCountDataProvider() {
+  public static function errorCountDataProvider() {
     return [
       [0],
       [1],
@@ -1096,7 +1096,7 @@ public function testGetHighestId(array $destination_ids, array $rows, $expected)
    * @return array
    *   An array of data values.
    */
-  public function getHighestIdDataProvider() {
+  public static function getHighestIdDataProvider() {
     return [
       'Destination ID type integer' => [
         'dest_ids' => [
@@ -1161,7 +1161,7 @@ public function testGetHighestIdInvalid(array $destination_ids) {
    * @return array
    *   An array of data values.
    */
-  public function getHighestIdInvalidDataProvider() {
+  public static function getHighestIdInvalidDataProvider() {
     return [
       'Destination ID type string' => [
         'ids' => [
diff --git a/core/modules/migrate/tests/src/Unit/MigrationPluginManagerTest.php b/core/modules/migrate/tests/src/Unit/MigrationPluginManagerTest.php
index 223ade26c7741b3a0f8f84d05adf1aeb0b5082a9..be4ae0ff6a6928cdaaba3158e47da15f5102c3a8 100644
--- a/core/modules/migrate/tests/src/Unit/MigrationPluginManagerTest.php
+++ b/core/modules/migrate/tests/src/Unit/MigrationPluginManagerTest.php
@@ -90,7 +90,7 @@ public function testExpandPluginIds() {
   /**
    * Provide dependency data for testing.
    */
-  public function dependencyProvider() {
+  public static function dependencyProvider() {
     return [
       // Just one migration, with no dependencies.
       [
diff --git a/core/modules/migrate/tests/src/Unit/MigrationTest.php b/core/modules/migrate/tests/src/Unit/MigrationTest.php
index adc40320100d8c03b53395a6641531aa89e391c3..bfd768b4753445105dab5b9dbf61c16dd2bcae5f 100644
--- a/core/modules/migrate/tests/src/Unit/MigrationTest.php
+++ b/core/modules/migrate/tests/src/Unit/MigrationTest.php
@@ -212,7 +212,7 @@ public function testMigrationDependenciesWithInvalidConfig(array $dependencies)
   /**
    * Provides data for valid migration configuration test.
    */
-  public function getValidMigrationDependenciesProvider() {
+  public static function getValidMigrationDependenciesProvider() {
     return [
       [
         'source' => NULL,
@@ -240,7 +240,7 @@ public function getValidMigrationDependenciesProvider() {
   /**
    * Provides invalid migration dependencies.
    */
-  public function getInvalidMigrationDependenciesProvider() {
+  public static function getInvalidMigrationDependenciesProvider() {
     return [
       'invalid key' => [
         'dependencies' => ['bogus' => []],
diff --git a/core/modules/migrate/tests/src/Unit/RowTest.php b/core/modules/migrate/tests/src/Unit/RowTest.php
index fe89748acdb6f736d2c905e168c64fbd302c90f5..83b8d7689a79a9bd55babb0900ce0f4109aa1511 100644
--- a/core/modules/migrate/tests/src/Unit/RowTest.php
+++ b/core/modules/migrate/tests/src/Unit/RowTest.php
@@ -333,7 +333,7 @@ public function testGet($key, $expected_value) {
    * @return array
    *   The keys and expected values.
    */
-  public function getDataProvider() {
+  public static function getDataProvider() {
     return [
       ['source_key_1', 'source_value_1'],
       ['source_key_2', 'source_value_2'],
@@ -377,7 +377,7 @@ public function testGetMultiple(array $keys, array $expected_values) {
    * @return array
    *   The keys and expected values.
    */
-  public function getMultipleDataProvider() {
+  public static function getMultipleDataProvider() {
     return [
       'Single Key' => [
         'keys' => ['source_key_1'],
diff --git a/core/modules/migrate/tests/src/Unit/SqlBaseTest.php b/core/modules/migrate/tests/src/Unit/SqlBaseTest.php
index 0f62b7f34f7aea8508415c0b76e9710b846283e6..064e64343da8ec9389bbec617b6f3e02df2802c3 100644
--- a/core/modules/migrate/tests/src/Unit/SqlBaseTest.php
+++ b/core/modules/migrate/tests/src/Unit/SqlBaseTest.php
@@ -85,7 +85,7 @@ public function testMapJoinable($expected_result, $id_map_is_sql, $with_id_map,
    * @return array
    *   An array of data per test run.
    */
-  public function sqlBaseTestProvider() {
+  public static function sqlBaseTestProvider() {
     return [
       // Source ids are empty so mapJoinable() is false.
       [
diff --git a/core/modules/migrate/tests/src/Unit/process/CallbackTest.php b/core/modules/migrate/tests/src/Unit/process/CallbackTest.php
index 5170c85959b2639d27987e648c24dde95a3087a1..485c4eb669bb2607112243b939afae9bf1552479 100644
--- a/core/modules/migrate/tests/src/Unit/process/CallbackTest.php
+++ b/core/modules/migrate/tests/src/Unit/process/CallbackTest.php
@@ -29,7 +29,7 @@ public function testCallback($callable) {
   /**
    * Data provider for ::testCallback().
    */
-  public function providerCallback() {
+  public static function providerCallback() {
     return [
       'function' => ['strtolower'],
       'class method' => [[self::class, 'strtolower']],
@@ -51,7 +51,7 @@ public function testCallbackArray($callable, $args, $result) {
   /**
    * Data provider for ::testCallbackArray().
    */
-  public function providerCallbackArray() {
+  public static function providerCallbackArray() {
     return [
       'date format' => [
         'date',
@@ -100,7 +100,7 @@ public function testCallbackExceptions($message, array $configuration, $class =
   /**
    * Data provider for ::testCallbackExceptions().
    */
-  public function providerCallbackExceptions() {
+  public static function providerCallbackExceptions() {
     return [
       'not set' => [
         'message' => 'The "callable" must be set.',
diff --git a/core/modules/migrate/tests/src/Unit/process/DefaultValueTest.php b/core/modules/migrate/tests/src/Unit/process/DefaultValueTest.php
index 3eed164eda7479e4d1602e0228fdaae5446534e6..d2872b7877b67b7cc95fcddb4c7c8e3a64e3a555 100644
--- a/core/modules/migrate/tests/src/Unit/process/DefaultValueTest.php
+++ b/core/modules/migrate/tests/src/Unit/process/DefaultValueTest.php
@@ -32,7 +32,7 @@ public function testDefaultValue($configuration, $expected_value, $value) {
    *
    * @return array
    */
-  public function defaultValueDataProvider() {
+  public static function defaultValueDataProvider() {
     return [
       'strict_true_value_populated_array' => [
         'configuration' => [
diff --git a/core/modules/migrate/tests/src/Unit/process/ExplodeTest.php b/core/modules/migrate/tests/src/Unit/process/ExplodeTest.php
index 4eede4309f5d39b325d374ffb1fb59a3050132fd..0a790473507636d3e9f8132db25c9b2e4fd99bd6 100644
--- a/core/modules/migrate/tests/src/Unit/process/ExplodeTest.php
+++ b/core/modules/migrate/tests/src/Unit/process/ExplodeTest.php
@@ -78,7 +78,7 @@ public function testExplodeWithNonStrictAndEmptySource($value, $expected) {
   /**
    * Data provider for ::testExplodeWithNonStrictAndEmptySource().
    */
-  public function providerExplodeWithNonStrictAndEmptySource() {
+  public static function providerExplodeWithNonStrictAndEmptySource() {
     return [
       'normal_string' => ['a|b|c', ['a', 'b', 'c']],
       'integer_cast_to_string' => [123, ['123']],
diff --git a/core/modules/migrate/tests/src/Unit/process/ExtractTest.php b/core/modules/migrate/tests/src/Unit/process/ExtractTest.php
index d83ed31866ab73403fa21fe137ab6018fd11d9b5..4c44f848c64b6121c9721fe4a6af086ec99aae27 100644
--- a/core/modules/migrate/tests/src/Unit/process/ExtractTest.php
+++ b/core/modules/migrate/tests/src/Unit/process/ExtractTest.php
@@ -84,7 +84,7 @@ public function testExtractDefault(array $value, array $configuration, $expected
   /**
    * Data provider for testExtractDefault.
    */
-  public function providerExtractDefault() {
+  public static function providerExtractDefault() {
     return [
       [
         ['foo' => 'bar'],
@@ -140,7 +140,7 @@ public function providerExtractDefault() {
   /**
    * Provides data for the testExtractInvalid.
    */
-  public function providerTestExtractInvalid() {
+  public static function providerTestExtractInvalid() {
     $xml_str = <<<XML
     <xml version='1.0'?>
       <authors>
diff --git a/core/modules/migrate/tests/src/Unit/process/FileCopyTest.php b/core/modules/migrate/tests/src/Unit/process/FileCopyTest.php
index 62e3752247c36f7fda56b7558b7fc839eb2c40e9..eeb315b2dbd92db180c1475e7b5f59d4d45313c7 100644
--- a/core/modules/migrate/tests/src/Unit/process/FileCopyTest.php
+++ b/core/modules/migrate/tests/src/Unit/process/FileCopyTest.php
@@ -35,7 +35,7 @@ public function testFileProcessBaseConstructor($configuration, $expected) {
   /**
    * Data provider for testFileProcessBaseConstructor.
    */
-  public function providerFileProcessBaseConstructor() {
+  public static function providerFileProcessBaseConstructor() {
     return [
       [['file_exists' => 'replace'], FileSystemInterface::EXISTS_REPLACE],
       [['file_exists' => 'rename'], FileSystemInterface::EXISTS_RENAME],
diff --git a/core/modules/migrate/tests/src/Unit/process/FlattenTest.php b/core/modules/migrate/tests/src/Unit/process/FlattenTest.php
index ff70726820509865ae8209024818d4ab7cfc4905..571b568d61b29cebfe937d6667577db97f0fc794 100644
--- a/core/modules/migrate/tests/src/Unit/process/FlattenTest.php
+++ b/core/modules/migrate/tests/src/Unit/process/FlattenTest.php
@@ -35,7 +35,7 @@ public function testFlatten($value, $expected) {
   /**
    * Provides data for the testFlatten.
    */
-  public function providerTestFlatten() {
+  public static function providerTestFlatten() {
     $object = (object) [
       'a' => 'test',
       'b' => '1.2',
@@ -68,7 +68,7 @@ public function testFlattenInvalid($value) {
   /**
    * Provides data for the testFlattenInvalid.
    */
-  public function providerTestFlattenInvalid() {
+  public static function providerTestFlattenInvalid() {
     $xml_str = <<<XML
 <xml version='1.0'?>
 <authors>
diff --git a/core/modules/migrate/tests/src/Unit/process/FormatDateTest.php b/core/modules/migrate/tests/src/Unit/process/FormatDateTest.php
index 7d2c1313ed80bf82c16db0dd47d9adaa1efc3e5b..67c917ce94324cf22f529a4604681b4678824545 100644
--- a/core/modules/migrate/tests/src/Unit/process/FormatDateTest.php
+++ b/core/modules/migrate/tests/src/Unit/process/FormatDateTest.php
@@ -103,7 +103,7 @@ public function testTransform($configuration, $value, $expected) {
    * @return array
    *   Array of date formats and actual/expected values.
    */
-  public function datesDataProvider() {
+  public static function datesDataProvider() {
     return [
       'datetime_date' => [
         'configuration' => [
diff --git a/core/modules/migrate/tests/src/Unit/process/GetTest.php b/core/modules/migrate/tests/src/Unit/process/GetTest.php
index 20e7d1e9752b9fe74310681c67e5d7b392eea995..a1e4b9769476f175bbd350925876813a928a6fdc 100644
--- a/core/modules/migrate/tests/src/Unit/process/GetTest.php
+++ b/core/modules/migrate/tests/src/Unit/process/GetTest.php
@@ -97,7 +97,7 @@ public function testIntegerValues($source, $expected_value) {
    *
    * @return array
    */
-  public function integerValuesDataProvider() {
+  public static function integerValuesDataProvider() {
     return [
       [
         'source' => [0 => 0, 1 => 'test'],
diff --git a/core/modules/migrate/tests/src/Unit/process/LogTest.php b/core/modules/migrate/tests/src/Unit/process/LogTest.php
index 13244ad1d31a8a5c645dd210c5fd13af3162b5c0..fa3abf6b3eb05b0ed2069ebc932d00dd7d27550a 100644
--- a/core/modules/migrate/tests/src/Unit/process/LogTest.php
+++ b/core/modules/migrate/tests/src/Unit/process/LogTest.php
@@ -37,7 +37,7 @@ public function testLog($value, $expected_message) {
    * @return string[][]
    *   An array of test data arrays.
    */
-  public function providerTestLog() {
+  public static function providerTestLog() {
     $object = (object) [
       'a' => 'test',
       'b' => 'test2',
diff --git a/core/modules/migrate/tests/src/Unit/process/MachineNameTest.php b/core/modules/migrate/tests/src/Unit/process/MachineNameTest.php
index eae1f1647ec5ee4f842ecbc3a8446cb297c4ace7..7a0f45f90dbf7d445d24c5480916a506046b4c13 100644
--- a/core/modules/migrate/tests/src/Unit/process/MachineNameTest.php
+++ b/core/modules/migrate/tests/src/Unit/process/MachineNameTest.php
@@ -70,7 +70,7 @@ public function testMachineNames(string $human_name, array $configuration, strin
    * @return array
    *   An array of test cases.
    */
-  public function providerTestMachineNames(): array {
+  public static function providerTestMachineNames(): array {
     return [
       // Tests the following transformations:
       // - non-alphanumeric character (including spaces) -> underscore,
diff --git a/core/modules/migrate/tests/src/Unit/process/MakeUniqueEntityFieldTest.php b/core/modules/migrate/tests/src/Unit/process/MakeUniqueEntityFieldTest.php
index 175b9f3efa01dc7b7a8ed2061550c5e013bcc074..c73abd63812b973209c9c9f973419b3efc221c8a 100644
--- a/core/modules/migrate/tests/src/Unit/process/MakeUniqueEntityFieldTest.php
+++ b/core/modules/migrate/tests/src/Unit/process/MakeUniqueEntityFieldTest.php
@@ -118,7 +118,7 @@ public function testMakeUniqueEntityFieldEntityInvalidLength() {
   /**
    * Data provider for testMakeUniqueEntityField().
    */
-  public function providerTestMakeUniqueEntityField() {
+  public static function providerTestMakeUniqueEntityField() {
     return [
       // Tests no duplication.
       [0],
diff --git a/core/modules/migrate/tests/src/Unit/process/MenuLinkParentTest.php b/core/modules/migrate/tests/src/Unit/process/MenuLinkParentTest.php
index 885aaba15bf482c21defed628b340269edc5f8c4..f18ec2de7523be7838d539f2d4afeeca39025345 100644
--- a/core/modules/migrate/tests/src/Unit/process/MenuLinkParentTest.php
+++ b/core/modules/migrate/tests/src/Unit/process/MenuLinkParentTest.php
@@ -101,7 +101,7 @@ public function testTransformException(array $source_value) {
   /**
    * Provides data for testTransformException().
    */
-  public function providerTransformException() {
+  public static function providerTransformException() {
     // The parent ID does not for the following tests.
     return [
       'parent link external and could not be loaded' => [
@@ -159,7 +159,7 @@ public function testMenuLinkParent(array $source_value, $lookup_result, $plugin_
   /**
    * Provides data for testMenuLinkParent().
    */
-  public function providerMenuLinkParent() {
+  public static function providerMenuLinkParent() {
     return [
       'menu link is route item' => [
         'source_value' => [0, NULL, NULL],
diff --git a/core/modules/migrate/tests/src/Unit/process/MigrationLookupTest.php b/core/modules/migrate/tests/src/Unit/process/MigrationLookupTest.php
index 3d2558bd916571117819cbfd417c8260908aeb8f..5699e30723d69783b0f00ab214b5f0b58a9aa83e 100644
--- a/core/modules/migrate/tests/src/Unit/process/MigrationLookupTest.php
+++ b/core/modules/migrate/tests/src/Unit/process/MigrationLookupTest.php
@@ -100,7 +100,7 @@ public function testSkipInvalid($value) {
    * @return array
    *   Empty values.
    */
-  public function skipInvalidDataProvider() {
+  public static function skipInvalidDataProvider() {
     return [
       'Empty String' => [''],
       'Boolean False' => [FALSE],
@@ -144,7 +144,7 @@ public function testNoSkipValid($value) {
    * @return array
    *   Empty values.
    */
-  public function noSkipValidDataProvider() {
+  public static function noSkipValidDataProvider() {
     return [
       'Integer Zero' => [0],
       'String Zero' => ['0'],
@@ -186,7 +186,7 @@ public function testSuccessfulLookup(array $source_id_values, array $destination
    * @return array
    *   The data.
    */
-  public function successfulLookupDataProvider() {
+  public static function successfulLookupDataProvider() {
     return [
       // Test data for scalar to scalar.
       [
diff --git a/core/modules/migrate/tests/src/Unit/process/NullCoalesceTest.php b/core/modules/migrate/tests/src/Unit/process/NullCoalesceTest.php
index d822e142a1bb50ccfd5b37a138ab1bb8fa0ac207..765f19f7e42596047661387d828788c8d3269e3c 100644
--- a/core/modules/migrate/tests/src/Unit/process/NullCoalesceTest.php
+++ b/core/modules/migrate/tests/src/Unit/process/NullCoalesceTest.php
@@ -49,7 +49,7 @@ public function testTransform(array $source, $expected_result) {
   /**
    * Provides Data for ::testTransform.
    */
-  public function transformDataProvider() {
+  public static function transformDataProvider() {
     return [
       'all null' => [
         'source' => [NULL, NULL, NULL],
@@ -103,7 +103,7 @@ public function testTransformWithDefault(array $source, $default_value, $expecte
   /**
    * Provides Data for ::testTransformWithDefault.
    */
-  public function transformWithDefaultProvider() {
+  public static function transformWithDefaultProvider() {
     return [
       'default not used' => [
         'source' => [NULL, NULL, 'Test', 'Test 2'],
diff --git a/core/modules/migrate/tests/src/Unit/process/SubProcessTest.php b/core/modules/migrate/tests/src/Unit/process/SubProcessTest.php
index 1adbeda5ca9732097ec68be3ff03b3d324cbcf81..64df3ddab3cee05fec886cf40cd281a8b882a1c8 100644
--- a/core/modules/migrate/tests/src/Unit/process/SubProcessTest.php
+++ b/core/modules/migrate/tests/src/Unit/process/SubProcessTest.php
@@ -86,7 +86,7 @@ public function testSubProcess($process_configuration, $source_values = []) {
   /**
    * Data provider for testSubProcess().
    */
-  public function providerTestSubProcess() {
+  public static function providerTestSubProcess() {
     return [
       'no source context' => [
         'process configuration' => [
@@ -173,7 +173,7 @@ public function testNotFoundSubProcess($process_configuration, $source_values =
   /**
    * Data provider for testNotFoundSubProcess().
    */
-  public function providerTestNotFoundSubProcess() {
+  public static function providerTestNotFoundSubProcess() {
     return [
       'no key' => [
         'process configuration' => [
@@ -210,7 +210,7 @@ public function testSourceNotArray($source_values, $type) {
   /**
    * Data provider for testSourceNotArray().
    */
-  public function providerTestSourceNotArray() {
+  public static function providerTestSourceNotArray() {
     return [
       'strings cannot be subprocess items' => [
         ['strings', 'cannot', 'be', 'children'],
diff --git a/core/modules/migrate/tests/src/Unit/process/SubstrTest.php b/core/modules/migrate/tests/src/Unit/process/SubstrTest.php
index fa0db16e8a29d848588225aa22bb706b16a326c0..6ce82d60e3a39030345848939bf98bfda856f8b0 100644
--- a/core/modules/migrate/tests/src/Unit/process/SubstrTest.php
+++ b/core/modules/migrate/tests/src/Unit/process/SubstrTest.php
@@ -41,7 +41,7 @@ public function testSubstr($start = NULL, $length = NULL, $expected = NULL) {
   /**
    * Data provider for testSubstr().
    */
-  public function providerTestSubstr() {
+  public static function providerTestSubstr() {
     return [
       // Tests with valid start and length values.
       [0, 7, 'Captain'],
diff --git a/core/modules/migrate/tests/src/Unit/process/UrlEncodeTest.php b/core/modules/migrate/tests/src/Unit/process/UrlEncodeTest.php
index 7cb29c2863fa90785d54e29a25cc700c751a51bb..41d00eef0e2743bea76aa619c1504de94731d351 100644
--- a/core/modules/migrate/tests/src/Unit/process/UrlEncodeTest.php
+++ b/core/modules/migrate/tests/src/Unit/process/UrlEncodeTest.php
@@ -28,7 +28,7 @@ class UrlEncodeTest extends MigrateTestCase {
    * @return array
    *   An array of URLs to test.
    */
-  public function urlDataProvider() {
+  public static function urlDataProvider() {
     return [
       'A URL with no characters requiring encoding' => ['http://example.com/normal_url.html', 'http://example.com/normal_url.html'],
       'The definitive use case - encoding spaces in URLs' => ['http://example.com/url with spaces.html', 'http://example.com/url%20with%20spaces.html'],
diff --git a/core/modules/migrate_drupal/tests/src/Kernel/MigrateFieldPluginManagerTest.php b/core/modules/migrate_drupal/tests/src/Kernel/MigrateFieldPluginManagerTest.php
index ebd4df5be0e67b15dfb859502c20720bdd559913..22028e41536ad7b98fe1318837fb28cc4f2960c5 100644
--- a/core/modules/migrate_drupal/tests/src/Kernel/MigrateFieldPluginManagerTest.php
+++ b/core/modules/migrate_drupal/tests/src/Kernel/MigrateFieldPluginManagerTest.php
@@ -83,7 +83,7 @@ public function testNonExistentPluginExceptions($core, $field_type) {
    * @return array
    *   The data.
    */
-  public function nonExistentPluginExceptionsData() {
+  public static function nonExistentPluginExceptionsData() {
     return [
       'D7 Filefield' => [
         'core' => 7,
diff --git a/core/modules/migrate_drupal/tests/src/Kernel/NodeMigrationTypePluginAlterTest.php b/core/modules/migrate_drupal/tests/src/Kernel/NodeMigrationTypePluginAlterTest.php
index 82707df984017531757ece5b398cc4becee47d7c..6873d04d3a52aec1f23ee0ef11cf8418da4d893d 100644
--- a/core/modules/migrate_drupal/tests/src/Kernel/NodeMigrationTypePluginAlterTest.php
+++ b/core/modules/migrate_drupal/tests/src/Kernel/NodeMigrationTypePluginAlterTest.php
@@ -51,7 +51,7 @@ public function testMigrationPluginAlter($type, array $migration_definitions, ar
   /**
    * Data provider for testMigrationPluginAlter().
    */
-  public function providerMigrationPluginAlter() {
+  public static function providerMigrationPluginAlter() {
     $tests = [];
 
     $migrations = [
diff --git a/core/modules/migrate_drupal/tests/src/Kernel/Plugin/migrate/source/ContentEntityConstructorTest.php b/core/modules/migrate_drupal/tests/src/Kernel/Plugin/migrate/source/ContentEntityConstructorTest.php
index 12d2e362b3c2ddfde4b31ae76fbb0776fc175c9f..b3a7cfba141880f7512d340008d6bb70c114b992 100644
--- a/core/modules/migrate_drupal/tests/src/Kernel/Plugin/migrate/source/ContentEntityConstructorTest.php
+++ b/core/modules/migrate_drupal/tests/src/Kernel/Plugin/migrate/source/ContentEntityConstructorTest.php
@@ -40,7 +40,7 @@ public function testConstructor($configuration, $plugin_definition, $exception_c
   /**
    * Provides data for constructor tests.
    */
-  public function providerTestConstructor() {
+  public static function providerTestConstructor() {
     return [
       'entity type missing' => [
         [],
diff --git a/core/modules/migrate_drupal/tests/src/Kernel/Plugin/migrate/source/ContentEntityTest.php b/core/modules/migrate_drupal/tests/src/Kernel/Plugin/migrate/source/ContentEntityTest.php
index 36fe385b02f37f7f147ffb6c5a078f80b14e6439..2d07b5946b67f6f2b4a9fbfbd4425990e25ac91e 100644
--- a/core/modules/migrate_drupal/tests/src/Kernel/Plugin/migrate/source/ContentEntityTest.php
+++ b/core/modules/migrate_drupal/tests/src/Kernel/Plugin/migrate/source/ContentEntityTest.php
@@ -431,7 +431,7 @@ public function testTermSource(array $configuration) {
    * @see \Drupal\Tests\migrate_drupal\Kernel\Plugin\migrate\source\ContentEntityTest::testMediaSource
    * @see \Drupal\Tests\migrate_drupal\Kernel\Plugin\migrate\source\ContentEntityTest::testTermSource
    */
-  public function migrationConfigurationProvider() {
+  public static function migrationConfigurationProvider() {
     $data = [];
     foreach ([FALSE, TRUE] as $include_translations) {
       foreach ([FALSE, TRUE] as $add_revision_id) {
diff --git a/core/modules/migrate_drupal/tests/src/Kernel/Plugin/migrate/source/VariableMultiRowTest.php b/core/modules/migrate_drupal/tests/src/Kernel/Plugin/migrate/source/VariableMultiRowTest.php
index 4dd904745912d120c7198d93308b65190b7f0e97..39f2a0d89b537069f51a717543115ba0e954e4ba 100644
--- a/core/modules/migrate_drupal/tests/src/Kernel/Plugin/migrate/source/VariableMultiRowTest.php
+++ b/core/modules/migrate_drupal/tests/src/Kernel/Plugin/migrate/source/VariableMultiRowTest.php
@@ -23,7 +23,7 @@ class VariableMultiRowTest extends MigrateSqlSourceTestBase {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     $tests = [];
 
     // The source data.
diff --git a/core/modules/migrate_drupal/tests/src/Kernel/Plugin/migrate/source/VariableTest.php b/core/modules/migrate_drupal/tests/src/Kernel/Plugin/migrate/source/VariableTest.php
index ab31ea15a776bed66bd2a1c5af91a9e32b82b6fc..2bcc8cc2fa9aeff0186ace30f4995159dd01166f 100644
--- a/core/modules/migrate_drupal/tests/src/Kernel/Plugin/migrate/source/VariableTest.php
+++ b/core/modules/migrate_drupal/tests/src/Kernel/Plugin/migrate/source/VariableTest.php
@@ -21,7 +21,7 @@ class VariableTest extends MigrateSqlSourceTestBase {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     $tests = [];
 
     // The source data.
diff --git a/core/modules/migrate_drupal/tests/src/Kernel/Plugin/migrate/source/d6/VariableTranslationTest.php b/core/modules/migrate_drupal/tests/src/Kernel/Plugin/migrate/source/d6/VariableTranslationTest.php
index 803b3af8ea179a804c4639f028a23d1a15ecbfe6..e3a74fbb6d8d2f56914de425dbd51dd9ab5d84a3 100644
--- a/core/modules/migrate_drupal/tests/src/Kernel/Plugin/migrate/source/d6/VariableTranslationTest.php
+++ b/core/modules/migrate_drupal/tests/src/Kernel/Plugin/migrate/source/d6/VariableTranslationTest.php
@@ -21,7 +21,7 @@ class VariableTranslationTest extends MigrateSqlSourceTestBase {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     $tests = [];
 
     // The source data.
diff --git a/core/modules/migrate_drupal/tests/src/Kernel/Plugin/migrate/source/d7/VariableTranslationTest.php b/core/modules/migrate_drupal/tests/src/Kernel/Plugin/migrate/source/d7/VariableTranslationTest.php
index 3a9eb244498c3a925881a40f5fd40cf18efdc5bf..4021140cd2cf0726b49a21acbf083994a2abe382 100644
--- a/core/modules/migrate_drupal/tests/src/Kernel/Plugin/migrate/source/d7/VariableTranslationTest.php
+++ b/core/modules/migrate_drupal/tests/src/Kernel/Plugin/migrate/source/d7/VariableTranslationTest.php
@@ -21,7 +21,7 @@ class VariableTranslationTest extends MigrateSqlSourceTestBase {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     $tests = [];
 
     // The source data.
diff --git a/core/modules/migrate_drupal/tests/src/Kernel/Plugin/migrate/source/d8/ConfigTest.php b/core/modules/migrate_drupal/tests/src/Kernel/Plugin/migrate/source/d8/ConfigTest.php
index 0cb0dcf5d8447d6ea79d63ae831b1853bc337e48..d17d3d759d2955ccbac8e9d839469d497badbe3b 100644
--- a/core/modules/migrate_drupal/tests/src/Kernel/Plugin/migrate/source/d8/ConfigTest.php
+++ b/core/modules/migrate_drupal/tests/src/Kernel/Plugin/migrate/source/d8/ConfigTest.php
@@ -20,7 +20,7 @@ class ConfigTest extends MigrateSqlSourceTestBase {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     $data = [];
 
     // The source database tables.
diff --git a/core/modules/migrate_drupal/tests/src/Kernel/d6/FieldDiscoveryTest.php b/core/modules/migrate_drupal/tests/src/Kernel/d6/FieldDiscoveryTest.php
index 58f19748a96cc0b2d731e6ac8201ff4fac91d47e..04ab0b51324ba828e01546ffa918ea6077dbceab 100644
--- a/core/modules/migrate_drupal/tests/src/Kernel/d6/FieldDiscoveryTest.php
+++ b/core/modules/migrate_drupal/tests/src/Kernel/d6/FieldDiscoveryTest.php
@@ -136,7 +136,7 @@ public function testAddAllFieldProcessesAlters($field_plugin_method, $expected_p
    * @return array
    *   The data.
    */
-  public function addAllFieldProcessesAltersData() {
+  public static function addAllFieldProcessesAltersData() {
     return [
       'Field Formatter' => [
         'field_plugin_method' => 'alterFieldFormatterMigration',
diff --git a/core/modules/migrate_drupal/tests/src/Kernel/d7/FieldDiscoveryTest.php b/core/modules/migrate_drupal/tests/src/Kernel/d7/FieldDiscoveryTest.php
index 12a0426a68fe68115bafed8c206e35bdc7e54483..e0e95ade4e7031709270f43998cdb34eec2dbea4 100644
--- a/core/modules/migrate_drupal/tests/src/Kernel/d7/FieldDiscoveryTest.php
+++ b/core/modules/migrate_drupal/tests/src/Kernel/d7/FieldDiscoveryTest.php
@@ -180,7 +180,7 @@ public function testAddAllFieldProcessesAlters($field_plugin_method, $expected_p
    * @return array
    *   The data.
    */
-  public function addAllFieldProcessesAltersData() {
+  public static function addAllFieldProcessesAltersData() {
     return [
       'Field Instance' => [
         'field_plugin_method' => 'alterFieldInstanceMigration',
diff --git a/core/modules/migrate_drupal/tests/src/Kernel/d7/FollowUpMigrationsTest.php b/core/modules/migrate_drupal/tests/src/Kernel/d7/FollowUpMigrationsTest.php
index 1f0c1fd673364f071e32bdfe9c66b660de906f23..5c0a518f980722bdc691873e567b56bce03f5712 100644
--- a/core/modules/migrate_drupal/tests/src/Kernel/d7/FollowUpMigrationsTest.php
+++ b/core/modules/migrate_drupal/tests/src/Kernel/d7/FollowUpMigrationsTest.php
@@ -119,7 +119,7 @@ public function testEntityReferenceTranslations($node_migrations) {
   /**
    * Data provider for testEntityReferenceTranslations().
    */
-  public function providerTestEntityReferenceTranslations() {
+  public static function providerTestEntityReferenceTranslations() {
     return [
       [
         ['d7_node', 'd7_node_translation'],
diff --git a/core/modules/migrate_drupal/tests/src/Unit/FieldDiscoveryTest.php b/core/modules/migrate_drupal/tests/src/Unit/FieldDiscoveryTest.php
index 1d32387523ee42172f2c32be31769952f02f6b5c..9918dc4cbc4bafe75e77ce233477f485611c63d7 100644
--- a/core/modules/migrate_drupal/tests/src/Unit/FieldDiscoveryTest.php
+++ b/core/modules/migrate_drupal/tests/src/Unit/FieldDiscoveryTest.php
@@ -79,7 +79,7 @@ public function testGetEntityFields($entity_type_id, array $expected_fields) {
    * @return array
    *   The data.
    */
-  public function getEntityFieldsData() {
+  public static function getEntityFieldsData() {
     return [
       'Node' => [
         'entity_type_id' => 'node',
@@ -156,7 +156,7 @@ public function testGetBundleFields($entity_type_id, $bundle, array $expected_fi
    * @return array
    *   The data.
    */
-  public function getBundleFieldsData() {
+  public static function getBundleFieldsData() {
     return [
       'Node - Content Type 1' => [
         'entity_type_id' => 'node',
@@ -242,7 +242,7 @@ public function testGetCoreVersion(array $tags, $expected_result) {
    * @return array
    *   The test data.
    */
-  public function getCoreVersionData() {
+  public static function getCoreVersionData() {
     return [
       'Drupal 7' => [
         'tags' => ['Drupal 7'],
@@ -331,7 +331,7 @@ public function testGetFieldInstanceStubMigrationDefinition($core, $expected_def
    * @return array
    *   The data.
    */
-  public function getFieldInstanceStubMigrationDefinition() {
+  public static function getFieldInstanceStubMigrationDefinition() {
     return [
       'Drupal 6' => [
         'core' => FieldDiscoveryInterface::DRUPAL_6,
diff --git a/core/modules/migrate_drupal/tests/src/Unit/MigrateFieldPluginManagerTest.php b/core/modules/migrate_drupal/tests/src/Unit/MigrateFieldPluginManagerTest.php
index 75c4853e354649be7d7df935550c9ddf3826a41f..a5b1dd0ed887091b7b57db0016c2fe82e54ba003 100644
--- a/core/modules/migrate_drupal/tests/src/Unit/MigrateFieldPluginManagerTest.php
+++ b/core/modules/migrate_drupal/tests/src/Unit/MigrateFieldPluginManagerTest.php
@@ -51,7 +51,7 @@ public function testWeights($field_type, $core, $expected_plugin_id) {
    * @return array
    *   The data.
    */
-  public function weightsData() {
+  public static function weightsData() {
     return [
       'Field 1, D6' => [
         'field_type' => 'field_1',
diff --git a/core/modules/migrate_drupal/tests/src/Unit/MigrationConfigurationTraitTest.php b/core/modules/migrate_drupal/tests/src/Unit/MigrationConfigurationTraitTest.php
index 042d9c85e53bdaf4a7cecdd7dc23745c74ed0909..995fd63191ebbfc9ea9e84d648f944a85cd9a634 100644
--- a/core/modules/migrate_drupal/tests/src/Unit/MigrationConfigurationTraitTest.php
+++ b/core/modules/migrate_drupal/tests/src/Unit/MigrationConfigurationTraitTest.php
@@ -57,7 +57,7 @@ public function testGetLegacyDrupalVersion($expected_version_string, $schema_ver
   /**
    * Provides data for testGetLegacyDrupalVersion.
    */
-  public function providerTestGetLegacyDrupalVersion() {
+  public static function providerTestGetLegacyDrupalVersion() {
     return [
       'D5' => [
         'expected_version_string' => '5',
diff --git a/core/modules/migrate_drupal/tests/src/Unit/MigrationStateUnitTest.php b/core/modules/migrate_drupal/tests/src/Unit/MigrationStateUnitTest.php
index 0b3808109b543c19d5169b625ea3cca8eb0fcaa1..52d5a1209beb7ad75ae92c8c1fd6f7a6d5e55fb6 100644
--- a/core/modules/migrate_drupal/tests/src/Unit/MigrationStateUnitTest.php
+++ b/core/modules/migrate_drupal/tests/src/Unit/MigrationStateUnitTest.php
@@ -91,7 +91,7 @@ public function testGetUpgradeStates($modules_to_enable, $files, $field_plugins,
   /**
    * Data provider for testGetUpgradeStates.
    */
-  public function providerGetUpgradeStates() {
+  public static function providerGetUpgradeStates() {
 
     // Tests multiple scenarios:
     // Not enabled and not declared.
diff --git a/core/modules/migrate_drupal/tests/src/Unit/source/DrupalSqlBaseTest.php b/core/modules/migrate_drupal/tests/src/Unit/source/DrupalSqlBaseTest.php
index 8ce8b03e2acc975a50f8b563a1d7b019b40fecf2..e18e8fbfe508faa4876cc308778535c16edcec0b 100644
--- a/core/modules/migrate_drupal/tests/src/Unit/source/DrupalSqlBaseTest.php
+++ b/core/modules/migrate_drupal/tests/src/Unit/source/DrupalSqlBaseTest.php
@@ -133,7 +133,7 @@ public function testMinimumVersion($success, $minimum_version, $schema_version)
   /**
    * Provides data for testMinimumVersion.
    */
-  public function providerMinimumVersion() {
+  public static function providerMinimumVersion() {
     return [
       'minimum less than schema' => [
         TRUE,
diff --git a/core/modules/migrate_drupal_ui/tests/src/Functional/CredentialFormTest.php b/core/modules/migrate_drupal_ui/tests/src/Functional/CredentialFormTest.php
index 275efc0a1a31f5b563fa3daff63d23997d54756d..2f76cef37410dcc6a065908dcd7169125dcbd4e9 100644
--- a/core/modules/migrate_drupal_ui/tests/src/Functional/CredentialFormTest.php
+++ b/core/modules/migrate_drupal_ui/tests/src/Functional/CredentialFormTest.php
@@ -77,7 +77,7 @@ public function testCredentialFrom($path_to_database) {
   /**
    * Data provider for testCredentialForm.
    */
-  public function providerCredentialForm() {
+  public static function providerCredentialForm() {
     return [
       [
         'path_to_database' => '/tests/fixtures/drupal6.php',
diff --git a/core/modules/migrate_drupal_ui/tests/src/Functional/SourceProviderTest.php b/core/modules/migrate_drupal_ui/tests/src/Functional/SourceProviderTest.php
index d70bdb156688c7b22169210f3f53e967c353f164..ae4ecc186e3a1da2d9e8df50f4b21cab3f616951 100644
--- a/core/modules/migrate_drupal_ui/tests/src/Functional/SourceProviderTest.php
+++ b/core/modules/migrate_drupal_ui/tests/src/Functional/SourceProviderTest.php
@@ -55,7 +55,7 @@ public function testSourceProvider($path_to_database) {
   /**
    * Data provider for testSourceProvider.
    */
-  public function providerSourceProvider() {
+  public static function providerSourceProvider() {
     return [
       [
         'path_to_database' => '/tests/fixtures/drupal6.php',
diff --git a/core/modules/migrate_drupal_ui/tests/src/Functional/d7/FilePathTest.php b/core/modules/migrate_drupal_ui/tests/src/Functional/d7/FilePathTest.php
index 80a3c9cbf70d5da4652de02c016f343c0b498f4d..4df342f58a648a47bfa3e0ce9a6e1754d4669c78 100644
--- a/core/modules/migrate_drupal_ui/tests/src/Functional/d7/FilePathTest.php
+++ b/core/modules/migrate_drupal_ui/tests/src/Functional/d7/FilePathTest.php
@@ -165,7 +165,7 @@ public function testFilePath(string $file_private_path, string $file_public_path
    * @return string[][]
    *   An array of test data.
    */
-  public function providerTestFilePath() {
+  public static function providerTestFilePath() {
     return [
       'All source base paths are at temporary' => [
         'sites/default/private',
diff --git a/core/modules/migrate_drupal_ui/tests/src/FunctionalJavascript/SettingsTest.php b/core/modules/migrate_drupal_ui/tests/src/FunctionalJavascript/SettingsTest.php
index 7ae0a1951c0019a677cfec87f6398fc108853c5a..796de8ce1591985e67e306543c762c8d0651e658 100644
--- a/core/modules/migrate_drupal_ui/tests/src/FunctionalJavascript/SettingsTest.php
+++ b/core/modules/migrate_drupal_ui/tests/src/FunctionalJavascript/SettingsTest.php
@@ -141,7 +141,7 @@ public function testCredentialForm($source_connection, $version, array $manual,
   /**
    * Data provider for testCredentialForm.
    */
-  public function providerTestCredentialForm() {
+  public static function providerTestCredentialForm() {
     return [
       'no values in settings.php' => [
         'source_connection' => "",
diff --git a/core/modules/mysql/tests/src/Unit/ConnectionTest.php b/core/modules/mysql/tests/src/Unit/ConnectionTest.php
index a3c0f50f064edf40b07f5276d72bb16f955bd96b..80104ab2b9777ba7879169594963697a3c9c865e 100644
--- a/core/modules/mysql/tests/src/Unit/ConnectionTest.php
+++ b/core/modules/mysql/tests/src/Unit/ConnectionTest.php
@@ -99,7 +99,7 @@ public function testVersionAndIsMariaDb(bool $expected_is_mariadb, string $serve
    *
    * @return array
    */
-  public function providerVersionAndIsMariaDb(): array {
+  public static function providerVersionAndIsMariaDb(): array {
     return [
       // MariaDB.
       [
diff --git a/core/modules/mysql/tests/src/Unit/InstallTasksTest.php b/core/modules/mysql/tests/src/Unit/InstallTasksTest.php
index 0abcef6e6b9960f01c098f58edb0ce446697277b..552c7240ae4158edc261d137663b01d7183c01fd 100644
--- a/core/modules/mysql/tests/src/Unit/InstallTasksTest.php
+++ b/core/modules/mysql/tests/src/Unit/InstallTasksTest.php
@@ -112,7 +112,7 @@ public function testNameAndMinimumVersion(bool $is_mariadb, string $expected_nam
    *
    * @return array
    */
-  public function providerNameAndMinimumVersion(): array {
+  public static function providerNameAndMinimumVersion(): array {
     return [
       [
         TRUE,
diff --git a/core/modules/node/tests/src/Kernel/Plugin/migrate/source/d6/NodeByNodeTypeTest.php b/core/modules/node/tests/src/Kernel/Plugin/migrate/source/d6/NodeByNodeTypeTest.php
index e8e466806c3c1111aa3f0f3e1dac9f623ff8fd83..163bfc5ce10fa32df95e29e7f0f644573d1a0526 100644
--- a/core/modules/node/tests/src/Kernel/Plugin/migrate/source/d6/NodeByNodeTypeTest.php
+++ b/core/modules/node/tests/src/Kernel/Plugin/migrate/source/d6/NodeByNodeTypeTest.php
@@ -23,7 +23,7 @@ class NodeByNodeTypeTest extends MigrateSqlSourceTestBase {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     $tests = [];
 
     // The source data.
diff --git a/core/modules/node/tests/src/Kernel/Plugin/migrate/source/d6/NodeRevisionByNodeTypeTest.php b/core/modules/node/tests/src/Kernel/Plugin/migrate/source/d6/NodeRevisionByNodeTypeTest.php
index 2829c6a65600bd0c3d94b8f60c1154f66cfc8e95..2acd883965800f2127a956b144050590fa4a8d73 100644
--- a/core/modules/node/tests/src/Kernel/Plugin/migrate/source/d6/NodeRevisionByNodeTypeTest.php
+++ b/core/modules/node/tests/src/Kernel/Plugin/migrate/source/d6/NodeRevisionByNodeTypeTest.php
@@ -23,7 +23,7 @@ class NodeRevisionByNodeTypeTest extends MigrateSqlSourceTestBase {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     $tests = [];
 
     // The source data.
diff --git a/core/modules/node/tests/src/Kernel/Plugin/migrate/source/d6/NodeRevisionTest.php b/core/modules/node/tests/src/Kernel/Plugin/migrate/source/d6/NodeRevisionTest.php
index 770f5142edbd7bfcbe6712a7a52a838b9c3bff24..114baf6726a1ebebb3908a5ac71288954d02ac8a 100644
--- a/core/modules/node/tests/src/Kernel/Plugin/migrate/source/d6/NodeRevisionTest.php
+++ b/core/modules/node/tests/src/Kernel/Plugin/migrate/source/d6/NodeRevisionTest.php
@@ -23,7 +23,7 @@ class NodeRevisionTest extends MigrateSqlSourceTestBase {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     $tests = [];
 
     // The source data.
diff --git a/core/modules/node/tests/src/Kernel/Plugin/migrate/source/d6/NodeTest.php b/core/modules/node/tests/src/Kernel/Plugin/migrate/source/d6/NodeTest.php
index 44b93d255f9f4354ef96e4cfabf68e0f65ba81e8..6ee22aeb4dac4ab7a657c3b00b16c3468490e9ef 100644
--- a/core/modules/node/tests/src/Kernel/Plugin/migrate/source/d6/NodeTest.php
+++ b/core/modules/node/tests/src/Kernel/Plugin/migrate/source/d6/NodeTest.php
@@ -23,7 +23,7 @@ class NodeTest extends MigrateSqlSourceTestBase {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     $tests = [];
 
     // The source data.
diff --git a/core/modules/node/tests/src/Kernel/Plugin/migrate/source/d6/NodeTranslationTest.php b/core/modules/node/tests/src/Kernel/Plugin/migrate/source/d6/NodeTranslationTest.php
index 732d540d2cf6be6503af3aa7383066ecf195acd6..9ab02f34ebc32c6256258d58145a191baf1c51be 100644
--- a/core/modules/node/tests/src/Kernel/Plugin/migrate/source/d6/NodeTranslationTest.php
+++ b/core/modules/node/tests/src/Kernel/Plugin/migrate/source/d6/NodeTranslationTest.php
@@ -21,7 +21,7 @@ class NodeTranslationTest extends NodeTest {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     // Get the source data from parent.
     $tests = parent::providerSource();
 
diff --git a/core/modules/node/tests/src/Kernel/Plugin/migrate/source/d6/NodeTypeTest.php b/core/modules/node/tests/src/Kernel/Plugin/migrate/source/d6/NodeTypeTest.php
index bd349c6113c78af4ff4b8bb82363863112f10838..1ca146017a3e7d13b9902bd535ccdb888044ff6c 100644
--- a/core/modules/node/tests/src/Kernel/Plugin/migrate/source/d6/NodeTypeTest.php
+++ b/core/modules/node/tests/src/Kernel/Plugin/migrate/source/d6/NodeTypeTest.php
@@ -21,7 +21,7 @@ class NodeTypeTest extends MigrateSqlSourceTestBase {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     $tests = [];
 
     // The source data.
diff --git a/core/modules/node/tests/src/Kernel/Plugin/migrate/source/d6/ViewModeTest.php b/core/modules/node/tests/src/Kernel/Plugin/migrate/source/d6/ViewModeTest.php
index e818cbee00009e7b3380a0751be119f16e5049ae..e36899b6241576cc9e4ed5c0f937fbdb6ce572e2 100644
--- a/core/modules/node/tests/src/Kernel/Plugin/migrate/source/d6/ViewModeTest.php
+++ b/core/modules/node/tests/src/Kernel/Plugin/migrate/source/d6/ViewModeTest.php
@@ -21,7 +21,7 @@ class ViewModeTest extends MigrateSqlSourceTestBase {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     $tests = [];
 
     // The source data.
diff --git a/core/modules/node/tests/src/Kernel/Plugin/migrate/source/d7/NodeEntityTranslationTest.php b/core/modules/node/tests/src/Kernel/Plugin/migrate/source/d7/NodeEntityTranslationTest.php
index c1658b8efe7d7f641f85e1556cfdfff425aa2e3b..bb14427419b842da9419419cf4c5d628be2bea4d 100644
--- a/core/modules/node/tests/src/Kernel/Plugin/migrate/source/d7/NodeEntityTranslationTest.php
+++ b/core/modules/node/tests/src/Kernel/Plugin/migrate/source/d7/NodeEntityTranslationTest.php
@@ -23,7 +23,7 @@ class NodeEntityTranslationTest extends MigrateSqlSourceTestBase {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     $tests = [];
 
     // The source data.
diff --git a/core/modules/node/tests/src/Kernel/Plugin/migrate/source/d7/NodeTest.php b/core/modules/node/tests/src/Kernel/Plugin/migrate/source/d7/NodeTest.php
index 760b275a6c8c674430d25ba8637799385535cdba..481ae900d10071ac7c6da48108c36858edfee38b 100644
--- a/core/modules/node/tests/src/Kernel/Plugin/migrate/source/d7/NodeTest.php
+++ b/core/modules/node/tests/src/Kernel/Plugin/migrate/source/d7/NodeTest.php
@@ -23,7 +23,7 @@ class NodeTest extends MigrateSqlSourceTestBase {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     $tests = [];
 
     // Test retrieval of article and page content types when configuration
diff --git a/core/modules/node/tests/src/Kernel/Plugin/migrate/source/d7/NodeTranslationTest.php b/core/modules/node/tests/src/Kernel/Plugin/migrate/source/d7/NodeTranslationTest.php
index 590ec76a8bca0bd7cdc53a20087f4bf7f0fb6583..4e77be438d9f80c34105424be74cba4b8528d94d 100644
--- a/core/modules/node/tests/src/Kernel/Plugin/migrate/source/d7/NodeTranslationTest.php
+++ b/core/modules/node/tests/src/Kernel/Plugin/migrate/source/d7/NodeTranslationTest.php
@@ -21,7 +21,7 @@ class NodeTranslationTest extends NodeTest {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     // Get the source data from parent.
     $tests = parent::providerSource();
 
diff --git a/core/modules/node/tests/src/Kernel/Plugin/migrate/source/d7/NodeTypeTest.php b/core/modules/node/tests/src/Kernel/Plugin/migrate/source/d7/NodeTypeTest.php
index 45f054110af552956407bed5be5deabc41c2dab1..4b8950901235a1e807f4c161c6e87acad70776ab 100644
--- a/core/modules/node/tests/src/Kernel/Plugin/migrate/source/d7/NodeTypeTest.php
+++ b/core/modules/node/tests/src/Kernel/Plugin/migrate/source/d7/NodeTypeTest.php
@@ -21,7 +21,7 @@ class NodeTypeTest extends MigrateSqlSourceTestBase {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     $tests = [];
 
     // The source data.
diff --git a/core/modules/node/tests/src/Unit/NodeOperationAccessTest.php b/core/modules/node/tests/src/Unit/NodeOperationAccessTest.php
index d09572235f3f5ac7e313d88d4abc5a8909c2c0d3..6e094dfa505a0ab0dc9609df053f755f1725faa7 100644
--- a/core/modules/node/tests/src/Unit/NodeOperationAccessTest.php
+++ b/core/modules/node/tests/src/Unit/NodeOperationAccessTest.php
@@ -129,7 +129,7 @@ public function testRevisionOperations($operation, array $hasPermissionMap, $ass
    * @return array
    *   Data for testing.
    */
-  public function providerTestRevisionOperations() {
+  public static function providerTestRevisionOperations() {
     $data = [];
 
     // Tests 'bypass node access' never works on revision operations.
diff --git a/core/modules/node/tests/src/Unit/PageCache/DenyNodePreviewTest.php b/core/modules/node/tests/src/Unit/PageCache/DenyNodePreviewTest.php
index 4e58aa7b59fe31a20ec05218f384671a5c5e98b2..9234489298eeece8dc49a1c4bc46f71d25c1c1ae 100644
--- a/core/modules/node/tests/src/Unit/PageCache/DenyNodePreviewTest.php
+++ b/core/modules/node/tests/src/Unit/PageCache/DenyNodePreviewTest.php
@@ -77,7 +77,7 @@ public function testPrivateImageStyleDownloadPolicy($expected_result, $route_nam
    * @return array
    *   Data and expected results.
    */
-  public function providerPrivateImageStyleDownloadPolicy() {
+  public static function providerPrivateImageStyleDownloadPolicy() {
     return [
       [ResponsePolicyInterface::DENY, 'entity.node.preview'],
       [NULL, 'some.other.route'],
diff --git a/core/modules/options/tests/src/FunctionalJavascript/OptionsFieldUITest.php b/core/modules/options/tests/src/FunctionalJavascript/OptionsFieldUITest.php
index 61df5dd91af00df994700b011dcb8ac4c34a4f48..0e09410257ef9bd939e36cf206e01fc80eecaf29 100644
--- a/core/modules/options/tests/src/FunctionalJavascript/OptionsFieldUITest.php
+++ b/core/modules/options/tests/src/FunctionalJavascript/OptionsFieldUITest.php
@@ -340,7 +340,7 @@ private function pressEnterOnElement(string $selector): void {
    *   - The method which should be used to add another row to the table. The
    *     possible values are 'Press button', 'Enter button' or 'Enter element'.
    */
-  public function providerTestOptionsAllowedValues() {
+  public static function providerTestOptionsAllowedValues() {
     $type_cases = [
       'List integer' => [
         'list_integer',
diff --git a/core/modules/path/tests/src/Kernel/Plugin/migrate/source/d6/UrlAliasTest.php b/core/modules/path/tests/src/Kernel/Plugin/migrate/source/d6/UrlAliasTest.php
index 4cfe6d12268f9871662866a22eb48248772d6cdb..1ce15b47417f6f32342070be1278352415e741fb 100644
--- a/core/modules/path/tests/src/Kernel/Plugin/migrate/source/d6/UrlAliasTest.php
+++ b/core/modules/path/tests/src/Kernel/Plugin/migrate/source/d6/UrlAliasTest.php
@@ -20,7 +20,7 @@ class UrlAliasTest extends MigrateSqlSourceTestBase {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     $tests = [];
 
     // The source data.
diff --git a/core/modules/path/tests/src/Kernel/Plugin/migrate/source/d7/UrlAliasTest.php b/core/modules/path/tests/src/Kernel/Plugin/migrate/source/d7/UrlAliasTest.php
index 191b0794d962a90f4a60a735994e683d187ee81d..b0db55a3175bbf010aa0a64511a35a1353f61d55 100644
--- a/core/modules/path/tests/src/Kernel/Plugin/migrate/source/d7/UrlAliasTest.php
+++ b/core/modules/path/tests/src/Kernel/Plugin/migrate/source/d7/UrlAliasTest.php
@@ -20,7 +20,7 @@ class UrlAliasTest extends MigrateSqlSourceTestBase {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     $tests = [];
 
     // The source data.
diff --git a/core/modules/path/tests/src/Unit/migrate/process/PathSetTranslatedTest.php b/core/modules/path/tests/src/Unit/migrate/process/PathSetTranslatedTest.php
index 7f234ec6b3b7ffd8a55871868adb07fee989522d..03ece19d9d84c722a9dfdc9ee5015f707a9e0205 100644
--- a/core/modules/path/tests/src/Unit/migrate/process/PathSetTranslatedTest.php
+++ b/core/modules/path/tests/src/Unit/migrate/process/PathSetTranslatedTest.php
@@ -40,7 +40,7 @@ public function testTransform($path, $node_translation, $expected_result) {
    * @return array
    *   The data.
    */
-  public function transformDataProvider() {
+  public static function transformDataProvider() {
     return [
       'non-node-path' => [
         'path' => '/non-node-path',
diff --git a/core/modules/path_alias/tests/src/Unit/PathProcessor/AliasPathProcessorTest.php b/core/modules/path_alias/tests/src/Unit/PathProcessor/AliasPathProcessorTest.php
index d0789615701fc6ef42d14ba821099d7c1579dee3..12ab0711dc50987addf5b21ae55a35b4c4fe812d 100644
--- a/core/modules/path_alias/tests/src/Unit/PathProcessor/AliasPathProcessorTest.php
+++ b/core/modules/path_alias/tests/src/Unit/PathProcessor/AliasPathProcessorTest.php
@@ -83,7 +83,7 @@ public function testProcessOutbound($path, array $options, $expected_path) {
   /**
    * @return array
    */
-  public function providerTestProcessOutbound() {
+  public static function providerTestProcessOutbound() {
     return [
       ['internal-url', [], 'url-alias'],
       ['internal-url', ['alias' => TRUE], 'internal-url'],
diff --git a/core/modules/pgsql/tests/src/Unit/SchemaTest.php b/core/modules/pgsql/tests/src/Unit/SchemaTest.php
index 40317a9fa17c3cef286be1f88a9a51663bdf86c7..1514d1a14ad9d59595a24e85b70077e87467f5bf 100644
--- a/core/modules/pgsql/tests/src/Unit/SchemaTest.php
+++ b/core/modules/pgsql/tests/src/Unit/SchemaTest.php
@@ -49,7 +49,7 @@ public function testComputedConstraintName($table_name, $name, $expected) {
   /**
    * Data provider for ::testComputedConstraintName().
    */
-  public function providerComputedConstraintName() {
+  public static function providerComputedConstraintName() {
     return [
       ['user_field_data', 'pkey', 'user_field_data____pkey'],
       ['user_field_data', 'name__key', 'user_field_data__name__key'],
diff --git a/core/modules/phpass/tests/src/Unit/PasswordVerifyTest.php b/core/modules/phpass/tests/src/Unit/PasswordVerifyTest.php
index 92ff768a5ed8813fa9b7bc775ae1e832fe09a13c..3bb25198750d92f73eaa09350cf2b5973be95924 100644
--- a/core/modules/phpass/tests/src/Unit/PasswordVerifyTest.php
+++ b/core/modules/phpass/tests/src/Unit/PasswordVerifyTest.php
@@ -143,7 +143,7 @@ public function testLongPassword($password, $allowed) {
   /**
    * Provides the test matrix for testLongPassword().
    */
-  public function providerLongPasswords() {
+  public static function providerLongPasswords() {
     // '512 byte long password is allowed.'
     $passwords['allowed'] = [str_repeat('x', PasswordInterface::PASSWORD_MAX_LENGTH), TRUE];
     // 513 byte long password is not allowed.
diff --git a/core/modules/responsive_image/tests/src/Kernel/Plugin/migrate/source/d7/ResponsiveImageStylesTest.php b/core/modules/responsive_image/tests/src/Kernel/Plugin/migrate/source/d7/ResponsiveImageStylesTest.php
index b89b4b435ad03a6a48ba8c3fee302bbbd72b30b6..d87783a3f57ff7016b299d247d9b3b35897f457b 100644
--- a/core/modules/responsive_image/tests/src/Kernel/Plugin/migrate/source/d7/ResponsiveImageStylesTest.php
+++ b/core/modules/responsive_image/tests/src/Kernel/Plugin/migrate/source/d7/ResponsiveImageStylesTest.php
@@ -23,7 +23,7 @@ class ResponsiveImageStylesTest extends MigrateSqlSourceTestBase {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     $tests = [];
 
     // The source data.
diff --git a/core/modules/rest/tests/src/Kernel/Entity/ConfigDependenciesTest.php b/core/modules/rest/tests/src/Kernel/Entity/ConfigDependenciesTest.php
index e854cb71cc0bd9e610dcbc933fad75f4467dd584..ffd7bc7f84957b6a89bf880b0acc8851beaa2f5f 100644
--- a/core/modules/rest/tests/src/Kernel/Entity/ConfigDependenciesTest.php
+++ b/core/modules/rest/tests/src/Kernel/Entity/ConfigDependenciesTest.php
@@ -56,7 +56,7 @@ public function testOnDependencyRemovalRemoveUnrelatedDependency(array $configur
    *   An array with numerical keys:
    *   0. The original REST resource configuration.
    */
-  public function providerBasicDependencies() {
+  public static function providerBasicDependencies() {
     return [
       'method' => [
         [
@@ -151,7 +151,7 @@ public function testOnDependencyRemovalForResourceGranularity(array $configurati
    *   1. The module to uninstall (the dependency that is about to be removed).
    *   2. The expected configuration after uninstalling this module.
    */
-  public function providerOnDependencyRemovalForResourceGranularity() {
+  public static function providerOnDependencyRemovalForResourceGranularity() {
     return [
       'resource with multiple formats' => [
         [
diff --git a/core/modules/rest/tests/src/Unit/EventSubscriber/ResourceResponseSubscriberTest.php b/core/modules/rest/tests/src/Unit/EventSubscriber/ResourceResponseSubscriberTest.php
index 6234c72b7a5e21f1f365c54cb5aa03cfa052bf6f..f51ff6e4e9a6e5aa70e7d6e05c6302488c949b08 100644
--- a/core/modules/rest/tests/src/Unit/EventSubscriber/ResourceResponseSubscriberTest.php
+++ b/core/modules/rest/tests/src/Unit/EventSubscriber/ResourceResponseSubscriberTest.php
@@ -53,7 +53,7 @@ public function testSerialization($data, $expected_response = FALSE) {
     $this->assertEquals($expected_response !== FALSE ? $expected_response : Json::encode($data), $event->getResponse()->getContent());
   }
 
-  public function providerTestSerialization() {
+  public static function providerTestSerialization() {
     return [
       // The default data for \Drupal\rest\ResourceResponse.
       'default' => [NULL, ''],
@@ -218,7 +218,7 @@ public function testOnResponseWithUncacheableResponse($methods, array $supported
    *   6. expected response content type
    *   7. expected response body
    */
-  public function providerTestResponseFormat() {
+  public static function providerTestResponseFormat() {
     $json_encoded = Json::encode(['REST' => 'Drupal']);
     $xml_encoded = "<?xml version=\"1.0\"?>\n<response><REST>Drupal</REST></response>\n";
 
diff --git a/core/modules/sdc/tests/src/Unit/ComponentMetadataTest.php b/core/modules/sdc/tests/src/Unit/ComponentMetadataTest.php
index 3b1f439a2fd99e6545c8eb4cb1f480a2c8e860ed..d486eda26b6c91000ed218da8736bf256bf6ce2f 100644
--- a/core/modules/sdc/tests/src/Unit/ComponentMetadataTest.php
+++ b/core/modules/sdc/tests/src/Unit/ComponentMetadataTest.php
@@ -54,7 +54,7 @@ public function testMetadataEnforceSchema(array $metadata_info, array $expectati
    * @return array[]
    *   The batches of data.
    */
-  public function dataProviderMetadata(): array {
+  public static function dataProviderMetadata(): array {
     return [
       'minimal example without schemas' => [
         [
diff --git a/core/modules/sdc/tests/src/Unit/SchemaCompatibilityCheckerTest.php b/core/modules/sdc/tests/src/Unit/SchemaCompatibilityCheckerTest.php
index 142c7939c45d7631b6e6b2e81323245a740a1841..7f542b209ef66b57d03110040773a18a54bb9d23 100644
--- a/core/modules/sdc/tests/src/Unit/SchemaCompatibilityCheckerTest.php
+++ b/core/modules/sdc/tests/src/Unit/SchemaCompatibilityCheckerTest.php
@@ -50,7 +50,7 @@ public function testIsCompatible(array $first_schema, array $second_schema, bool
    * @return array[]
    *   The batches of data.
    */
-  public function dataProviderIsCompatible(): array {
+  public static function dataProviderIsCompatible(): array {
     $schema = [
       'type' => 'object',
       'required' => ['text'],
diff --git a/core/modules/sdc/tests/src/Unit/UtilitiesTest.php b/core/modules/sdc/tests/src/Unit/UtilitiesTest.php
index 04cd8f7d2cc0848a229b95ac27f7a6433927eb50..ce10ba880655ee463ea08619f72635b5d28dc28e 100644
--- a/core/modules/sdc/tests/src/Unit/UtilitiesTest.php
+++ b/core/modules/sdc/tests/src/Unit/UtilitiesTest.php
@@ -27,7 +27,7 @@ public function testIsRenderArray($build, $expected) {
     );
   }
 
-  public function dataProviderIsRenderArray() {
+  public static function dataProviderIsRenderArray() {
     return [
       'valid markup render array' => [['#markup' => 'hello world'], TRUE],
       'invalid "foo" string' => [['foo', '#markup' => 'hello world'], FALSE],
diff --git a/core/modules/search/tests/src/Kernel/Migrate/d6/SearchPageTest.php b/core/modules/search/tests/src/Kernel/Migrate/d6/SearchPageTest.php
index 42eb9f6bf7b127080e1b5ef3869e6886cb6f445d..f72dc0635479c0cd2d824e602562d2c0e9ced612 100644
--- a/core/modules/search/tests/src/Kernel/Migrate/d6/SearchPageTest.php
+++ b/core/modules/search/tests/src/Kernel/Migrate/d6/SearchPageTest.php
@@ -20,7 +20,7 @@ class SearchPageTest extends MigrateSqlSourceTestBase {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     $tests[0]['source_data'] = [
       'variable' => [
         [
diff --git a/core/modules/search/tests/src/Kernel/Migrate/d7/SearchPageTest.php b/core/modules/search/tests/src/Kernel/Migrate/d7/SearchPageTest.php
index 24f040d834e6eee42b7f9282ba33ef764d111715..5c6bdea9904568a80a52f8fa47e749cbd49ef412 100644
--- a/core/modules/search/tests/src/Kernel/Migrate/d7/SearchPageTest.php
+++ b/core/modules/search/tests/src/Kernel/Migrate/d7/SearchPageTest.php
@@ -20,7 +20,7 @@ class SearchPageTest extends MigrateSqlSourceTestBase {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     $tests[0]['source_data'] = [
       'variable' => [
         [
diff --git a/core/modules/serialization/tests/src/Kernel/FieldItemSerializationTest.php b/core/modules/serialization/tests/src/Kernel/FieldItemSerializationTest.php
index 0eb95961e05320789c6e40062a365f334c840e0c..8726d9bd0da0f2272b80a3dce87a37f10b8fd88e 100644
--- a/core/modules/serialization/tests/src/Kernel/FieldItemSerializationTest.php
+++ b/core/modules/serialization/tests/src/Kernel/FieldItemSerializationTest.php
@@ -213,7 +213,7 @@ public function testCustomBooleanNormalization(array $test_modules, $format) {
    * @return array
    *   Test cases.
    */
-  public function providerTestCustomBooleanNormalization() {
+  public static function providerTestCustomBooleanNormalization() {
     return [
       'Format-agnostic @FieldType-level normalizers SHOULD be able to affect the format-agnostic normalization' => [
         ['test_fieldtype_boolean_emoji_normalizer'],
diff --git a/core/modules/serialization/tests/src/Unit/Normalizer/DateTimeIso8601NormalizerTest.php b/core/modules/serialization/tests/src/Unit/Normalizer/DateTimeIso8601NormalizerTest.php
index 4676ea218b094f72035925afc034b54493093cb2..a3e41b71a0f9679935227259326b949ca0f8d99f 100644
--- a/core/modules/serialization/tests/src/Unit/Normalizer/DateTimeIso8601NormalizerTest.php
+++ b/core/modules/serialization/tests/src/Unit/Normalizer/DateTimeIso8601NormalizerTest.php
@@ -153,7 +153,7 @@ public function testNormalizeWhenNull($parent_field_item_class, $datetime_type,
    *
    * @return array
    */
-  public function providerTestNormalize() {
+  public static function providerTestNormalize() {
     return [
       // @see \Drupal\datetime\Plugin\Field\FieldType\DateTimeItem::DATETIME_TYPE_DATE
       'datetime field, configured to store only date: must be handled by DateTimeIso8601Normalizer' => [
@@ -197,7 +197,7 @@ public function testDenormalizeValidFormats($type, $normalized, $expected) {
    *
    * @return array
    */
-  public function providerTestDenormalizeValidFormats() {
+  public static function providerTestDenormalizeValidFormats() {
     $data = [];
     $data['just a date'] = ['date-only', '2016-11-06', '2016-11-06'];
 
diff --git a/core/modules/serialization/tests/src/Unit/Normalizer/DateTimeNormalizerTest.php b/core/modules/serialization/tests/src/Unit/Normalizer/DateTimeNormalizerTest.php
index c229ee6f56b2709277738e24c19fd7f675c190f0..72cbcf1928bbcff88131c1563ba6ae16e6d8d814 100644
--- a/core/modules/serialization/tests/src/Unit/Normalizer/DateTimeNormalizerTest.php
+++ b/core/modules/serialization/tests/src/Unit/Normalizer/DateTimeNormalizerTest.php
@@ -121,7 +121,7 @@ public function testDenormalizeValidFormats($normalized, $expected) {
    *
    * @return array
    */
-  public function providerTestDenormalizeValidFormats() {
+  public static function providerTestDenormalizeValidFormats() {
     $data = [];
 
     $data['RFC3339'] = ['2016-11-06T09:02:00+00:00', new \DateTimeImmutable('2016-11-06T09:02:00+00:00')];
@@ -152,7 +152,7 @@ public function testDenormalizeUserFormats($normalized, $format, $expected) {
    *
    * @return array
    */
-  public function providerTestDenormalizeUserFormats() {
+  public static function providerTestDenormalizeUserFormats() {
     $data = [];
 
     $data['Y/m/d H:i:s P'] = ['2016/11/06 09:02:00 +00:00', 'Y/m/d H:i:s P', new \DateTimeImmutable('2016-11-06T09:02:00+00:00')];
diff --git a/core/modules/serialization/tests/src/Unit/Normalizer/NormalizerBaseTest.php b/core/modules/serialization/tests/src/Unit/Normalizer/NormalizerBaseTest.php
index c07224e4f1c5ec6e418a0d748b730136075638bd..f4ed459598c27f90b64f612d8be714dd55a44491 100644
--- a/core/modules/serialization/tests/src/Unit/Normalizer/NormalizerBaseTest.php
+++ b/core/modules/serialization/tests/src/Unit/Normalizer/NormalizerBaseTest.php
@@ -41,7 +41,7 @@ public function testSupportsNormalization($expected_return, $data, $supported_ty
    * @return array
    *   An array of provider data for testSupportsNormalization.
    */
-  public function providerTestSupportsNormalization() {
+  public static function providerTestSupportsNormalization() {
     return [
       // Something that is not an object should return FALSE immediately.
       [FALSE, []],
diff --git a/core/modules/serialization/tests/src/Unit/Normalizer/PrimitiveDataNormalizerTest.php b/core/modules/serialization/tests/src/Unit/Normalizer/PrimitiveDataNormalizerTest.php
index c32bbf8adf045323f1312d240deb937c39193eec..f7107fecfcf7ec95c5f6d15ae2ca0a7d56aaeeb6 100644
--- a/core/modules/serialization/tests/src/Unit/Normalizer/PrimitiveDataNormalizerTest.php
+++ b/core/modules/serialization/tests/src/Unit/Normalizer/PrimitiveDataNormalizerTest.php
@@ -60,7 +60,7 @@ public function testNormalize($primitive_data, $expected) {
   /**
    * Data provider for testNormalize().
    */
-  public function dataProviderPrimitiveData() {
+  public static function dataProviderPrimitiveData() {
     $data = [];
 
     $definition = DataDefinition::createFromDataType('string');
diff --git a/core/modules/serialization/tests/src/Unit/Normalizer/TimestampNormalizerTest.php b/core/modules/serialization/tests/src/Unit/Normalizer/TimestampNormalizerTest.php
index 2023a4d8c704ae5cef572f89292773381c65f3d6..f64f9c8e010151b863184bf3f5125f3b08f3bdb0 100644
--- a/core/modules/serialization/tests/src/Unit/Normalizer/TimestampNormalizerTest.php
+++ b/core/modules/serialization/tests/src/Unit/Normalizer/TimestampNormalizerTest.php
@@ -101,7 +101,7 @@ public function testDenormalizeValidFormats($normalized, $expected) {
    *
    * @return array
    */
-  public function providerTestDenormalizeValidFormats() {
+  public static function providerTestDenormalizeValidFormats() {
     $expected_stamp = 1478422920;
 
     $data = [];
diff --git a/core/modules/shortcut/tests/src/Kernel/Plugin/migrate/source/d7/ShortcutSetTest.php b/core/modules/shortcut/tests/src/Kernel/Plugin/migrate/source/d7/ShortcutSetTest.php
index 302f80dbe6589b85e3059afbe474de3d73ee24b6..685f4e673c1c0221fcad7ba5d55bb3427d51fb8a 100644
--- a/core/modules/shortcut/tests/src/Kernel/Plugin/migrate/source/d7/ShortcutSetTest.php
+++ b/core/modules/shortcut/tests/src/Kernel/Plugin/migrate/source/d7/ShortcutSetTest.php
@@ -21,7 +21,7 @@ class ShortcutSetTest extends MigrateSqlSourceTestBase {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     $tests = [];
 
     // The source data.
diff --git a/core/modules/shortcut/tests/src/Kernel/Plugin/migrate/source/d7/ShortcutSetUsersTest.php b/core/modules/shortcut/tests/src/Kernel/Plugin/migrate/source/d7/ShortcutSetUsersTest.php
index 5dc83f79ef9bb9323b645ac39796710c0aa0baca..de8ca9822d98410d6d292a9adc5f136baeadb4a1 100644
--- a/core/modules/shortcut/tests/src/Kernel/Plugin/migrate/source/d7/ShortcutSetUsersTest.php
+++ b/core/modules/shortcut/tests/src/Kernel/Plugin/migrate/source/d7/ShortcutSetUsersTest.php
@@ -21,7 +21,7 @@ class ShortcutSetUsersTest extends MigrateSqlSourceTestBase {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     $tests = [];
 
     // The source data.
diff --git a/core/modules/shortcut/tests/src/Kernel/Plugin/migrate/source/d7/ShortcutTest.php b/core/modules/shortcut/tests/src/Kernel/Plugin/migrate/source/d7/ShortcutTest.php
index afd1e1d9651e14d4ace6f2ef04c9cc5f121a3b2e..adebced8ad460f276c793d115293741c979f29b4 100644
--- a/core/modules/shortcut/tests/src/Kernel/Plugin/migrate/source/d7/ShortcutTest.php
+++ b/core/modules/shortcut/tests/src/Kernel/Plugin/migrate/source/d7/ShortcutTest.php
@@ -21,7 +21,7 @@ class ShortcutTest extends MigrateSqlSourceTestBase {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     $tests = [];
 
     // The source data.
diff --git a/core/modules/shortcut/tests/src/Unit/Menu/ShortcutLocalTasksTest.php b/core/modules/shortcut/tests/src/Unit/Menu/ShortcutLocalTasksTest.php
index ea8e975c7a06e504412d6906761e18e11e1471e1..a95d723f798581a8e0d0e4073d54314528d4c22a 100644
--- a/core/modules/shortcut/tests/src/Unit/Menu/ShortcutLocalTasksTest.php
+++ b/core/modules/shortcut/tests/src/Unit/Menu/ShortcutLocalTasksTest.php
@@ -48,7 +48,7 @@ public function testShortcutPageLocalTasks($route) {
   /**
    * Provides a list of routes to test.
    */
-  public function getShortcutPageRoutes() {
+  public static function getShortcutPageRoutes() {
     return [
       ['entity.user.canonical'],
       ['entity.user.edit_form'],
diff --git a/core/modules/sqlite/tests/src/Unit/ConnectionTest.php b/core/modules/sqlite/tests/src/Unit/ConnectionTest.php
index 37e3062d5e247ee33afbbb3665698e0002e25b8e..28ae34ab925fc49678fe2be3d0479707619811f2 100644
--- a/core/modules/sqlite/tests/src/Unit/ConnectionTest.php
+++ b/core/modules/sqlite/tests/src/Unit/ConnectionTest.php
@@ -39,7 +39,7 @@ public function testCreateConnectionOptionsFromUrl(string $url, string $expected
    *   - SQLite database URL
    *   - Expected database connection option
    */
-  public function providerCreateConnectionOptionsFromUrl(): array {
+  public static function providerCreateConnectionOptionsFromUrl(): array {
     $root = dirname(__DIR__, 8);
     return [
       'sqlite relative path' => ['sqlite://localhost/tmp/test', $root . '/tmp/test'],
diff --git a/core/modules/statistics/tests/src/Kernel/Plugin/migrate/source/NodeCounterTest.php b/core/modules/statistics/tests/src/Kernel/Plugin/migrate/source/NodeCounterTest.php
index f2a64c44161eb45d56f071530d6af4074639ddcd..f726df79168c24809ce1e28c3ff4b6a6bb09f7ad 100644
--- a/core/modules/statistics/tests/src/Kernel/Plugin/migrate/source/NodeCounterTest.php
+++ b/core/modules/statistics/tests/src/Kernel/Plugin/migrate/source/NodeCounterTest.php
@@ -21,7 +21,7 @@ class NodeCounterTest extends MigrateSqlSourceTestBase {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     $tests = [];
 
     // The source data.
diff --git a/core/modules/statistics/tests/src/Unit/StatisticsViewsResultTest.php b/core/modules/statistics/tests/src/Unit/StatisticsViewsResultTest.php
index c811fcfd3d466444a7de89be66065325f96125b7..d7cd9a4eb7793288c37baf459ac54b986ac500b2 100644
--- a/core/modules/statistics/tests/src/Unit/StatisticsViewsResultTest.php
+++ b/core/modules/statistics/tests/src/Unit/StatisticsViewsResultTest.php
@@ -27,7 +27,7 @@ public function testStatisticsCount($total_count, $day_count, $timestamp) {
     $this->assertSame((int) $timestamp, $statistics->getTimestamp());
   }
 
-  public function providerTestStatisticsCount() {
+  public static function providerTestStatisticsCount() {
     return [
       [2, 0, 1421727536],
       [1, 0, 1471428059],
diff --git a/core/modules/system/tests/modules/entity_test/tests/src/Functional/Rest/EntityTestTextItemNormalizerTest.php b/core/modules/system/tests/modules/entity_test/tests/src/Functional/Rest/EntityTestTextItemNormalizerTest.php
index 9bd6c2ec63a9a2beb9f6836027d1ddce59f9d21f..cb646e0b55c743a32f72fb833bc4e1d5f8ebd988 100644
--- a/core/modules/system/tests/modules/entity_test/tests/src/Functional/Rest/EntityTestTextItemNormalizerTest.php
+++ b/core/modules/system/tests/modules/entity_test/tests/src/Functional/Rest/EntityTestTextItemNormalizerTest.php
@@ -183,7 +183,7 @@ public function testGetWithFormat($text_format_id, array $expected_cache_tags) {
     $this->assertEqualsCanonicalizing($expected_cache_tags, explode(' ', $response->getHeader('X-Drupal-Cache-Tags')[0]));
   }
 
-  public function providerTestGetWithFormat() {
+  public static function providerTestGetWithFormat() {
     return [
       'format specified (different from fallback format)' => [
         'pablo',
diff --git a/core/modules/system/tests/src/Functional/Datetime/TimeZoneAbbreviationRouteTest.php b/core/modules/system/tests/src/Functional/Datetime/TimeZoneAbbreviationRouteTest.php
index ab2e482b27f3a7746b8b5e9d001384cf2814b798..732ffd004c6e5ddc26640d03b1cc42bb57edbe8a 100644
--- a/core/modules/system/tests/src/Functional/Datetime/TimeZoneAbbreviationRouteTest.php
+++ b/core/modules/system/tests/src/Functional/Datetime/TimeZoneAbbreviationRouteTest.php
@@ -64,7 +64,7 @@ public function testAbbreviationConversion($path, $expectedResponse = NULL, $exp
    * @return array
    *   Test scenarios.
    */
-  public function providerAbbreviationConversion() {
+  public static function providerAbbreviationConversion() {
     return [
       'valid, default offset' => [
         'CST/0/0',
diff --git a/core/modules/system/tests/src/Functional/Theme/ThemeUiTest.php b/core/modules/system/tests/src/Functional/Theme/ThemeUiTest.php
index f7ea323cc98348a61ebfd4849da93648a1c663c0..ee7f0811085372ab8bf18c8bee8d017fed153f99 100644
--- a/core/modules/system/tests/src/Functional/Theme/ThemeUiTest.php
+++ b/core/modules/system/tests/src/Functional/Theme/ThemeUiTest.php
@@ -211,7 +211,7 @@ protected function uninstallTheme($theme_name) {
    *   An array of arrays. Details on the specific elements can be found in the
    *   function body.
    */
-  public function providerTestThemeInstallWithModuleDependencies() {
+  public static function providerTestThemeInstallWithModuleDependencies() {
     // Data provider values with the following keys:
     // -'theme_name': The name of the theme being tested.
     // -'first_modules': Array of module machine names to enable first.
diff --git a/core/modules/system/tests/src/Functional/UpdateSystem/UpdateScriptTest.php b/core/modules/system/tests/src/Functional/UpdateSystem/UpdateScriptTest.php
index bf426a83ad351ae1f03a66731f275288fee8aeba..89340c0ca21e205f1d2e069231b307512a2ce5cc 100644
--- a/core/modules/system/tests/src/Functional/UpdateSystem/UpdateScriptTest.php
+++ b/core/modules/system/tests/src/Functional/UpdateSystem/UpdateScriptTest.php
@@ -277,7 +277,7 @@ public function testExtensionCompatibilityChange(array $correct_info, array $bre
   /**
    * Date provider for testExtensionCompatibilityChange().
    */
-  public function providerExtensionCompatibilityChange() {
+  public static function providerExtensionCompatibilityChange() {
     $incompatible_module_message = "The following module is installed, but it is incompatible with Drupal " . \Drupal::VERSION . ":";
     $incompatible_theme_message = "The following theme is installed, but it is incompatible with Drupal " . \Drupal::VERSION . ":";
     return [
@@ -551,7 +551,7 @@ public function testOrphanedSchemaEntries() {
    * @return array[]
    *   Set of test cases to pass to the test method.
    */
-  public function providerMissingExtension(): array {
+  public static function providerMissingExtension(): array {
     return [
       'core only' => [
         'core' => [
diff --git a/core/modules/system/tests/src/FunctionalJavascript/ThemeSettingsFormTest.php b/core/modules/system/tests/src/FunctionalJavascript/ThemeSettingsFormTest.php
index 8ad55fce4db8cf319f0b38fc0fc174f05e6a9e81..0b8da7ad4443979be11457457fc3caf82a8069ca 100644
--- a/core/modules/system/tests/src/FunctionalJavascript/ThemeSettingsFormTest.php
+++ b/core/modules/system/tests/src/FunctionalJavascript/ThemeSettingsFormTest.php
@@ -75,7 +75,7 @@ public function testFormSettingsSubmissionHandler($theme) {
   /**
    * Provides test data for ::testFormSettingsSubmissionHandler().
    */
-  public function providerTestFormSettingsSubmissionHandler() {
+  public static function providerTestFormSettingsSubmissionHandler() {
     return [
       'test theme.theme' => ['test_theme_theme'],
       'test theme-settings.php' => ['test_theme_settings'],
diff --git a/core/modules/system/tests/src/Kernel/Block/SystemMenuBlockTest.php b/core/modules/system/tests/src/Kernel/Block/SystemMenuBlockTest.php
index a09d42b40219e3ae55eb9254ff0a7d97bed5fe24..ccbbb8bc0fcb13ee660ff05989c694ec884a19e6 100644
--- a/core/modules/system/tests/src/Kernel/Block/SystemMenuBlockTest.php
+++ b/core/modules/system/tests/src/Kernel/Block/SystemMenuBlockTest.php
@@ -314,7 +314,7 @@ public function testConfigExpanded($active_route, $menu_block_level, $expected_i
   /**
    * @return array
    */
-  public function configExpandedTestCases() {
+  public static function configExpandedTestCases() {
     return [
       'All levels' => [
         'example5',
diff --git a/core/modules/system/tests/src/Kernel/DateFormatAccessControlHandlerTest.php b/core/modules/system/tests/src/Kernel/DateFormatAccessControlHandlerTest.php
index d63f44fccb14e5a90f19b779801a6df11c519987..e4cb0506e3f7c8bc0c46abbc2b9820e507ba974e 100644
--- a/core/modules/system/tests/src/Kernel/DateFormatAccessControlHandlerTest.php
+++ b/core/modules/system/tests/src/Kernel/DateFormatAccessControlHandlerTest.php
@@ -80,7 +80,7 @@ public function testAccess($which_user, $which_entity, $view_label_access_result
     static::assertEquals($create_access_result, $this->accessControlHandler->createAccess(NULL, $user, [], TRUE));
   }
 
-  public function testAccessProvider() {
+  public static function testAccessProvider() {
     $c = new ContainerBuilder();
     $cache_contexts_manager = (new Prophet())->prophesize(CacheContextsManager::class);
     $cache_contexts_manager->assertValidTokens()->willReturn(TRUE);
diff --git a/core/modules/system/tests/src/Kernel/Entity/EntityReferenceSelectionReferenceableTest.php b/core/modules/system/tests/src/Kernel/Entity/EntityReferenceSelectionReferenceableTest.php
index 254273c2e642a9a3de90e4ec00dd7c0123cecfd9..d9be4d2a1e008ce3f15faad4d70e7b1074c888ee 100644
--- a/core/modules/system/tests/src/Kernel/Entity/EntityReferenceSelectionReferenceableTest.php
+++ b/core/modules/system/tests/src/Kernel/Entity/EntityReferenceSelectionReferenceableTest.php
@@ -141,7 +141,7 @@ public function testReferenceablesWithNoLabelKey($match, $match_operator, $limit
    *
    * @return array[]
    */
-  public function providerTestCases() {
+  public static function providerTestCases() {
     return [
       // All referenceables, no limit. Expecting 9 items.
       [NULL, 'CONTAINS', 0, 9, static::$labels, 9],
diff --git a/core/modules/system/tests/src/Kernel/Installer/InstallTranslationFilePatternTest.php b/core/modules/system/tests/src/Kernel/Installer/InstallTranslationFilePatternTest.php
index 3942882d40f350bba0907173e1cc08a1fc2765a2..6e2b9e094ba604591c8481256b381b3c4b835dd4 100644
--- a/core/modules/system/tests/src/Kernel/Installer/InstallTranslationFilePatternTest.php
+++ b/core/modules/system/tests/src/Kernel/Installer/InstallTranslationFilePatternTest.php
@@ -48,7 +48,7 @@ public function testFilesPatternValid($langcode, $filename) {
   /**
    * @return array
    */
-  public function providerValidTranslationFiles() {
+  public static function providerValidTranslationFiles() {
     return [
       ['hu', 'drupal-8.0.0-alpha1.hu.po'],
       ['ta', 'drupal-8.10.10-beta12.ta.po'],
@@ -67,7 +67,7 @@ public function testFilesPatternInvalid($langcode, $filename) {
   /**
    * @return array
    */
-  public function providerInvalidTranslationFiles() {
+  public static function providerInvalidTranslationFiles() {
     return [
       ['hu', 'drupal-alpha1-*-hu.po'],
       ['ta', 'drupal-beta12.ta'],
diff --git a/core/modules/system/tests/src/Kernel/Plugin/migrate/source/ActionTest.php b/core/modules/system/tests/src/Kernel/Plugin/migrate/source/ActionTest.php
index 69e47096eb787f06374adfcc607f0b316b654681..c2738b13359553979d3c5dcdb74ef5e401b164c5 100644
--- a/core/modules/system/tests/src/Kernel/Plugin/migrate/source/ActionTest.php
+++ b/core/modules/system/tests/src/Kernel/Plugin/migrate/source/ActionTest.php
@@ -20,7 +20,7 @@ class ActionTest extends MigrateSqlSourceTestBase {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     $tests = [];
 
     $tests[0][0]['actions'] = [
diff --git a/core/modules/system/tests/src/Kernel/Plugin/migrate/source/ExtensionTest.php b/core/modules/system/tests/src/Kernel/Plugin/migrate/source/ExtensionTest.php
index 64251b7107cc61bc0877ed635d7409aaacc5e851..741a25ff35ca6f74d815eae9f8fd535782dabd18 100644
--- a/core/modules/system/tests/src/Kernel/Plugin/migrate/source/ExtensionTest.php
+++ b/core/modules/system/tests/src/Kernel/Plugin/migrate/source/ExtensionTest.php
@@ -20,7 +20,7 @@ class ExtensionTest extends MigrateSqlSourceTestBase {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     $test = [];
 
     $test[0]['source_data']['system'] = [
diff --git a/core/modules/system/tests/src/Kernel/Plugin/migrate/source/MenuTest.php b/core/modules/system/tests/src/Kernel/Plugin/migrate/source/MenuTest.php
index 0dc4082df722b254f4b6ad1b3d9344518d33f201..806a77882edf0de338a3e87bdc45d874361e1a91 100644
--- a/core/modules/system/tests/src/Kernel/Plugin/migrate/source/MenuTest.php
+++ b/core/modules/system/tests/src/Kernel/Plugin/migrate/source/MenuTest.php
@@ -21,7 +21,7 @@ class MenuTest extends MigrateSqlSourceTestBase {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     $tests = [];
 
     // The source data.
diff --git a/core/modules/system/tests/src/Kernel/Plugin/migrate/source/d7/MenuTranslationTest.php b/core/modules/system/tests/src/Kernel/Plugin/migrate/source/d7/MenuTranslationTest.php
index 7e829acab79946576a8a6d49987e5e92a02f9744..9b8fbe549192e73fa05356a8cbb4aa00da4b64ab 100644
--- a/core/modules/system/tests/src/Kernel/Plugin/migrate/source/d7/MenuTranslationTest.php
+++ b/core/modules/system/tests/src/Kernel/Plugin/migrate/source/d7/MenuTranslationTest.php
@@ -22,7 +22,7 @@ class MenuTranslationTest extends MigrateSqlSourceTestBase {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     $tests = [];
     $tests[0]['source_data']['menu_custom'] = [
       [
diff --git a/core/modules/system/tests/src/Kernel/Plugin/migrate/source/d7/ThemeSettingsTest.php b/core/modules/system/tests/src/Kernel/Plugin/migrate/source/d7/ThemeSettingsTest.php
index 8aa69be39d7b0ee2528c52329f62e5a670a3d4d6..ee13953153188a231202c0463fa4d1d7cfabef77 100644
--- a/core/modules/system/tests/src/Kernel/Plugin/migrate/source/d7/ThemeSettingsTest.php
+++ b/core/modules/system/tests/src/Kernel/Plugin/migrate/source/d7/ThemeSettingsTest.php
@@ -21,7 +21,7 @@ class ThemeSettingsTest extends MigrateSqlSourceTestBase {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     $tests = [];
 
     // The source data.
diff --git a/core/modules/system/tests/src/Kernel/SecurityAdvisories/SecurityAdvisoriesFetcherTest.php b/core/modules/system/tests/src/Kernel/SecurityAdvisories/SecurityAdvisoriesFetcherTest.php
index 84172eb4b746e5a9a9f610d4634cc83ef6dfc15f..316889ef95e2df295e63a360be8b1921c717f065 100644
--- a/core/modules/system/tests/src/Kernel/SecurityAdvisories/SecurityAdvisoriesFetcherTest.php
+++ b/core/modules/system/tests/src/Kernel/SecurityAdvisories/SecurityAdvisoriesFetcherTest.php
@@ -89,7 +89,7 @@ public function testShowAdvisories(array $feed_item, string $existing_version =
   /**
    * Data provider for testShowAdvisories().
    */
-  public function providerShowAdvisories(): array {
+  public static function providerShowAdvisories(): array {
     return [
       'contrib:exact:non-psa' => [
         'feed_item' => [
@@ -257,7 +257,7 @@ public function testIgnoreAdvisories(array $feed_item, string $existing_version
   /**
    * Data provider for testIgnoreAdvisories().
    */
-  public function providerIgnoreAdvisories(): array {
+  public static function providerIgnoreAdvisories(): array {
     return [
       'contrib:not-exact:non-psa' => [
         'feed_item' => [
diff --git a/core/modules/system/tests/src/Unit/Breadcrumbs/PathBasedBreadcrumbBuilderTest.php b/core/modules/system/tests/src/Unit/Breadcrumbs/PathBasedBreadcrumbBuilderTest.php
index a27944c418babfc6a2ea66bb3871fcaeb54c5f58..d0fc897a117369625010e4823293f9a70c30a02e 100644
--- a/core/modules/system/tests/src/Unit/Breadcrumbs/PathBasedBreadcrumbBuilderTest.php
+++ b/core/modules/system/tests/src/Unit/Breadcrumbs/PathBasedBreadcrumbBuilderTest.php
@@ -300,7 +300,7 @@ public function testBuildWithException($exception_class, $exception_argument) {
    *
    * @see \Drupal\Tests\system\Unit\Breadcrumbs\PathBasedBreadcrumbBuilderTest::testBuildWithException()
    */
-  public function providerTestBuildWithException() {
+  public static function providerTestBuildWithException() {
     return [
       ['Drupal\Core\ParamConverter\ParamNotConvertedException', ''],
       ['Symfony\Component\Routing\Exception\MethodNotAllowedException', []],
diff --git a/core/modules/system/tests/src/Unit/Event/SecurityFileUploadEventSubscriberTest.php b/core/modules/system/tests/src/Unit/Event/SecurityFileUploadEventSubscriberTest.php
index f2c8ba3909686d9bc4330bb779cbfaa88cea2c10..b014da5019cb3ab44eca988ca43bbf884e68bf8e 100644
--- a/core/modules/system/tests/src/Unit/Event/SecurityFileUploadEventSubscriberTest.php
+++ b/core/modules/system/tests/src/Unit/Event/SecurityFileUploadEventSubscriberTest.php
@@ -72,7 +72,7 @@ public function testSanitizeName(string $filename, string $allowed_extensions, s
    *   Arrays with original name, allowed extensions, expected name and
    *   (optional) expected name 'allow_insecure_uploads' is set to TRUE.
    */
-  public function provideFilenames() {
+  public static function provideFilenames() {
     return [
       'All extensions allowed filename not munged' => ['foo.txt', '', 'foo.txt'],
       'All extensions allowed with .php file' => ['foo.php', '', 'foo.php_.txt', 'foo.php'],
@@ -142,7 +142,7 @@ public function testSanitizeNameNoMunge(string $filename, string $allowed_extens
    * @return array
    *   Arrays with original name and allowed extensions.
    */
-  public function provideFilenamesNoMunge() {
+  public static function provideFilenamesNoMunge() {
     return [
       // The following filename would be rejected by 'FileExtension' constraint
       // and therefore remains unchanged.
diff --git a/core/modules/system/tests/src/Unit/Menu/MenuLinkTreeTest.php b/core/modules/system/tests/src/Unit/Menu/MenuLinkTreeTest.php
index d736e39aa0b46de2badf504f22560244f3eb4bf4..e8e0871e472a5df5d5e7995801a7d0c8e0f8276e 100644
--- a/core/modules/system/tests/src/Unit/Menu/MenuLinkTreeTest.php
+++ b/core/modules/system/tests/src/Unit/Menu/MenuLinkTreeTest.php
@@ -115,7 +115,7 @@ public function testBuildCacheability($description, $tree, $expected_build, $acc
    *
    * @see testBuildCacheability
    */
-  public function providerTestBuildCacheability() {
+  public static function providerTestBuildCacheability() {
     $base_expected_build_empty = [
       '#cache' => [
         'contexts' => [],
diff --git a/core/modules/system/tests/src/Unit/Menu/SystemLocalTasksTest.php b/core/modules/system/tests/src/Unit/Menu/SystemLocalTasksTest.php
index df7f74162d95377d6eb30df6498f8654073a66a3..11564a2aca3269e27bdc7f5fae40a3753581c986 100644
--- a/core/modules/system/tests/src/Unit/Menu/SystemLocalTasksTest.php
+++ b/core/modules/system/tests/src/Unit/Menu/SystemLocalTasksTest.php
@@ -76,7 +76,7 @@ public function testSystemAdminLocalTasks($route, $expected) {
   /**
    * Provides a list of routes to test.
    */
-  public function getSystemAdminRoutes() {
+  public static function getSystemAdminRoutes() {
     return [
       ['system.admin_content', [['system.admin_content']]],
       [
diff --git a/core/modules/system/tests/src/Unit/Routing/AdminRouteSubscriberTest.php b/core/modules/system/tests/src/Unit/Routing/AdminRouteSubscriberTest.php
index 117346713824cdb01236703d7066dff5aa0b1cba..a2a0a03f98a5bc6396b48cd1e8e654a82e169d6f 100644
--- a/core/modules/system/tests/src/Unit/Routing/AdminRouteSubscriberTest.php
+++ b/core/modules/system/tests/src/Unit/Routing/AdminRouteSubscriberTest.php
@@ -30,7 +30,7 @@ public function testAlterRoutes(Route $route, $is_admin) {
     $this->assertSame($is_admin, $route->getOption('_admin_route'));
   }
 
-  public function providerTestAlterRoutes() {
+  public static function providerTestAlterRoutes() {
     $data = [];
     $data['non-admin'] = [
       new Route('/foo'),
diff --git a/core/modules/system/tests/src/Unit/SecurityAdvisories/SecurityAdvisoryTest.php b/core/modules/system/tests/src/Unit/SecurityAdvisories/SecurityAdvisoryTest.php
index 13c63ded20961646bfb1cb83c49e649d7836c039..a849b09238284ada2d6c393ebc8a41f2054903a9 100644
--- a/core/modules/system/tests/src/Unit/SecurityAdvisories/SecurityAdvisoryTest.php
+++ b/core/modules/system/tests/src/Unit/SecurityAdvisories/SecurityAdvisoryTest.php
@@ -47,7 +47,7 @@ public function testCreateFromArray(array $changes, array $expected = []): void
   /**
    * Data provider for testCreateFromArray().
    */
-  public function providerCreateFromArray(): array {
+  public static function providerCreateFromArray(): array {
     return [
       // For 'is_psa' the return value should converted to any array.
       [
@@ -110,7 +110,7 @@ public function testCreateFromArrayMissingField(string $missing_field): void {
   /**
    * Data provider for testCreateFromArrayMissingField().
    */
-  public function providerCreateFromArrayMissingField(): array {
+  public static function providerCreateFromArrayMissingField(): array {
     return [
       'title' => ['title'],
       'link' => ['link'],
@@ -148,7 +148,7 @@ public function testCreateFromArrayInvalidField(string $invalid_field, string $e
   /**
    * Data provider for testCreateFromArrayInvalidField().
    */
-  public function providerCreateFromArrayInvalidField(): array {
+  public static function providerCreateFromArrayInvalidField(): array {
     return [
       'title' => ['title', 'This value should be of type string.'],
       'link' => ['link', 'This value should be of type string.'],
diff --git a/core/modules/system/tests/src/Unit/Transliteration/MachineNameControllerTest.php b/core/modules/system/tests/src/Unit/Transliteration/MachineNameControllerTest.php
index 3fb6283db1973ff220c326a8bbdb6e32088ae36b..b1608e620120aaeed01d59f416de021b93b0daad 100644
--- a/core/modules/system/tests/src/Unit/Transliteration/MachineNameControllerTest.php
+++ b/core/modules/system/tests/src/Unit/Transliteration/MachineNameControllerTest.php
@@ -59,7 +59,7 @@ protected function setUp(): void {
    *     - An array of request parameters.
    *     - The expected content of the JSONresponse.
    */
-  public function providerTestMachineNameController() {
+  public static function providerTestMachineNameController() {
     // cspell:ignore äwesome
     $valid_data = [
       [['text' => 'Bob', 'langcode' => 'en'], '"Bob"'],
diff --git a/core/modules/taxonomy/tests/src/Functional/Rest/TermResourceTestBase.php b/core/modules/taxonomy/tests/src/Functional/Rest/TermResourceTestBase.php
index c4f195078eb72de5cc947b281b4c9fa601b998aa..614ddc5513d7858b89ae1cc53b8547ae403d4c34 100644
--- a/core/modules/taxonomy/tests/src/Functional/Rest/TermResourceTestBase.php
+++ b/core/modules/taxonomy/tests/src/Functional/Rest/TermResourceTestBase.php
@@ -356,7 +356,7 @@ public function testGetTermWithParent(array $parent_term_ids) {
     $this->assertSame($expected, $actual);
   }
 
-  public function providerTestGetTermWithParent() {
+  public static function providerTestGetTermWithParent() {
     return [
       'root parent: [0] (= no parent)' => [
         [0],
diff --git a/core/modules/taxonomy/tests/src/Kernel/Plugin/migrate/source/d6/TermLocalizedTranslationTest.php b/core/modules/taxonomy/tests/src/Kernel/Plugin/migrate/source/d6/TermLocalizedTranslationTest.php
index b169ecd9c736422889bc775ed68f28193d0557e1..3da74ac5001ee04913c9e4a9970079148d194205 100644
--- a/core/modules/taxonomy/tests/src/Kernel/Plugin/migrate/source/d6/TermLocalizedTranslationTest.php
+++ b/core/modules/taxonomy/tests/src/Kernel/Plugin/migrate/source/d6/TermLocalizedTranslationTest.php
@@ -22,7 +22,7 @@ class TermLocalizedTranslationTest extends MigrateSqlSourceTestBase {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     $tests = [];
 
     // The source data.
diff --git a/core/modules/taxonomy/tests/src/Kernel/Plugin/migrate/source/d6/TermNodeTest.php b/core/modules/taxonomy/tests/src/Kernel/Plugin/migrate/source/d6/TermNodeTest.php
index 8bda23593be065bbfc063d5f4e0e5204a3897311..34e6f787a7d94349383dd72d47e706b2efc7be14 100644
--- a/core/modules/taxonomy/tests/src/Kernel/Plugin/migrate/source/d6/TermNodeTest.php
+++ b/core/modules/taxonomy/tests/src/Kernel/Plugin/migrate/source/d6/TermNodeTest.php
@@ -22,7 +22,7 @@ class TermNodeTest extends MigrateSqlSourceTestBase {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     $tests = [];
 
     // The source data.
diff --git a/core/modules/taxonomy/tests/src/Kernel/Plugin/migrate/source/d6/TermSourceWithVocabularyFilterTest.php b/core/modules/taxonomy/tests/src/Kernel/Plugin/migrate/source/d6/TermSourceWithVocabularyFilterTest.php
index bb60f9c4b9f6c9bc503d7a4bda1185cbcb06c983..68a6d19767c127f3e598469553c37bf79d14015f 100644
--- a/core/modules/taxonomy/tests/src/Kernel/Plugin/migrate/source/d6/TermSourceWithVocabularyFilterTest.php
+++ b/core/modules/taxonomy/tests/src/Kernel/Plugin/migrate/source/d6/TermSourceWithVocabularyFilterTest.php
@@ -18,7 +18,7 @@ class TermSourceWithVocabularyFilterTest extends TermTest {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     // Get the source data from parent.
     $tests = parent::providerSource();
 
diff --git a/core/modules/taxonomy/tests/src/Kernel/Plugin/migrate/source/d6/TermTest.php b/core/modules/taxonomy/tests/src/Kernel/Plugin/migrate/source/d6/TermTest.php
index c0b50cb0f670f762ac1c170eaf21fb2b9d97a50b..6185fa702dd5c1bf3c5affb5ab636c96446e2b67 100644
--- a/core/modules/taxonomy/tests/src/Kernel/Plugin/migrate/source/d6/TermTest.php
+++ b/core/modules/taxonomy/tests/src/Kernel/Plugin/migrate/source/d6/TermTest.php
@@ -20,7 +20,7 @@ class TermTest extends MigrateSqlSourceTestBase {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     $tests = [];
 
     // The source data.
diff --git a/core/modules/taxonomy/tests/src/Kernel/Plugin/migrate/source/d6/TermTranslationTest.php b/core/modules/taxonomy/tests/src/Kernel/Plugin/migrate/source/d6/TermTranslationTest.php
index cafbc813b95f0b3e2b22127891233cb797d4e25a..6217a69a228210bc233302167e37355b8e026c20 100644
--- a/core/modules/taxonomy/tests/src/Kernel/Plugin/migrate/source/d6/TermTranslationTest.php
+++ b/core/modules/taxonomy/tests/src/Kernel/Plugin/migrate/source/d6/TermTranslationTest.php
@@ -20,7 +20,7 @@ class TermTranslationTest extends MigrateSqlSourceTestBase {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     $tests = [];
 
     // The source data.
diff --git a/core/modules/taxonomy/tests/src/Kernel/Plugin/migrate/source/d6/VocabularyPerTypeTest.php b/core/modules/taxonomy/tests/src/Kernel/Plugin/migrate/source/d6/VocabularyPerTypeTest.php
index bce46846d4371eecdc8a72d00126a3fa68cc6612..21e366a8e43c37c3018faaf464abad86dd74f979 100644
--- a/core/modules/taxonomy/tests/src/Kernel/Plugin/migrate/source/d6/VocabularyPerTypeTest.php
+++ b/core/modules/taxonomy/tests/src/Kernel/Plugin/migrate/source/d6/VocabularyPerTypeTest.php
@@ -21,7 +21,7 @@ class VocabularyPerTypeTest extends MigrateSqlSourceTestBase {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     $tests = [];
 
     // The source data.
diff --git a/core/modules/taxonomy/tests/src/Kernel/Plugin/migrate/source/d6/VocabularyTest.php b/core/modules/taxonomy/tests/src/Kernel/Plugin/migrate/source/d6/VocabularyTest.php
index 4b81b6c3fb87dcbc175142d81018dd840fc80c55..5ec4cad91c691a9eb2f57e62d593de91637ed88b 100644
--- a/core/modules/taxonomy/tests/src/Kernel/Plugin/migrate/source/d6/VocabularyTest.php
+++ b/core/modules/taxonomy/tests/src/Kernel/Plugin/migrate/source/d6/VocabularyTest.php
@@ -21,7 +21,7 @@ class VocabularyTest extends MigrateSqlSourceTestBase {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     $tests = [];
 
     // The source data.
diff --git a/core/modules/taxonomy/tests/src/Kernel/Plugin/migrate/source/d6/VocabularyTranslationTest.php b/core/modules/taxonomy/tests/src/Kernel/Plugin/migrate/source/d6/VocabularyTranslationTest.php
index cabe970f247fcbeb4c861b8139fdede37fdc166e..5049380d0a039f90c8c1cb9676b124a9d32cfa14 100644
--- a/core/modules/taxonomy/tests/src/Kernel/Plugin/migrate/source/d6/VocabularyTranslationTest.php
+++ b/core/modules/taxonomy/tests/src/Kernel/Plugin/migrate/source/d6/VocabularyTranslationTest.php
@@ -22,7 +22,7 @@ class VocabularyTranslationTest extends MigrateSqlSourceTestBase {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     $tests = [];
 
     // The source data.
diff --git a/core/modules/taxonomy/tests/src/Kernel/Plugin/migrate/source/d7/TermEntityTranslationTest.php b/core/modules/taxonomy/tests/src/Kernel/Plugin/migrate/source/d7/TermEntityTranslationTest.php
index 9cb061d19895afbcabdf9ea84fffd0cfbfe162a7..89c175d617dd045007dc7fb39489e957802aa67e 100644
--- a/core/modules/taxonomy/tests/src/Kernel/Plugin/migrate/source/d7/TermEntityTranslationTest.php
+++ b/core/modules/taxonomy/tests/src/Kernel/Plugin/migrate/source/d7/TermEntityTranslationTest.php
@@ -20,7 +20,7 @@ class TermEntityTranslationTest extends MigrateSqlSourceTestBase {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     $tests = [];
 
     // The source data.
diff --git a/core/modules/taxonomy/tests/src/Kernel/Plugin/migrate/source/d7/TermLocalizedTranslationTest.php b/core/modules/taxonomy/tests/src/Kernel/Plugin/migrate/source/d7/TermLocalizedTranslationTest.php
index 1447eda0b510f0ee75c54c59508194ea99e22790..5a19f74d307a89ad446c67071fb9e4cf4944a87a 100644
--- a/core/modules/taxonomy/tests/src/Kernel/Plugin/migrate/source/d7/TermLocalizedTranslationTest.php
+++ b/core/modules/taxonomy/tests/src/Kernel/Plugin/migrate/source/d7/TermLocalizedTranslationTest.php
@@ -20,7 +20,7 @@ class TermLocalizedTranslationTest extends TermTest {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     $tests = parent::providerSource();
 
     for ($i = 1; $i < 4; $i++) {
diff --git a/core/modules/taxonomy/tests/src/Kernel/Plugin/migrate/source/d7/TermSourceWithVocabularyFilterTest.php b/core/modules/taxonomy/tests/src/Kernel/Plugin/migrate/source/d7/TermSourceWithVocabularyFilterTest.php
index 274d586d741961ec1451da80a86b88897d1f932e..13b078f2be88263d28744ba8f6dd4869963cc60c 100644
--- a/core/modules/taxonomy/tests/src/Kernel/Plugin/migrate/source/d7/TermSourceWithVocabularyFilterTest.php
+++ b/core/modules/taxonomy/tests/src/Kernel/Plugin/migrate/source/d7/TermSourceWithVocabularyFilterTest.php
@@ -18,7 +18,7 @@ class TermSourceWithVocabularyFilterTest extends TermTest {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     // Get the source data from parent.
     $tests = parent::providerSource();
 
diff --git a/core/modules/taxonomy/tests/src/Kernel/Plugin/migrate/source/d7/TermTest.php b/core/modules/taxonomy/tests/src/Kernel/Plugin/migrate/source/d7/TermTest.php
index 8ee71dfcc218e2832a20cc76237500d065770a66..072911b70c1627a5c2b6cdc08d9601040519df3d 100644
--- a/core/modules/taxonomy/tests/src/Kernel/Plugin/migrate/source/d7/TermTest.php
+++ b/core/modules/taxonomy/tests/src/Kernel/Plugin/migrate/source/d7/TermTest.php
@@ -20,7 +20,7 @@ class TermTest extends MigrateSqlSourceTestBase {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     $tests = [];
 
     // The source data.
diff --git a/core/modules/taxonomy/tests/src/Kernel/Plugin/migrate/source/d7/TermTranslationTest.php b/core/modules/taxonomy/tests/src/Kernel/Plugin/migrate/source/d7/TermTranslationTest.php
index 9e37649da850adaf265f122c75de5eb9bcb52bce..36baca6101f9ce9834af29d494565c8cd7e94ecb 100644
--- a/core/modules/taxonomy/tests/src/Kernel/Plugin/migrate/source/d7/TermTranslationTest.php
+++ b/core/modules/taxonomy/tests/src/Kernel/Plugin/migrate/source/d7/TermTranslationTest.php
@@ -20,7 +20,7 @@ class TermTranslationTest extends TermTest {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     $tests = [];
 
     // Ignore i18_modes 0 and 1, get i18n_mode 4.
diff --git a/core/modules/taxonomy/tests/src/Kernel/Plugin/migrate/source/d7/VocabularyTest.php b/core/modules/taxonomy/tests/src/Kernel/Plugin/migrate/source/d7/VocabularyTest.php
index fb78c547d738ac2a93992303ad9fc8db4d421cfc..9b38b782ee88eb6c7b4f54a41fe945709c2e5c20 100644
--- a/core/modules/taxonomy/tests/src/Kernel/Plugin/migrate/source/d7/VocabularyTest.php
+++ b/core/modules/taxonomy/tests/src/Kernel/Plugin/migrate/source/d7/VocabularyTest.php
@@ -20,7 +20,7 @@ class VocabularyTest extends MigrateSqlSourceTestBase {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     $tests = [];
 
     // The source data.
diff --git a/core/modules/taxonomy/tests/src/Kernel/Plugin/migrate/source/d7/VocabularyTranslationTest.php b/core/modules/taxonomy/tests/src/Kernel/Plugin/migrate/source/d7/VocabularyTranslationTest.php
index f013a59c034c344b9d77edd7a26c313a0ccc8e78..9604cad26e856aefa01d7de1e532ef4e18d1f20f 100644
--- a/core/modules/taxonomy/tests/src/Kernel/Plugin/migrate/source/d7/VocabularyTranslationTest.php
+++ b/core/modules/taxonomy/tests/src/Kernel/Plugin/migrate/source/d7/VocabularyTranslationTest.php
@@ -22,7 +22,7 @@ class VocabularyTranslationTest extends MigrateSqlSourceTestBase {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     $tests = [];
 
     // The source data.
diff --git a/core/modules/taxonomy/tests/src/Unit/Menu/TaxonomyLocalTasksTest.php b/core/modules/taxonomy/tests/src/Unit/Menu/TaxonomyLocalTasksTest.php
index 7635b266d78f20cfbe746dc19c512cb33e232cc8..dc6799c960aae890e1e18aa13f1209767481b4cb 100644
--- a/core/modules/taxonomy/tests/src/Unit/Menu/TaxonomyLocalTasksTest.php
+++ b/core/modules/taxonomy/tests/src/Unit/Menu/TaxonomyLocalTasksTest.php
@@ -39,7 +39,7 @@ public function testTaxonomyPageLocalTasks($route, $subtask = []) {
   /**
    * Provides a list of routes to test.
    */
-  public function getTaxonomyPageRoutes() {
+  public static function getTaxonomyPageRoutes() {
     return [
       ['entity.taxonomy_term.canonical'],
       ['entity.taxonomy_term.edit_form'],
diff --git a/core/modules/telephone/tests/src/Functional/TelephoneFieldTest.php b/core/modules/telephone/tests/src/Functional/TelephoneFieldTest.php
index 6ef20bc9f062e06f25ae45ee49e84e1a24370a47..3bc8400195e092ec8792f6428d8c493863f642a2 100644
--- a/core/modules/telephone/tests/src/Functional/TelephoneFieldTest.php
+++ b/core/modules/telephone/tests/src/Functional/TelephoneFieldTest.php
@@ -117,7 +117,7 @@ public function testTelephoneFormatter($input, $expected) {
   /**
    * Provides the phone numbers to check and expected results.
    */
-  public function providerPhoneNumbers() {
+  public static function providerPhoneNumbers() {
     return [
       'standard phone number' => ['123456789', '123456789'],
       'whitespace is removed' => ['1234 56789', '123456789'],
diff --git a/core/modules/text/tests/src/Kernel/TextItemBaseTest.php b/core/modules/text/tests/src/Kernel/TextItemBaseTest.php
index d3c17673e0ca7d9cdef335e00b514e4d1819ac46..676e9c5d39595ef46d97f5c615064b6d92eda27f 100644
--- a/core/modules/text/tests/src/Kernel/TextItemBaseTest.php
+++ b/core/modules/text/tests/src/Kernel/TextItemBaseTest.php
@@ -44,7 +44,7 @@ public function testTextFieldSampleValue($max_length) {
   /**
    * Data provider for testTextFieldSampleValue.
    */
-  public function providerTextFieldSampleValue() {
+  public static function providerTextFieldSampleValue() {
     return [
       [
         1,
diff --git a/core/modules/text/tests/src/Unit/Plugin/migrate/field/d6/TextFieldTest.php b/core/modules/text/tests/src/Unit/Plugin/migrate/field/d6/TextFieldTest.php
index 2787a99d132e9f9c2be2cf048267a47874005559..644e4d4457f1c6f6754090e432a13d86342e8126 100644
--- a/core/modules/text/tests/src/Unit/Plugin/migrate/field/d6/TextFieldTest.php
+++ b/core/modules/text/tests/src/Unit/Plugin/migrate/field/d6/TextFieldTest.php
@@ -126,7 +126,7 @@ public function testBooleanTextExplicitValueProcessPipeline() {
   /**
    * Data provider for testGetFieldType().
    */
-  public function getFieldTypeProvider() {
+  public static function getFieldTypeProvider() {
     return [
       ['string_long', 'text_textfield', ['text_processing' => FALSE]],
       ['string', 'text_textfield', [
diff --git a/core/modules/text/tests/src/Unit/Plugin/migrate/field/d7/TextFieldTest.php b/core/modules/text/tests/src/Unit/Plugin/migrate/field/d7/TextFieldTest.php
index 0bae0bec644581c8c684db96ad330a787689d6f2..78cb15b86ffe3de19c2e08b7e3d50815b5bdc16e 100644
--- a/core/modules/text/tests/src/Unit/Plugin/migrate/field/d7/TextFieldTest.php
+++ b/core/modules/text/tests/src/Unit/Plugin/migrate/field/d7/TextFieldTest.php
@@ -31,7 +31,7 @@ protected function setUp(): void {
   /**
    * Data provider for testGetFieldFormatterType().
    */
-  public function getFieldFormatterTypeProvider() {
+  public static function getFieldFormatterTypeProvider() {
     return [
       ['text', 'text_plain', 'string'],
       ['text_long', 'text_default', 'basic_string'],
diff --git a/core/modules/toolbar/tests/src/Unit/PageCache/AllowToolbarPathTest.php b/core/modules/toolbar/tests/src/Unit/PageCache/AllowToolbarPathTest.php
index a11a1bd66adac641941301aa3eae6d7cfc3fddf4..0b91bc2be860a2b40930520a81a20ce2ba6bdd88 100644
--- a/core/modules/toolbar/tests/src/Unit/PageCache/AllowToolbarPathTest.php
+++ b/core/modules/toolbar/tests/src/Unit/PageCache/AllowToolbarPathTest.php
@@ -49,7 +49,7 @@ public function testAllowToolbarPath($expected_result, $path) {
    * @return array
    *   Data and expected results.
    */
-  public function providerTestAllowToolbarPath() {
+  public static function providerTestAllowToolbarPath() {
     return [
       [NULL, '/'],
       [NULL, '/other-path?q=/toolbar/subtrees/'],
diff --git a/core/modules/tour/tests/src/Unit/Entity/TourTest.php b/core/modules/tour/tests/src/Unit/Entity/TourTest.php
index ff398e28670b06eb01df63d2e3b4aabfa4503022..7644ddabf097febd75c51d679339eeb69ec46c77 100644
--- a/core/modules/tour/tests/src/Unit/Entity/TourTest.php
+++ b/core/modules/tour/tests/src/Unit/Entity/TourTest.php
@@ -46,7 +46,7 @@ public function testHasMatchingRoute($routes, $route_name, $route_params, $resul
   /**
    * Provides sample routes for testing.
    */
-  public function routeProvider() {
+  public static function routeProvider() {
     return [
       // Simple match.
       [
diff --git a/core/modules/tracker/tests/src/Kernel/Plugin/migrate/source/d7/TrackerNodeTest.php b/core/modules/tracker/tests/src/Kernel/Plugin/migrate/source/d7/TrackerNodeTest.php
index 3762d9d125d492f4e978a52aa1f8b8e2a6a4b753..cde23b60e7eb9766f0d070a7c0331126feab7e7f 100644
--- a/core/modules/tracker/tests/src/Kernel/Plugin/migrate/source/d7/TrackerNodeTest.php
+++ b/core/modules/tracker/tests/src/Kernel/Plugin/migrate/source/d7/TrackerNodeTest.php
@@ -22,7 +22,7 @@ class TrackerNodeTest extends MigrateSqlSourceTestBase {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     $tests = [];
 
     // The source data.
diff --git a/core/modules/tracker/tests/src/Kernel/Plugin/migrate/source/d7/TrackerUserTest.php b/core/modules/tracker/tests/src/Kernel/Plugin/migrate/source/d7/TrackerUserTest.php
index acef8b98cf4e3eafa3eec6b3aa7c4e0f337dbeb2..02f5e81c76b9f41bf9197f33d12d52e292d40da0 100644
--- a/core/modules/tracker/tests/src/Kernel/Plugin/migrate/source/d7/TrackerUserTest.php
+++ b/core/modules/tracker/tests/src/Kernel/Plugin/migrate/source/d7/TrackerUserTest.php
@@ -22,7 +22,7 @@ class TrackerUserTest extends MigrateSqlSourceTestBase {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     $tests = [];
 
     // The source data.
diff --git a/core/modules/update/tests/src/Functional/FileTransferAuthorizeFormTest.php b/core/modules/update/tests/src/Functional/FileTransferAuthorizeFormTest.php
index 3da6d527fb4138ef01fee53e8f5bd093c5de681b..88ce412ea8d2a7b63ab3ec5a04423d0b79570269 100644
--- a/core/modules/update/tests/src/Functional/FileTransferAuthorizeFormTest.php
+++ b/core/modules/update/tests/src/Functional/FileTransferAuthorizeFormTest.php
@@ -78,7 +78,7 @@ public function testViaAuthorize($url) {
    *
    * Each of these release URLs has been cached in the setUp() method.
    */
-  public function archiveFileUrlProvider() {
+  public static function archiveFileUrlProvider() {
     return [
       'tar.gz' => [
         'url' => 'https://ftp.drupal.org/files/projects/update_test_new_module.tar.gz',
diff --git a/core/modules/update/tests/src/Functional/UpdateContribTest.php b/core/modules/update/tests/src/Functional/UpdateContribTest.php
index aa753e74684522d3820e9ff8a90fcaa40b48a3f5..49eac1ca6ae4dfe632b1efad75c1ba24c01c6c12 100644
--- a/core/modules/update/tests/src/Functional/UpdateContribTest.php
+++ b/core/modules/update/tests/src/Functional/UpdateContribTest.php
@@ -643,7 +643,7 @@ public function testSecurityUpdateAvailability($module_version, array $expected_
    *   - 8.x-1.1
    *   - 8.x-1.0
    */
-  public function securityUpdateAvailabilityProvider() {
+  public static function securityUpdateAvailabilityProvider() {
     return [
       // Security releases available for module major release 1.
       // No releases for next major.
diff --git a/core/modules/update/tests/src/Functional/UpdateManagerUpdateTest.php b/core/modules/update/tests/src/Functional/UpdateManagerUpdateTest.php
index f549e284915b2f13a5d7483282c73a0a4605a8c0..fdaf78f85f7a5d0d2215bc029e81df126a497f9a 100644
--- a/core/modules/update/tests/src/Functional/UpdateManagerUpdateTest.php
+++ b/core/modules/update/tests/src/Functional/UpdateManagerUpdateTest.php
@@ -93,7 +93,7 @@ protected function setUp(): void {
    * @return array[]
    *   Test data.
    */
-  public function incompatibleUpdatesTableProvider() {
+  public static function incompatibleUpdatesTableProvider() {
     return [
       'only one compatible' => [
         'core_fixture' => '1.1-core_compatibility',
diff --git a/core/modules/update/tests/src/Functional/UpdateSemverCoreSecurityCoverageTest.php b/core/modules/update/tests/src/Functional/UpdateSemverCoreSecurityCoverageTest.php
index 4b35c749904f304688f5145d29b5521c67226a51..70530d56feff21c33bc59d365d79b711a8dbe6ef 100644
--- a/core/modules/update/tests/src/Functional/UpdateSemverCoreSecurityCoverageTest.php
+++ b/core/modules/update/tests/src/Functional/UpdateSemverCoreSecurityCoverageTest.php
@@ -74,7 +74,7 @@ public function testSecurityCoverageMessage($installed_version, $fixture, $requi
    *   - 10.4.0
    *   - 10.5.0
    */
-  public function securityCoverageMessageProvider() {
+  public static function securityCoverageMessageProvider() {
     $release_coverage_message = 'Visit the release cycle overview for more information on supported releases.';
     $coverage_ended_message = 'Coverage has ended';
     $update_asap_message = 'Update to a supported minor as soon as possible to continue receiving security updates.';
diff --git a/core/modules/update/tests/src/Kernel/UpdateReportTest.php b/core/modules/update/tests/src/Kernel/UpdateReportTest.php
index 2a8ec0361ffa1ef435751cad8b458ebe0c51857b..3a6482829188bea67162afff5d2f2d2b63f9eb25 100644
--- a/core/modules/update/tests/src/Kernel/UpdateReportTest.php
+++ b/core/modules/update/tests/src/Kernel/UpdateReportTest.php
@@ -45,7 +45,7 @@ public function testTemplatePreprocessUpdateReport($variables) {
    * @return array
    *   Array of $variables for template_preprocess_update_report().
    */
-  public function providerTemplatePreprocessUpdateReport() {
+  public static function providerTemplatePreprocessUpdateReport() {
     return [
       '$variables with data not set' => [
         [],
diff --git a/core/modules/update/tests/src/Unit/Menu/UpdateLocalTasksTest.php b/core/modules/update/tests/src/Unit/Menu/UpdateLocalTasksTest.php
index a62714e70d03c17225103ac0838f7f4623184fd3..41a6da04403c616f2129e22f406adbf59db2ffd3 100644
--- a/core/modules/update/tests/src/Unit/Menu/UpdateLocalTasksTest.php
+++ b/core/modules/update/tests/src/Unit/Menu/UpdateLocalTasksTest.php
@@ -35,7 +35,7 @@ public function testUpdateReportLocalTasks($route) {
   /**
    * Provides a list of report routes to test.
    */
-  public function getUpdateReportRoutes() {
+  public static function getUpdateReportRoutes() {
     return [
       ['update.status'],
       ['update.settings'],
@@ -57,7 +57,7 @@ public function testUpdateModuleLocalTasks($route) {
   /**
    * Provides a list of module routes to test.
    */
-  public function getUpdateModuleRoutes() {
+  public static function getUpdateModuleRoutes() {
     return [
       ['update.module_update'],
     ];
@@ -77,7 +77,7 @@ public function testUpdateThemeLocalTasks($route) {
   /**
    * Provides a list of theme routes to test.
    */
-  public function getUpdateThemeRoutes() {
+  public static function getUpdateThemeRoutes() {
     return [
       ['update.theme_update'],
     ];
diff --git a/core/modules/update/tests/src/Unit/ProjectCoreCompatibilityTest.php b/core/modules/update/tests/src/Unit/ProjectCoreCompatibilityTest.php
index 1b68ef27d41b61a64f4883bfb9f8ab2cd25ad49b..661d2742e23d9f8db321465326fc9046ee23cdf9 100644
--- a/core/modules/update/tests/src/Unit/ProjectCoreCompatibilityTest.php
+++ b/core/modules/update/tests/src/Unit/ProjectCoreCompatibilityTest.php
@@ -29,7 +29,7 @@ public function testSetProjectCoreCompatibilityRanges(array $project_data, $core
   /**
    * Data provider for testSetProjectCoreCompatibilityRanges().
    */
-  public function providerSetProjectCoreCompatibilityRanges() {
+  public static function providerSetProjectCoreCompatibilityRanges() {
     $test_cases['no 9 releases'] = [
       'project_data' => [
         'recommended' => '1.0.1',
diff --git a/core/modules/update/tests/src/Unit/ProjectReleaseTest.php b/core/modules/update/tests/src/Unit/ProjectReleaseTest.php
index ebd538338b75537f68d58de142aa0fa3acbfaa17..cfc595a6fc561ab0425ac3bf970cdc46568586ab 100644
--- a/core/modules/update/tests/src/Unit/ProjectReleaseTest.php
+++ b/core/modules/update/tests/src/Unit/ProjectReleaseTest.php
@@ -63,7 +63,7 @@ public function testCreateFromArray(array $data, array $expected = []): void {
    * @return mixed
    *   Test cases for testCreateFromArray().
    */
-  public function providerCreateFromArray(): array {
+  public static function providerCreateFromArray(): array {
     return [
       'default valid' => [
         'data' => [],
@@ -151,7 +151,7 @@ public function testCreateFromArrayMissingField(string $missing_field): void {
   /**
    * Data provider for testCreateFromArrayMissingField().
    */
-  public function providerCreateFromArrayMissingField(): array {
+  public static function providerCreateFromArrayMissingField(): array {
     return [
       'status' => ['status'],
       'version' => ['version'],
@@ -188,7 +188,7 @@ public function testCreateFromArrayInvalidField(string $invalid_field, $invalid_
   /**
    * Data provider for testCreateFromArrayInvalidField().
    */
-  public function providerCreateFromArrayInvalidField(): array {
+  public static function providerCreateFromArrayInvalidField(): array {
     return [
       'status other' => [
         'invalid_field' => 'status',
diff --git a/core/modules/update/tests/src/Unit/UpdateFetcherTest.php b/core/modules/update/tests/src/Unit/UpdateFetcherTest.php
index 26544d929c73bb9351e708dbd2a3a7e090fce21e..725da72fa053781a88c4c232b43491f0ef46ea30 100644
--- a/core/modules/update/tests/src/Unit/UpdateFetcherTest.php
+++ b/core/modules/update/tests/src/Unit/UpdateFetcherTest.php
@@ -117,7 +117,7 @@ public function testUpdateBuildFetchUrl(array $project, $site_key, $expected) {
    *   - 'site_key' - An arbitrary site key.
    *   - 'expected' - The expected URL from UpdateFetcher::buildFetchUrl().
    */
-  public function providerTestUpdateBuildFetchUrl() {
+  public static function providerTestUpdateBuildFetchUrl() {
     $data = [];
 
     // First test that we didn't break the trivial case.
diff --git a/core/modules/update/tests/src/Unit/UpdateMailTest.php b/core/modules/update/tests/src/Unit/UpdateMailTest.php
index cba4fbb1ffaf7f570854399d3665f54bfb194aba..b79df48c95008d928ebeb84fcc2af8b433839796 100644
--- a/core/modules/update/tests/src/Unit/UpdateMailTest.php
+++ b/core/modules/update/tests/src/Unit/UpdateMailTest.php
@@ -181,7 +181,7 @@ public function testUpdateEmail($notification_threshold, $params, $authorized, a
    *   - TRUE if the user is authorized.
    *   - An array of message body strings.
    */
-  public function providerTestUpdateEmail(): array {
+  public static function providerTestUpdateEmail(): array {
     return [
       'all' => [
         'all',
diff --git a/core/modules/user/tests/src/Functional/UserPasswordResetTest.php b/core/modules/user/tests/src/Functional/UserPasswordResetTest.php
index 442a0cb8c6dab138f9d772556b8d1fbf70290920..edc7308dfe949bdfbab90b8216ca061cd293cb34 100644
--- a/core/modules/user/tests/src/Functional/UserPasswordResetTest.php
+++ b/core/modules/user/tests/src/Functional/UserPasswordResetTest.php
@@ -279,7 +279,7 @@ public function testUserPasswordResetPreferredLanguage($setPreferredLangcode, $a
    *
    * @return array
    */
-  public function languagePrefixTestProvider() {
+  public static function languagePrefixTestProvider() {
     return [
       'Test language prefix set as \'\', visiting default with preferred language as en' => [
         'setPreferredLangcode' => 'en',
diff --git a/core/modules/user/tests/src/Kernel/Migrate/d6/MigrateUserRoleTest.php b/core/modules/user/tests/src/Kernel/Migrate/d6/MigrateUserRoleTest.php
index b71277ba8227b9bab9f4e82cab42f9b3dca2af80..87df992528dd00870089514d992b61763e680cd3 100644
--- a/core/modules/user/tests/src/Kernel/Migrate/d6/MigrateUserRoleTest.php
+++ b/core/modules/user/tests/src/Kernel/Migrate/d6/MigrateUserRoleTest.php
@@ -100,7 +100,7 @@ protected function assertRoles(array $permissions, MigrateIdMapInterface $id_map
   /**
    * Data provider for user role migration tests.
    */
-  public function providerTestUserRole() {
+  public static function providerTestUserRole() {
     return [
       'filter only' => [
         'modules' => [],
diff --git a/core/modules/user/tests/src/Kernel/Plugin/migrate/source/ProfileFieldTest.php b/core/modules/user/tests/src/Kernel/Plugin/migrate/source/ProfileFieldTest.php
index 9dc0c72ea30041201bd52e58dccd2bce3b9294ae..977b2ebcacfbfeebf138e4b9430aa11c947b98f4 100644
--- a/core/modules/user/tests/src/Kernel/Plugin/migrate/source/ProfileFieldTest.php
+++ b/core/modules/user/tests/src/Kernel/Plugin/migrate/source/ProfileFieldTest.php
@@ -20,7 +20,7 @@ class ProfileFieldTest extends MigrateSqlSourceTestBase {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     $tests = [
       [
         'source_data' => [],
diff --git a/core/modules/user/tests/src/Kernel/Plugin/migrate/source/UserPictureInstanceTest.php b/core/modules/user/tests/src/Kernel/Plugin/migrate/source/UserPictureInstanceTest.php
index a87ede1f7ad3c7135eaef5b24187045f491c7575..1c175c1763c02073bc2498ab830af1f11fca1dff 100644
--- a/core/modules/user/tests/src/Kernel/Plugin/migrate/source/UserPictureInstanceTest.php
+++ b/core/modules/user/tests/src/Kernel/Plugin/migrate/source/UserPictureInstanceTest.php
@@ -20,7 +20,7 @@ class UserPictureInstanceTest extends MigrateSqlSourceTestBase {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     $tests = [];
 
     // The source data.
diff --git a/core/modules/user/tests/src/Kernel/Plugin/migrate/source/d6/ProfileFieldOptionTranslationTest.php b/core/modules/user/tests/src/Kernel/Plugin/migrate/source/d6/ProfileFieldOptionTranslationTest.php
index ea73ea88966bedf40c4a10af0f22bf4a06368252..da3780faed05f8db5366a8fe851a149f06984be2 100644
--- a/core/modules/user/tests/src/Kernel/Plugin/migrate/source/d6/ProfileFieldOptionTranslationTest.php
+++ b/core/modules/user/tests/src/Kernel/Plugin/migrate/source/d6/ProfileFieldOptionTranslationTest.php
@@ -22,7 +22,7 @@ class ProfileFieldOptionTranslationTest extends ProfileFieldTest {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
 
     $test = parent::providerSource();
     // The source data.
diff --git a/core/modules/user/tests/src/Kernel/Plugin/migrate/source/d6/ProfileFieldValuesTest.php b/core/modules/user/tests/src/Kernel/Plugin/migrate/source/d6/ProfileFieldValuesTest.php
index 872a186efbb06d171322e0126c3aaac0e95e23b8..58e0716bbb136a988fd19cde63657fac80de3572 100644
--- a/core/modules/user/tests/src/Kernel/Plugin/migrate/source/d6/ProfileFieldValuesTest.php
+++ b/core/modules/user/tests/src/Kernel/Plugin/migrate/source/d6/ProfileFieldValuesTest.php
@@ -20,7 +20,7 @@ class ProfileFieldValuesTest extends MigrateSqlSourceTestBase {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     $tests = [];
 
     // The source data.
diff --git a/core/modules/user/tests/src/Kernel/Plugin/migrate/source/d6/RoleTest.php b/core/modules/user/tests/src/Kernel/Plugin/migrate/source/d6/RoleTest.php
index d37659b4f8b6597d5c63fc68f99a0962f307564a..0fd5c51fa4907fa59b930a43fb83bb8f6eee5d67 100644
--- a/core/modules/user/tests/src/Kernel/Plugin/migrate/source/d6/RoleTest.php
+++ b/core/modules/user/tests/src/Kernel/Plugin/migrate/source/d6/RoleTest.php
@@ -20,7 +20,7 @@ class RoleTest extends MigrateSqlSourceTestBase {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     $tests = [
       [
         'source_data' => [],
diff --git a/core/modules/user/tests/src/Kernel/Plugin/migrate/source/d6/UserPictureFileTest.php b/core/modules/user/tests/src/Kernel/Plugin/migrate/source/d6/UserPictureFileTest.php
index 4875f84885cc6ed4a74b00422d9adceb07cbb540..47902d5bbfe37921cc1edbb84cdaf3c47b52ddd8 100644
--- a/core/modules/user/tests/src/Kernel/Plugin/migrate/source/d6/UserPictureFileTest.php
+++ b/core/modules/user/tests/src/Kernel/Plugin/migrate/source/d6/UserPictureFileTest.php
@@ -20,7 +20,7 @@ class UserPictureFileTest extends MigrateSqlSourceTestBase {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     $tests = [];
 
     // The source data.
diff --git a/core/modules/user/tests/src/Kernel/Plugin/migrate/source/d6/UserPictureTest.php b/core/modules/user/tests/src/Kernel/Plugin/migrate/source/d6/UserPictureTest.php
index 2eb61d84c1e16c3a6e80906384fef79432b8d03f..9ba7539f849b07512e54879d0a6181a5b3827199 100644
--- a/core/modules/user/tests/src/Kernel/Plugin/migrate/source/d6/UserPictureTest.php
+++ b/core/modules/user/tests/src/Kernel/Plugin/migrate/source/d6/UserPictureTest.php
@@ -20,7 +20,7 @@ class UserPictureTest extends MigrateSqlSourceTestBase {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     $tests = [];
 
     // The source data.
diff --git a/core/modules/user/tests/src/Kernel/Plugin/migrate/source/d6/UserTest.php b/core/modules/user/tests/src/Kernel/Plugin/migrate/source/d6/UserTest.php
index 19f85be63a8ce22499a2db6a9ae73ec454618801..e15303ffff47e846815aeda309c5b698ccbdc4d6 100644
--- a/core/modules/user/tests/src/Kernel/Plugin/migrate/source/d6/UserTest.php
+++ b/core/modules/user/tests/src/Kernel/Plugin/migrate/source/d6/UserTest.php
@@ -20,7 +20,7 @@ class UserTest extends MigrateSqlSourceTestBase {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     $tests = [];
 
     // The source data.
diff --git a/core/modules/user/tests/src/Kernel/Plugin/migrate/source/d7/RoleTest.php b/core/modules/user/tests/src/Kernel/Plugin/migrate/source/d7/RoleTest.php
index 885894c780903704ee1d43a35343cbeb8df78b55..947ffcac47109364984fdb34537bcfdc2d384e1d 100644
--- a/core/modules/user/tests/src/Kernel/Plugin/migrate/source/d7/RoleTest.php
+++ b/core/modules/user/tests/src/Kernel/Plugin/migrate/source/d7/RoleTest.php
@@ -20,7 +20,7 @@ class RoleTest extends MigrateSqlSourceTestBase {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     $expected = [
       [
         'rid' => 1,
diff --git a/core/modules/user/tests/src/Kernel/Plugin/migrate/source/d7/UserEntityTranslationTest.php b/core/modules/user/tests/src/Kernel/Plugin/migrate/source/d7/UserEntityTranslationTest.php
index d8d5d7224283f6c75f9d659e7584f3d269df5193..00d1c5d4c6762842b004e06412a6333bf86ee17f 100644
--- a/core/modules/user/tests/src/Kernel/Plugin/migrate/source/d7/UserEntityTranslationTest.php
+++ b/core/modules/user/tests/src/Kernel/Plugin/migrate/source/d7/UserEntityTranslationTest.php
@@ -21,7 +21,7 @@ class UserEntityTranslationTest extends MigrateSqlSourceTestBase {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     $tests = [];
 
     // The source data.
diff --git a/core/modules/user/tests/src/Kernel/Plugin/migrate/source/d7/UserTest.php b/core/modules/user/tests/src/Kernel/Plugin/migrate/source/d7/UserTest.php
index 5f8a90a6552747302dee3e0786ff79d38ecbd5c6..968a9e176370d150882c4daea11dae526db0cae8 100644
--- a/core/modules/user/tests/src/Kernel/Plugin/migrate/source/d7/UserTest.php
+++ b/core/modules/user/tests/src/Kernel/Plugin/migrate/source/d7/UserTest.php
@@ -20,7 +20,7 @@ class UserTest extends MigrateSqlSourceTestBase {
   /**
    * {@inheritdoc}
    */
-  public function providerSource() {
+  public static function providerSource() {
     $tests = [];
 
     // The source data.
diff --git a/core/modules/user/tests/src/Kernel/UserMailDefaultsTest.php b/core/modules/user/tests/src/Kernel/UserMailDefaultsTest.php
index 37e788e19e39c920a117b9fa463293a4e0f8c7b6..e3426ea5dc740ca3bd59a798981070e1e481ed80 100644
--- a/core/modules/user/tests/src/Kernel/UserMailDefaultsTest.php
+++ b/core/modules/user/tests/src/Kernel/UserMailDefaultsTest.php
@@ -40,7 +40,7 @@ public function testMailDefaults($key) {
    * @return array
    *   Array of arrays containing the set of user mail configuration keys.
    */
-  public function userMailsProvider() {
+  public static function userMailsProvider() {
     return [
       ['cancel_confirm'],
       ['password_reset'],
diff --git a/core/modules/user/tests/src/Kernel/UserMailNotifyTest.php b/core/modules/user/tests/src/Kernel/UserMailNotifyTest.php
index 28bec8b5b123c14bf095e1f82219f37030127e93..a5b16cd1bb19fb04d1224da3d0189b6bf6427af0 100644
--- a/core/modules/user/tests/src/Kernel/UserMailNotifyTest.php
+++ b/core/modules/user/tests/src/Kernel/UserMailNotifyTest.php
@@ -33,7 +33,7 @@ class UserMailNotifyTest extends EntityKernelTestBase {
    *
    * @return array
    */
-  public function userMailsProvider() {
+  public static function userMailsProvider() {
     return [
       'cancel confirm notification' => [
         'cancel_confirm',
diff --git a/core/modules/user/tests/src/Unit/Form/EntityPermissionsFormTest.php b/core/modules/user/tests/src/Unit/Form/EntityPermissionsFormTest.php
index d0120508d901b64bff706874f33c2ec7f9b44cd7..d8eb84c6aeaadcfcff70861607709d7ef69bd206 100644
--- a/core/modules/user/tests/src/Unit/Form/EntityPermissionsFormTest.php
+++ b/core/modules/user/tests/src/Unit/Form/EntityPermissionsFormTest.php
@@ -100,7 +100,7 @@ public function testPermissionsByProvider(string $dependency_name, bool $found)
    *
    * @return array
    */
-  public function providerTestPermissionsByProvider() {
+  public static function providerTestPermissionsByProvider() {
     return [
       'direct dependency' => ['node.type.article', TRUE],
       'indirect dependency' => ['core.entity_view_display.node.article.full', TRUE],
diff --git a/core/modules/user/tests/src/Unit/Menu/UserLocalTasksTest.php b/core/modules/user/tests/src/Unit/Menu/UserLocalTasksTest.php
index 5a791d66cd586d42edbb8fe8d9e9fc2992a3dde5..f812efce9206e16942de0b3a5fbf10c6c0129f49 100644
--- a/core/modules/user/tests/src/Unit/Menu/UserLocalTasksTest.php
+++ b/core/modules/user/tests/src/Unit/Menu/UserLocalTasksTest.php
@@ -42,7 +42,7 @@ public function testUserAdminLocalTasks($route, $expected) {
   /**
    * Provides a list of routes to test.
    */
-  public function getUserAdminRoutes() {
+  public static function getUserAdminRoutes() {
     return [
       ['entity.user.collection', [['entity.user.collection', 'user.admin_permissions', 'entity.user_role.collection', 'user.role.settings']]],
       ['user.admin_permissions', [['entity.user.collection', 'user.admin_permissions', 'entity.user_role.collection', 'user.role.settings']]],
@@ -66,7 +66,7 @@ public function testUserLoginLocalTasks($route) {
   /**
    * Provides a list of routes to test.
    */
-  public function getUserLoginRoutes() {
+  public static function getUserLoginRoutes() {
     return [
       ['user.login'],
       ['user.register'],
@@ -92,7 +92,7 @@ public function testUserPageLocalTasks($route, $subtask = []) {
   /**
    * Provides a list of routes to test.
    */
-  public function getUserPageRoutes() {
+  public static function getUserPageRoutes() {
     return [
       ['entity.user.canonical'],
       ['entity.user.edit_form'],
diff --git a/core/modules/user/tests/src/Unit/PermissionAccessCheckTest.php b/core/modules/user/tests/src/Unit/PermissionAccessCheckTest.php
index 4ed2bedac1edd9e29362519939b562e7479f1e1f..3c98ff42bd604838ed0a86e6da091b2cee6ea566 100644
--- a/core/modules/user/tests/src/Unit/PermissionAccessCheckTest.php
+++ b/core/modules/user/tests/src/Unit/PermissionAccessCheckTest.php
@@ -53,7 +53,7 @@ protected function setUp(): void {
    *
    * @return array
    */
-  public function providerTestAccess() {
+  public static function providerTestAccess() {
     return [
       [[], FALSE],
       [['_permission' => 'allowed'], TRUE, ['user.permissions']],
diff --git a/core/modules/user/tests/src/Unit/Theme/AdminNegotiatorTest.php b/core/modules/user/tests/src/Unit/Theme/AdminNegotiatorTest.php
index 0ad90dbc4a0ea54a571d34bc9715315daccb69f7..2740acf784e35c6f59a065d0e7eb4d9626ea21e8 100644
--- a/core/modules/user/tests/src/Unit/Theme/AdminNegotiatorTest.php
+++ b/core/modules/user/tests/src/Unit/Theme/AdminNegotiatorTest.php
@@ -35,7 +35,7 @@ public function testDetermineActiveTheme($admin_theme, $expected) {
   /**
    * Provides a list of theme names to test.
    */
-  public function getThemes() {
+  public static function getThemes() {
     return [
       ['claro', 'claro'],
       [NULL, NULL],
diff --git a/core/modules/user/tests/src/Unit/UserAccessControlHandlerTest.php b/core/modules/user/tests/src/Unit/UserAccessControlHandlerTest.php
index 8abe7759a11691d9f62e66cce5a143b4406e2aa4..624da1b23484a96fdc894684325c9ba5a73e842f 100644
--- a/core/modules/user/tests/src/Unit/UserAccessControlHandlerTest.php
+++ b/core/modules/user/tests/src/Unit/UserAccessControlHandlerTest.php
@@ -167,7 +167,7 @@ public function testUserNameAccess($viewer, $target, $view, $edit) {
   /**
    * Provides test data for testUserNameAccess().
    */
-  public function userNameProvider() {
+  public static function userNameProvider() {
     $name_access = [
       // The viewer user is allowed to see user names on all accounts.
       [
@@ -218,7 +218,7 @@ public function testHiddenUserSettings($field, $viewer, $target, $view, $edit) {
   /**
    * Provides test data for testHiddenUserSettings().
    */
-  public function hiddenUserSettingsProvider() {
+  public static function hiddenUserSettingsProvider() {
     $access_info = [];
 
     $fields = [
@@ -285,7 +285,7 @@ public function testAdminFieldAccess($field, $viewer, $target, $view, $edit) {
   /**
    * Provides test data for testAdminFieldAccess().
    */
-  public function adminFieldAccessProvider() {
+  public static function adminFieldAccessProvider() {
     $access_info = [];
 
     $fields = [
@@ -335,7 +335,7 @@ public function testPasswordAccess($viewer, $target, $view, $edit) {
   /**
    * Provides test data for passwordAccessProvider().
    */
-  public function passwordAccessProvider() {
+  public static function passwordAccessProvider() {
     $pass_access = [
       [
         'viewer' => 'viewer',
@@ -380,7 +380,7 @@ public function testCreatedAccess($viewer, $target, $view, $edit) {
   /**
    * Provides test data for testCreatedAccess().
    */
-  public function createdAccessProvider() {
+  public static function createdAccessProvider() {
     $created_access = [
       [
         'viewer' => 'viewer',
@@ -419,7 +419,7 @@ public function testNonExistingFieldAccess($viewer, $target, $view, $edit) {
   /**
    * Provides test data for testNonExistingFieldAccess().
    */
-  public function NonExistingFieldAccessProvider() {
+  public static function NonExistingFieldAccessProvider() {
     $created_access = [
       [
         'viewer' => 'viewer',
diff --git a/core/modules/user/tests/src/Unit/UserAuthTest.php b/core/modules/user/tests/src/Unit/UserAuthTest.php
index e14e40225a37699e1affed91bed5d929246fe3b0..364376aa1257fc742f2067438bfdfe43e31e8081 100644
--- a/core/modules/user/tests/src/Unit/UserAuthTest.php
+++ b/core/modules/user/tests/src/Unit/UserAuthTest.php
@@ -108,7 +108,7 @@ public function testAuthenticateWithMissingCredentials($username, $password) {
    *
    * @return array
    */
-  public function providerTestAuthenticateWithMissingCredentials() {
+  public static function providerTestAuthenticateWithMissingCredentials() {
     return [
       [NULL, NULL],
       [NULL, ''],
diff --git a/core/modules/user/tests/src/Unit/UserNameItemTest.php b/core/modules/user/tests/src/Unit/UserNameItemTest.php
index 0a0a3ce594b3e91f3316af676ea8012dd42e6453..50c09eee683754b25bd047a3e7955147dacdfead 100644
--- a/core/modules/user/tests/src/Unit/UserNameItemTest.php
+++ b/core/modules/user/tests/src/Unit/UserNameItemTest.php
@@ -42,7 +42,7 @@ public function testGenerateSampleValue(int $max_length): void {
    * @return array
    *   Test cases.
    */
-  public function providerMaxLength(): array {
+  public static function providerMaxLength(): array {
     return [
       '32' => [32],
       '255' => [255],
diff --git a/core/modules/views/tests/src/Functional/Plugin/ExposedFormTest.php b/core/modules/views/tests/src/Functional/Plugin/ExposedFormTest.php
index dc5f4fa9ee57f9f16eb3cee9145a0c7fbc6f0b2c..6c9d518dabfd8d6e47d228d0cc1cd3b4cdc9035b 100644
--- a/core/modules/views/tests/src/Functional/Plugin/ExposedFormTest.php
+++ b/core/modules/views/tests/src/Functional/Plugin/ExposedFormTest.php
@@ -322,7 +322,7 @@ public function testExposedBlock($display) {
    * @return array
    *   Array of display names to test.
    */
-  public function providerTestExposedBlock() {
+  public static function providerTestExposedBlock() {
     return [
       'page_display' => ['page_1'],
       'block_display' => ['block_1'],
diff --git a/core/modules/views/tests/src/Kernel/Handler/FieldNumericTest.php b/core/modules/views/tests/src/Kernel/Handler/FieldNumericTest.php
index 747c8d525c5d18f6056ae2b6e903e88745f1e3d6..766d01632cbd2f15ad255eef6547b8a40a02fe26 100644
--- a/core/modules/views/tests/src/Kernel/Handler/FieldNumericTest.php
+++ b/core/modules/views/tests/src/Kernel/Handler/FieldNumericTest.php
@@ -47,7 +47,7 @@ public function testFieldNumeric($field_settings, $values, $expected_values) {
    *   The data set containing field settings, values to set and expected
    *   values.
    */
-  public function providerTestFieldNumeric() {
+  public static function providerTestFieldNumeric() {
     return [
       'no-formatting' => [
         [],
diff --git a/core/modules/views/tests/src/Kernel/Handler/FilterNumericTest.php b/core/modules/views/tests/src/Kernel/Handler/FilterNumericTest.php
index ab7cef8c83903b4177ae7329bdd4d52a1f378400..40e5b908a09781ea393a7d5791a08df7d5144f1e 100644
--- a/core/modules/views/tests/src/Kernel/Handler/FilterNumericTest.php
+++ b/core/modules/views/tests/src/Kernel/Handler/FilterNumericTest.php
@@ -130,7 +130,7 @@ public function testFilterNumericBetween($operator, $min, $max, array $expected_
    *   An array of arrays, each containing the parameters for
    *   self::testFilterNumericBetween().
    */
-  public function providerTestFilterNumericBetween() {
+  public static function providerTestFilterNumericBetween() {
     $all_result = [
       ['name' => 'John', 'age' => 25],
       ['name' => 'George', 'age' => 27],
diff --git a/core/modules/views/tests/src/Kernel/Plugin/StyleGridResponsiveTest.php b/core/modules/views/tests/src/Kernel/Plugin/StyleGridResponsiveTest.php
index 52bd97c0308eee7daf9064b49bbde7af2ed7290e..05a73abfa71876196dedf163674e347f4aa5b68c 100644
--- a/core/modules/views/tests/src/Kernel/Plugin/StyleGridResponsiveTest.php
+++ b/core/modules/views/tests/src/Kernel/Plugin/StyleGridResponsiveTest.php
@@ -68,7 +68,7 @@ public function testResponsiveGrid(array $options, array $expected): void {
    * @return array
    *   Array containing options for the style plugin and expected values.
    */
-  public function providerTestResponsiveGrid() {
+  public static function providerTestResponsiveGrid() {
     return [
       'horizontal' => [
         'settings' => [
diff --git a/core/modules/views/tests/src/Unit/Plugin/area/EntityTest.php b/core/modules/views/tests/src/Unit/Plugin/area/EntityTest.php
index 2379c9567f6a9ca7827352a91d52305f40134b71..c7df3c222b3f96bfd78d0946de830cd56017a932 100644
--- a/core/modules/views/tests/src/Unit/Plugin/area/EntityTest.php
+++ b/core/modules/views/tests/src/Unit/Plugin/area/EntityTest.php
@@ -143,7 +143,7 @@ protected function setupEntityTypeManager() {
    *
    * @return array
    */
-  public function providerTestTokens() {
+  public static function providerTestTokens() {
     return [
       ['{{ raw_arguments.test1 }}', 5],
       ['{{ arguments.test2 }}', 6],
diff --git a/core/modules/views/tests/src/Unit/Plugin/area/ResultTest.php b/core/modules/views/tests/src/Unit/Plugin/area/ResultTest.php
index c8e65c97b1bb29ee4a4221f08a622ac91179add9..c59a2e5a8afa8c819762663bf12bf456ffe2bf65 100644
--- a/core/modules/views/tests/src/Unit/Plugin/area/ResultTest.php
+++ b/core/modules/views/tests/src/Unit/Plugin/area/ResultTest.php
@@ -92,7 +92,7 @@ public function testResultArea($content, $expected, $items_per_page = 0) {
    *
    * @return array
    */
-  public function providerTestResultArea() {
+  public static function providerTestResultArea() {
     return [
       ['@label', 'ResultTest'],
       ['@start', '1'],
diff --git a/core/modules/views/tests/src/Unit/Plugin/argument_default/QueryParameterTest.php b/core/modules/views/tests/src/Unit/Plugin/argument_default/QueryParameterTest.php
index 28f1adc6d2c4094fc378de9afed4a9b49ae1d702..796b4c7b03fe13a0f36c6a142efa182c66957d18 100644
--- a/core/modules/views/tests/src/Unit/Plugin/argument_default/QueryParameterTest.php
+++ b/core/modules/views/tests/src/Unit/Plugin/argument_default/QueryParameterTest.php
@@ -44,7 +44,7 @@ public function testGetArgument($options, Request $request, $expected) {
    *   - second entry: the request object to test with.
    *   - third entry: the expected default argument value.
    */
-  public function providerGetArgument() {
+  public static function providerGetArgument() {
     $data = [];
 
     $data[] = [
diff --git a/core/modules/views/tests/src/Unit/Plugin/field/CounterTest.php b/core/modules/views/tests/src/Unit/Plugin/field/CounterTest.php
index 9e9c39f9376a5333c82d4aec8c45a295af520f70..8efeafb3c078fb48aa916242959af2586e28bb20 100644
--- a/core/modules/views/tests/src/Unit/Plugin/field/CounterTest.php
+++ b/core/modules/views/tests/src/Unit/Plugin/field/CounterTest.php
@@ -100,7 +100,7 @@ protected function setUp(): void {
    * @return array
    *   Returns an array of row index to test.
    */
-  public function providerRowIndexes() {
+  public static function providerRowIndexes() {
     return [
       [0],
       [1],
diff --git a/core/modules/views/tests/src/Unit/Plugin/field/FieldPluginBaseTest.php b/core/modules/views/tests/src/Unit/Plugin/field/FieldPluginBaseTest.php
index a7899a91431e437e57f3fb7fb3ea8adc2c6deccd..a5b7b8b5b41eef8656035fe6d50f2f195f746498 100644
--- a/core/modules/views/tests/src/Unit/Plugin/field/FieldPluginBaseTest.php
+++ b/core/modules/views/tests/src/Unit/Plugin/field/FieldPluginBaseTest.php
@@ -271,7 +271,7 @@ public function testRenderTrimmedWithMoreLinkAndPath($path, $url) {
    * @return array
    *   Test data.
    */
-  public function providerTestRenderTrimmedWithMoreLinkAndPath() {
+  public static function providerTestRenderTrimmedWithMoreLinkAndPath() {
     $data = [];
     // Simple path with default options.
     $data[] = ['test-path', '/test-path'];
@@ -562,7 +562,7 @@ public function testRenderAsLinkWithPathAndTokens($path, $tokens, $link_html) {
    * @return array
    *   Test data.
    */
-  public function providerTestRenderAsLinkWithPathAndTokens() {
+  public static function providerTestRenderAsLinkWithPathAndTokens() {
     $tokens = ['{{ foo }}' => 123];
     $link_html = '<a href="/test-path/123">value</a>';
 
@@ -626,7 +626,7 @@ public function testRenderAsExternalLinkWithPathAndTokens($path, $tokens, $link_
    * @return array
    *   Test data.
    */
-  public function providerTestRenderAsExternalLinkWithPathAndTokens() {
+  public static function providerTestRenderAsExternalLinkWithPathAndTokens() {
     $data = [];
 
     $data[] = ['{{ foo }}', ['{{ foo }}' => 'http://www.example.com'], '<a href="http://www.example.com">value</a>', ['context_path' => 'http://www.example.com']];
@@ -745,7 +745,7 @@ public function testGetRenderTokensWithQuery(array $query_params, array $expecte
    * @return array
    *   Test data.
    */
-  public function providerTestGetRenderTokensWithQuery(): array {
+  public static function providerTestGetRenderTokensWithQuery(): array {
     $data = [];
     // No query parameters.
     $data[] = [
diff --git a/core/modules/views/tests/src/Unit/Plugin/field/FieldTest.php b/core/modules/views/tests/src/Unit/Plugin/field/FieldTest.php
index 999d55fb91d3b2f3672d74e0cfcc654473964662..a6eeea7bdfd0e86d1eb7cbaa9ef2b610e533afdd 100644
--- a/core/modules/views/tests/src/Unit/Plugin/field/FieldTest.php
+++ b/core/modules/views/tests/src/Unit/Plugin/field/FieldTest.php
@@ -639,7 +639,7 @@ public function testPrepareItemsByDelta(array $options, array $expected_values)
   /**
    * Provides test data for testPrepareItemsByDelta().
    */
-  public function providerTestPrepareItemsByDelta() {
+  public static function providerTestPrepareItemsByDelta() {
     $data = [];
 
     // Let's display all values.
@@ -706,7 +706,7 @@ protected function getConfigFieldStorage() {
    *
    * @return array
    */
-  public function providerSortOrders() {
+  public static function providerSortOrders() {
     return [
       ['asc'],
       ['desc'],
diff --git a/core/modules/views/tests/src/Unit/Plugin/filter/FilterPluginBaseTest.php b/core/modules/views/tests/src/Unit/Plugin/filter/FilterPluginBaseTest.php
index 45b1778deaa55313a54cc9fbd547fe5b150dddb5..6ef76466f48df6601be7457f6a0dfd176866fcfd 100644
--- a/core/modules/views/tests/src/Unit/Plugin/filter/FilterPluginBaseTest.php
+++ b/core/modules/views/tests/src/Unit/Plugin/filter/FilterPluginBaseTest.php
@@ -34,7 +34,7 @@ public function testAcceptExposedInput(bool $expected_result, array $options, ar
    * @return array
    *   The data set.
    */
-  public function acceptExposedInputProvider() {
+  public static function acceptExposedInputProvider() {
     return [
       'not-exposed' => [TRUE, ['exposed' => FALSE], []],
       'exposed-no-input' => [TRUE, ['exposed' => TRUE], []],
diff --git a/core/modules/views/tests/src/Unit/Plugin/pager/PagerPluginBaseTest.php b/core/modules/views/tests/src/Unit/Plugin/pager/PagerPluginBaseTest.php
index 053382c8838df4b2c0216132f8f48facfa3e9569..e8906f874fb1a8a5321a24572d5ef718369d3ce5 100644
--- a/core/modules/views/tests/src/Unit/Plugin/pager/PagerPluginBaseTest.php
+++ b/core/modules/views/tests/src/Unit/Plugin/pager/PagerPluginBaseTest.php
@@ -185,7 +185,7 @@ public function testHasMoreRecords($items_per_page, $total_items, $current_page,
    *
    * @see self::testHasMoreRecords
    */
-  public function providerTestHasMoreRecords() {
+  public static function providerTestHasMoreRecords() {
     return [
       // No items per page, so there can't be more available records.
       [0, 0, 0, FALSE],
diff --git a/core/modules/views/tests/src/Unit/Plugin/views/query/MysqlDateSqlTest.php b/core/modules/views/tests/src/Unit/Plugin/views/query/MysqlDateSqlTest.php
index 03f381174b713eeee9479422ad7e6f0115d5c9e0..c797edbd208a7f925cfc71a50792c1455dd12f70 100644
--- a/core/modules/views/tests/src/Unit/Plugin/views/query/MysqlDateSqlTest.php
+++ b/core/modules/views/tests/src/Unit/Plugin/views/query/MysqlDateSqlTest.php
@@ -63,7 +63,7 @@ public function testGetDateFormat($field, $format, $expected_format) {
   /**
    * Provider for date formatting test.
    */
-  public function providerTestGetDateFormat() {
+  public static function providerTestGetDateFormat() {
     return [
       ['foo.field', 'Y-y-M-m', '%Y-%y-%b-%m'],
       ['bar.field', 'n-F D d l', '%c-%M %a %d %W'],
diff --git a/core/modules/views/tests/src/Unit/Plugin/views/query/PostgresqlDateSqlTest.php b/core/modules/views/tests/src/Unit/Plugin/views/query/PostgresqlDateSqlTest.php
index e9379825d5112cf97732e116a5627e95020a8ed7..835882c3692210da2f32f87ec777d60eed47939b 100644
--- a/core/modules/views/tests/src/Unit/Plugin/views/query/PostgresqlDateSqlTest.php
+++ b/core/modules/views/tests/src/Unit/Plugin/views/query/PostgresqlDateSqlTest.php
@@ -63,7 +63,7 @@ public function testGetDateFormat($field, $format, $expected_format) {
   /**
    * Provider for date formatting test.
    */
-  public function providerTestGetDateFormat() {
+  public static function providerTestGetDateFormat() {
     return [
       ['foo.field', 'Y-y-M-m', 'YYYY-YY-Mon-MM'],
       ['bar.field', 'n-F D d l', 'MM-Month Dy DD Day'],
diff --git a/core/modules/views/tests/src/Unit/Plugin/views/query/SqliteDateSqlTest.php b/core/modules/views/tests/src/Unit/Plugin/views/query/SqliteDateSqlTest.php
index b7bc31f0557d884988f4fd3c4f26c693fe876dd0..82fe4d5e0a44456bad8c1dfe0de37c0bb2cab6e0 100644
--- a/core/modules/views/tests/src/Unit/Plugin/views/query/SqliteDateSqlTest.php
+++ b/core/modules/views/tests/src/Unit/Plugin/views/query/SqliteDateSqlTest.php
@@ -65,7 +65,7 @@ public function testGetDateFormat($field, $format, $expected) {
   /**
    * Provider for date formatting test.
    */
-  public function providerTestGetDateFormat() {
+  public static function providerTestGetDateFormat() {
     return [
       ['foo.field', 'Y-y-M-m', "strftime('%Y-%Y-%m-%m', foo.field, 'unixepoch')"],
       ['bar.field', 'n-F D d l', "strftime('%m-%m %d %d %d', bar.field, 'unixepoch')"],
diff --git a/core/modules/views/tests/src/Unit/PluginBaseTest.php b/core/modules/views/tests/src/Unit/PluginBaseTest.php
index e185aa7ca928fde6ddf613127b86c1e2edf7aba3..a7e4a22017aba5ccc1ca6944c9158da00acdd2de 100644
--- a/core/modules/views/tests/src/Unit/PluginBaseTest.php
+++ b/core/modules/views/tests/src/Unit/PluginBaseTest.php
@@ -74,7 +74,7 @@ public function testSetOptionDefault($storage, $definition, $expected) {
    *
    * @return array
    */
-  public function providerTestUnpackOptions() {
+  public static function providerTestUnpackOptions() {
     $test_parameters = [];
     // Set a storage but no value, so the storage value should be kept.
     $test_parameters[] = [
@@ -223,7 +223,7 @@ public function providerTestUnpackOptions() {
    *
    * @return array
    */
-  public function providerTestSetOptionDefault() {
+  public static function providerTestSetOptionDefault() {
     $test_parameters = [];
     // No definition should change anything on the storage.
     $test_parameters[] = [
@@ -289,7 +289,7 @@ public function testFilterByDefinedOptions($storage, $options, $expected_storage
     $this->assertEquals($expected_storage, $storage);
   }
 
-  public function providerTestFilterByDefinedOptions() {
+  public static function providerTestFilterByDefinedOptions() {
     $data = [];
 
     // A simple defined option.
diff --git a/core/modules/views/tests/src/Unit/ViewExecutableTest.php b/core/modules/views/tests/src/Unit/ViewExecutableTest.php
index f8eaaafedb70664b326d62be0551b029de0fd441..8586455d7f7181e6c8c3b3c567f6fa77261553d6 100644
--- a/core/modules/views/tests/src/Unit/ViewExecutableTest.php
+++ b/core/modules/views/tests/src/Unit/ViewExecutableTest.php
@@ -444,7 +444,7 @@ public function testAddHandlerWithEntityField($option, $handler_type) {
    * @return array[]
    *   Test data set.
    */
-  public function addHandlerProvider() {
+  public static function addHandlerProvider() {
     return [
       'field' => ['fields', 'field'],
       'filter' => ['filters', 'filter'],
@@ -519,7 +519,7 @@ public function testAttachDisplays($display_enabled, $access_granted, $expected_
    *   An array of arrays containing the display state, a user's access to the
    *   display and whether it is expected or not that the display gets attached.
    */
-  public function providerAttachDisplays() {
+  public static function providerAttachDisplays() {
     return [
       'enabled-granted' => [static::DISPLAY_ENABLED, static::ACCESS_GRANTED, TRUE],
       'enabled-revoked' => [static::DISPLAY_ENABLED, static::ACCESS_REVOKED, FALSE],
@@ -742,7 +742,7 @@ public function testExecuteReturn($display_enabled, $expected_result) {
    * @return array[]
    *   An array of arrays containing the display state and expected value.
    */
-  public function providerExecuteReturn() {
+  public static function providerExecuteReturn() {
     return [
       'enabled' => [static::DISPLAY_ENABLED, TRUE],
       'disabled' => [static::DISPLAY_DISABLED, FALSE],
diff --git a/core/modules/views/tests/src/Unit/ViewsDataTest.php b/core/modules/views/tests/src/Unit/ViewsDataTest.php
index 49fbbbcc71a0cec5cba18ca4de1c55621dbac847..f3e4e92a3988c4a0be3e68d112e2732740c1930f 100644
--- a/core/modules/views/tests/src/Unit/ViewsDataTest.php
+++ b/core/modules/views/tests/src/Unit/ViewsDataTest.php
@@ -648,7 +648,7 @@ public function testGetEmptyKey($key) {
     $this->viewsData->get($key);
   }
 
-  public function providerTestGetEmptyKey() {
+  public static function providerTestGetEmptyKey() {
     return [
       [NULL],
       [''],
diff --git a/core/modules/views/tests/src/Unit/ViewsTest.php b/core/modules/views/tests/src/Unit/ViewsTest.php
index 5c750c9b0a9ca27761330255005fb213fa988bc1..82e9b0580ea67ece8d535863ac6708311eaedfe0 100644
--- a/core/modules/views/tests/src/Unit/ViewsTest.php
+++ b/core/modules/views/tests/src/Unit/ViewsTest.php
@@ -209,7 +209,7 @@ public function testGetApplicableViews($applicable_type, $expected) {
    *
    * @return array
    */
-  public function providerTestGetApplicableViews() {
+  public static function providerTestGetApplicableViews() {
     return [
       ['type_a', [['test_view_1', 'type_a']]],
       ['type_b', [['test_view_2', 'type_b']]],
diff --git a/core/modules/views/tests/src/Unit/WizardPluginBaseTest.php b/core/modules/views/tests/src/Unit/WizardPluginBaseTest.php
index 97f5dfd0f21ff63476af230fc547cef8975773d3..3c2e84baf0394a8d8555bf9e835765a8b9237bca 100644
--- a/core/modules/views/tests/src/Unit/WizardPluginBaseTest.php
+++ b/core/modules/views/tests/src/Unit/WizardPluginBaseTest.php
@@ -38,7 +38,7 @@ public function testGetSelected($expected, $element = [], $parents = [], $user_i
   /**
    * Provides test data for testGetSelected().
    */
-  public function providerTestGetSelected() {
+  public static function providerTestGetSelected() {
     $data = [];
     // A form element with an invalid #type.
     $data['invalid_type'] = [
diff --git a/core/modules/views_ui/tests/src/Kernel/TagTest.php b/core/modules/views_ui/tests/src/Kernel/TagTest.php
index 3707d21c478e3127b3861b06cb1cf19c6194e1e6..ef10e203e79c2e2c581c4fd1a41c6feff3abc0dc 100644
--- a/core/modules/views_ui/tests/src/Kernel/TagTest.php
+++ b/core/modules/views_ui/tests/src/Kernel/TagTest.php
@@ -100,7 +100,7 @@ public function testViewsUiAutocompleteIndividualTags($expected_tag, $search_str
    * @return array[]
    *   The data set.
    */
-  public function providerViewsUiAutocompleteIndividualTags() {
+  public static function providerViewsUiAutocompleteIndividualTags() {
     return [
       'tag' => ['comma', 'comma'],
       'case insensitive tag' => ['comma', 'COMMA'],
diff --git a/core/modules/workflows/tests/src/Kernel/WorkflowAccessControlHandlerTest.php b/core/modules/workflows/tests/src/Kernel/WorkflowAccessControlHandlerTest.php
index df8496182127c8a5fb98f473bb4358e41fef8e17..6a2f9e3987d024cf77d914b56b142668c6a0690a 100644
--- a/core/modules/workflows/tests/src/Kernel/WorkflowAccessControlHandlerTest.php
+++ b/core/modules/workflows/tests/src/Kernel/WorkflowAccessControlHandlerTest.php
@@ -119,7 +119,7 @@ public function testCheckAccess($user, $operation, $result, $states_to_create =
    *
    * @return array
    */
-  public function checkAccessProvider() {
+  public static function checkAccessProvider() {
     $container = new ContainerBuilder();
     $cache_contexts_manager = (new Prophet())->prophesize(CacheContextsManager::class);
     $cache_contexts_manager->assertValidTokens()->willReturn(TRUE);
diff --git a/core/modules/workflows/tests/src/Unit/WorkflowStateTransitionOperationsAccessCheckTest.php b/core/modules/workflows/tests/src/Unit/WorkflowStateTransitionOperationsAccessCheckTest.php
index ad01d100e8acd1c6c8be303217b8f5d55112edcd..1f7b4ed45177640eb5226f1038d676b789e91057 100644
--- a/core/modules/workflows/tests/src/Unit/WorkflowStateTransitionOperationsAccessCheckTest.php
+++ b/core/modules/workflows/tests/src/Unit/WorkflowStateTransitionOperationsAccessCheckTest.php
@@ -50,7 +50,7 @@ public function testAccess($route_requirement, $resulting_entity_access_check, $
   /**
    * Test cases for ::testAccess.
    */
-  public function accessTestCases() {
+  public static function accessTestCases() {
     return [
       'Transition add' => [
         'add-transition',
@@ -140,7 +140,7 @@ public function testInvalidOperationName($operation_name) {
   /**
    * Test cases for ::testInvalidOperationName.
    */
-  public function invalidOperationNameTestCases() {
+  public static function invalidOperationNameTestCases() {
     return [
       ['invalid-op'],
       ['foo-add-transition'],
diff --git a/core/modules/workspaces/tests/src/Kernel/WorkspaceAccessTest.php b/core/modules/workspaces/tests/src/Kernel/WorkspaceAccessTest.php
index 87d111cd5bc8b223ab3399a6fd2321416378ecdc..b3e86398b58bc9ffff01cdd6b96933ffd07b4ff1 100644
--- a/core/modules/workspaces/tests/src/Kernel/WorkspaceAccessTest.php
+++ b/core/modules/workspaces/tests/src/Kernel/WorkspaceAccessTest.php
@@ -49,7 +49,7 @@ protected function setUp(): void {
    * @return array
    *   An array of operations and permissions to test with.
    */
-  public function operationCases() {
+  public static function operationCases() {
     return [
       ['create', 'administer workspaces'],
       ['create', 'create workspace'],
diff --git a/core/modules/workspaces/tests/src/Kernel/WorkspaceIntegrationTest.php b/core/modules/workspaces/tests/src/Kernel/WorkspaceIntegrationTest.php
index 78702d398c75ff60facc3fb9173eac2efae87e70..01884992fb78b26a23801744477dc1d651c3cd93 100644
--- a/core/modules/workspaces/tests/src/Kernel/WorkspaceIntegrationTest.php
+++ b/core/modules/workspaces/tests/src/Kernel/WorkspaceIntegrationTest.php
@@ -752,7 +752,7 @@ public function testDisallowedEntityDeleteInNonDefaultWorkspace($entity_type_id,
   /**
    * Data provider for allowed entity CRUD operations.
    */
-  public function providerTestAllowedEntityCrudInNonDefaultWorkspace() {
+  public static function providerTestAllowedEntityCrudInNonDefaultWorkspace() {
     return [
       'workspace-provided non-internal entity type' => [
         'entity_type_id' => 'workspace',
diff --git a/core/modules/workspaces/tests/src/Unit/ActiveWorkspaceCheckTest.php b/core/modules/workspaces/tests/src/Unit/ActiveWorkspaceCheckTest.php
index b5093824ca92f65964064e111afe717bd87f6c1d..1105dcfd5773db9a9b5d94fd4f53c53765b51a83 100644
--- a/core/modules/workspaces/tests/src/Unit/ActiveWorkspaceCheckTest.php
+++ b/core/modules/workspaces/tests/src/Unit/ActiveWorkspaceCheckTest.php
@@ -46,7 +46,7 @@ protected function setUp(): void {
    *
    * @return array
    */
-  public function providerTestAccess() {
+  public static function providerTestAccess() {
     return [
       [[], FALSE, FALSE],
       [[], TRUE, FALSE],
diff --git a/core/tests/Drupal/BuildTests/Composer/Component/ComponentsTaggedReleaseTest.php b/core/tests/Drupal/BuildTests/Composer/Component/ComponentsTaggedReleaseTest.php
index ae3a08ec3627ec3f7214f35020712b616a6b8f46..5640ff4dde21a95b7e3f9f401243de2946bfdd6e 100644
--- a/core/tests/Drupal/BuildTests/Composer/Component/ComponentsTaggedReleaseTest.php
+++ b/core/tests/Drupal/BuildTests/Composer/Component/ComponentsTaggedReleaseTest.php
@@ -26,7 +26,7 @@ class ComponentsTaggedReleaseTest extends ComposerBuildTestBase {
    *   - Second element is the resulting constraint which should be present in
    *     the component core dependencies.
    */
-  public function providerVersionConstraint(): array {
+  public static function providerVersionConstraint(): array {
     return [
       // [Tag, constraint]
       '1.0.x-dev' => ['1.0.x-dev', '1.0.x-dev'],
diff --git a/core/tests/Drupal/BuildTests/Composer/Template/ComposerProjectTemplatesTest.php b/core/tests/Drupal/BuildTests/Composer/Template/ComposerProjectTemplatesTest.php
index a3420045751c73f9e493ff9a399e0749bfc63276..cfbd463ddb321f1bb8292f3debb5ea50215ca2fa 100644
--- a/core/tests/Drupal/BuildTests/Composer/Template/ComposerProjectTemplatesTest.php
+++ b/core/tests/Drupal/BuildTests/Composer/Template/ComposerProjectTemplatesTest.php
@@ -67,7 +67,7 @@ public function getPathReposForType($workspace_directory, $subdir) {
     return $data;
   }
 
-  public function provideTemplateCreateProject() {
+  public static function provideTemplateCreateProject() {
     return [
       'recommended-project' => [
         'drupal/recommended-project',
diff --git a/core/tests/Drupal/FunctionalJavascriptTests/Ajax/FormValuesTest.php b/core/tests/Drupal/FunctionalJavascriptTests/Ajax/FormValuesTest.php
index c6996f06d31ed348650d08aed23fbe8e7423fe47..c2a1d3e5a880a0eee6ac20cf6867186a3d171bdd 100644
--- a/core/tests/Drupal/FunctionalJavascriptTests/Ajax/FormValuesTest.php
+++ b/core/tests/Drupal/FunctionalJavascriptTests/Ajax/FormValuesTest.php
@@ -117,7 +117,7 @@ public function testSimpleInvalidCallbacksAjaxFormValue() {
   /**
    * Data provider for testSimpleAjaxFormValue.
    */
-  public function formModeProvider() {
+  public static function formModeProvider() {
     return [
       ['direct'],
       ['dialog'],
diff --git a/core/tests/Drupal/FunctionalJavascriptTests/MachineName/MachineNameTransliterationTest.php b/core/tests/Drupal/FunctionalJavascriptTests/MachineName/MachineNameTransliterationTest.php
index d223feab7b5a8d377314f771068e95794f73f2e6..74546cb8104f63c8ae85376ef36aaf52e63be50e 100644
--- a/core/tests/Drupal/FunctionalJavascriptTests/MachineName/MachineNameTransliterationTest.php
+++ b/core/tests/Drupal/FunctionalJavascriptTests/MachineName/MachineNameTransliterationTest.php
@@ -70,7 +70,7 @@ public function testMachineNameTransliterations($langcode, $input, $output) {
    *
    * @return array
    */
-  public function machineNameInputOutput(): array {
+  public static function machineNameInputOutput(): array {
     return [
       // cSpell:disable
       ['en', 'Bob', 'bob'],
diff --git a/core/tests/Drupal/FunctionalTests/Entity/RevisionDeleteFormTest.php b/core/tests/Drupal/FunctionalTests/Entity/RevisionDeleteFormTest.php
index ff8a8ab18b91b02b04534db875e50b2b78196653..7899ebe05e90666a009956445e7591f04c628b0b 100644
--- a/core/tests/Drupal/FunctionalTests/Entity/RevisionDeleteFormTest.php
+++ b/core/tests/Drupal/FunctionalTests/Entity/RevisionDeleteFormTest.php
@@ -85,7 +85,7 @@ public function testPageTitle(string $entityTypeId, string $expectedQuestion): v
   /**
    * Data provider for testPageTitle.
    */
-  public function providerPageTitle(): array {
+  public static function providerPageTitle(): array {
     return [
       ['entity_test_rev', 'Are you sure you want to delete the revision?'],
       ['entity_test_revlog', 'Are you sure you want to delete the revision from Sun, 01/11/2009 - 16:00?'],
@@ -276,7 +276,7 @@ public function testSubmitForm(array $permissions, string $entityTypeId, string
   /**
    * Data provider for testSubmitForm.
    */
-  public function providerSubmitForm(): array {
+  public static function providerSubmitForm(): array {
     $data = [];
 
     $data['not supporting revision log, one revision remaining after delete, no view access'] = [
diff --git a/core/tests/Drupal/FunctionalTests/Entity/RevisionRevertFormTest.php b/core/tests/Drupal/FunctionalTests/Entity/RevisionRevertFormTest.php
index 1597137797b312c163167aa273a60ab84474c6c0..6c774ae37ab4eb59fc6f00b848d4d1340b0489bc 100644
--- a/core/tests/Drupal/FunctionalTests/Entity/RevisionRevertFormTest.php
+++ b/core/tests/Drupal/FunctionalTests/Entity/RevisionRevertFormTest.php
@@ -86,7 +86,7 @@ public function testPageTitle(string $entityTypeId, string $expectedQuestion): v
   /**
    * Data provider for testPageTitle.
    */
-  public function providerPageTitle(): array {
+  public static function providerPageTitle(): array {
     return [
       ['entity_test_rev', 'Are you sure you want to revert the revision?'],
       ['entity_test_revlog', 'Are you sure you want to revert to the revision from Sun, 01/11/2009 - 16:00?'],
@@ -227,7 +227,7 @@ public function testSubmitForm(array $permissions, string $entityTypeId, string
   /**
    * Data provider for testSubmitForm.
    */
-  public function providerSubmitForm(): array {
+  public static function providerSubmitForm(): array {
     $data = [];
 
     $data['not supporting revision log, no version history access'] = [
diff --git a/core/tests/Drupal/FunctionalTests/Entity/RevisionViewTest.php b/core/tests/Drupal/FunctionalTests/Entity/RevisionViewTest.php
index f728b6c95802243125192fec7b81c72db34fafc6..f2054caf7f16de9a17b6775a03256d21077ab385 100644
--- a/core/tests/Drupal/FunctionalTests/Entity/RevisionViewTest.php
+++ b/core/tests/Drupal/FunctionalTests/Entity/RevisionViewTest.php
@@ -106,7 +106,7 @@ public function testRevisionPage(string $entityTypeId, string $expectedPageTitle
   /**
    * Data provider for testRevisionPage.
    */
-  public function providerRevisionPage(): array {
+  public static function providerRevisionPage(): array {
     return [
       ['entity_test_rev', 'Revision of revision 1, view revision'],
       ['entity_test_revlog', 'Revision of revision 1, view revision from Sun, 01/11/2009 - 16:00'],
diff --git a/core/tests/Drupal/FunctionalTests/Libraries/JqueryUiLibraryAssetsTest.php b/core/tests/Drupal/FunctionalTests/Libraries/JqueryUiLibraryAssetsTest.php
index e9bcedaa2f3ddb1231052751251ec5477c9e18ca..1c144d9173f4788e0bdb5a17d56a6e794dff8dce 100644
--- a/core/tests/Drupal/FunctionalTests/Libraries/JqueryUiLibraryAssetsTest.php
+++ b/core/tests/Drupal/FunctionalTests/Libraries/JqueryUiLibraryAssetsTest.php
@@ -344,7 +344,7 @@ public function testAssetLoadingUnchanged($library, array $expected_css, array $
    *     library prior to the change from jQuery UI library dependencies to
    *     direct file inclusion.
    */
-  public function providerTestAssetLoading() {
+  public static function providerTestAssetLoading() {
     return [
       'drupal.autocomplete' => [
         'library' => 'drupal.autocomplete',
diff --git a/core/tests/Drupal/FunctionalTests/Routing/RouteCachingLanguageTest.php b/core/tests/Drupal/FunctionalTests/Routing/RouteCachingLanguageTest.php
index 242f9e424677b171da09e4218b4660f0fb810d44..e620d5c1f3d66b4991715f728bdd6836c2f967bd 100644
--- a/core/tests/Drupal/FunctionalTests/Routing/RouteCachingLanguageTest.php
+++ b/core/tests/Drupal/FunctionalTests/Routing/RouteCachingLanguageTest.php
@@ -190,7 +190,7 @@ public function testLinkTranslationWithAlias($source_langcode) {
   /**
    * Data provider for testFromUri().
    */
-  public function providerLanguage() {
+  public static function providerLanguage() {
     return [
       ['en'],
       ['fr'],
diff --git a/core/tests/Drupal/KernelTests/Component/Render/FormattableMarkupKernelTest.php b/core/tests/Drupal/KernelTests/Component/Render/FormattableMarkupKernelTest.php
index ae2b16367abe55b43229bd8a938ff17a6026e637..5a33a900b86eacf0c39934df73f0f0243906d2de 100644
--- a/core/tests/Drupal/KernelTests/Component/Render/FormattableMarkupKernelTest.php
+++ b/core/tests/Drupal/KernelTests/Component/Render/FormattableMarkupKernelTest.php
@@ -50,7 +50,7 @@ public function testFormattableMarkupUri($string, $uri, $options, $expected) {
   /**
    * @return array
    */
-  public function providerTestFormattableMarkupUri() {
+  public static function providerTestFormattableMarkupUri() {
     $data = [];
     $data['routed-url'] = [
       'Hey giraffe <a href=":url">MUUUH</a>',
@@ -112,7 +112,7 @@ public function testFormattableMarkupUriWithExceptionUri($string, $uri) {
   /**
    * @return array
    */
-  public function providerTestFormattableMarkupUriWithException() {
+  public static function providerTestFormattableMarkupUriWithException() {
     $data = [];
     $data['js-protocol'] = [
       'Hey giraffe <a href=":url">MUUUH</a>',
diff --git a/core/tests/Drupal/KernelTests/Config/DefaultConfigTest.php b/core/tests/Drupal/KernelTests/Config/DefaultConfigTest.php
index 396623bec75eed4c888970fa359fceca448ce259..07dcf47f9db7b00f8acbad8518fb966c66353090 100644
--- a/core/tests/Drupal/KernelTests/Config/DefaultConfigTest.php
+++ b/core/tests/Drupal/KernelTests/Config/DefaultConfigTest.php
@@ -143,7 +143,7 @@ protected function assertExtensionConfig(string $name, string $type): void {
    *   An array of theme names to test, with both key and value being the name
    *   of the theme.
    */
-  public function themeListDataProvider() {
+  public static function themeListDataProvider() {
     $prefix = dirname(__DIR__, 4) . DIRECTORY_SEPARATOR . 'themes';
     $theme_dirs = array_keys(iterator_to_array(new \FilesystemIterator($prefix)));
     $theme_names = array_map(function ($path) use ($prefix) {
diff --git a/core/tests/Drupal/KernelTests/Config/Schema/MappingTest.php b/core/tests/Drupal/KernelTests/Config/Schema/MappingTest.php
index 0ca7c28c38a3507fbc3ee153c1f85cb02bfa9af3..61d8c31295d213d46e282193ca7d4782d1d68889 100644
--- a/core/tests/Drupal/KernelTests/Config/Schema/MappingTest.php
+++ b/core/tests/Drupal/KernelTests/Config/Schema/MappingTest.php
@@ -175,7 +175,7 @@ public function testMappingInterpretation(
    *
    * @return \Generator
    */
-  public function providerMappingInterpretation(): \Generator {
+  public static function providerMappingInterpretation(): \Generator {
     $available_block_settings_types = [
       'block.settings.field_block:*:*:*' => [
         'formatter',
diff --git a/core/tests/Drupal/KernelTests/Core/Asset/DeprecatedAssetsTest.php b/core/tests/Drupal/KernelTests/Core/Asset/DeprecatedAssetsTest.php
index 6f41b1c9bd5fd6b1552e062ed6824bdc3978820d..bd7f3ac0eeacb096ae8966827f99dee0f465db25 100644
--- a/core/tests/Drupal/KernelTests/Core/Asset/DeprecatedAssetsTest.php
+++ b/core/tests/Drupal/KernelTests/Core/Asset/DeprecatedAssetsTest.php
@@ -57,7 +57,7 @@ public function testDeprecatedLibraries(string $extension, string $name, string
    * @return array
    *   See description above.
    */
-  public function deprecatedLibrariesProvider(): array {
+  public static function deprecatedLibrariesProvider(): array {
     return [
       'Tests deprecation of library core/js-cookie' => [
         'core',
diff --git a/core/tests/Drupal/KernelTests/Core/Config/ConfigDependencyTest.php b/core/tests/Drupal/KernelTests/Core/Config/ConfigDependencyTest.php
index a2ad515b7c510a577aa799e7c840ad69e78d80f3..352f9b9f746496ca10d8faceb8aaab612f4e4d0e 100644
--- a/core/tests/Drupal/KernelTests/Core/Config/ConfigDependencyTest.php
+++ b/core/tests/Drupal/KernelTests/Core/Config/ConfigDependencyTest.php
@@ -227,7 +227,7 @@ public function testConfigEntityUninstall() {
   /**
    * Data provider for self::testConfigEntityUninstallComplex().
    */
-  public function providerConfigEntityUninstallComplex() {
+  public static function providerConfigEntityUninstallComplex() {
     // Ensure that alphabetical order has no influence on dependency fixing and
     // removal.
     return [
diff --git a/core/tests/Drupal/KernelTests/Core/Config/ConfigEntityValidationTestBase.php b/core/tests/Drupal/KernelTests/Core/Config/ConfigEntityValidationTestBase.php
index 8b48cdd6ee231f99628e400250254b2685a9fa4f..30ed78fd7e1715089e82f36d1f43b15900c8084b 100644
--- a/core/tests/Drupal/KernelTests/Core/Config/ConfigEntityValidationTestBase.php
+++ b/core/tests/Drupal/KernelTests/Core/Config/ConfigEntityValidationTestBase.php
@@ -201,7 +201,7 @@ public function testMachineNameLength(): void {
    * @return array[]
    *   The test cases.
    */
-  public function providerConfigDependenciesValidation(): array {
+  public static function providerConfigDependenciesValidation(): array {
     return [
       'valid dependency types' => [
         [
diff --git a/core/tests/Drupal/KernelTests/Core/Config/SchemaCheckTraitTest.php b/core/tests/Drupal/KernelTests/Core/Config/SchemaCheckTraitTest.php
index de38eaaa6ea53ea435518c1fabdde52ddc6b0193..aa5149e494b8527da654f6677b0b2b2ab9d3c5e0 100644
--- a/core/tests/Drupal/KernelTests/Core/Config/SchemaCheckTraitTest.php
+++ b/core/tests/Drupal/KernelTests/Core/Config/SchemaCheckTraitTest.php
@@ -72,7 +72,7 @@ public function testCheckConfigSchema(string $type_to_validate_against, bool $va
     $this->assertEquals($no_data_expectations, $ret);
   }
 
-  public function providerCheckConfigSchema(): array {
+  public static function providerCheckConfigSchema(): array {
     // Storage type check errors.
     // @see \Drupal\Core\Config\Schema\SchemaCheckTrait::checkValue()
     $expected_storage_null_check_errors = [
diff --git a/core/tests/Drupal/KernelTests/Core/Config/SimpleConfigValidationTest.php b/core/tests/Drupal/KernelTests/Core/Config/SimpleConfigValidationTest.php
index 5da73d743391320ab0ebaa3705e94fb87f3e5b71..f714ab65f707065b80132880ab698a411457c441 100644
--- a/core/tests/Drupal/KernelTests/Core/Config/SimpleConfigValidationTest.php
+++ b/core/tests/Drupal/KernelTests/Core/Config/SimpleConfigValidationTest.php
@@ -78,7 +78,7 @@ public function testDefaultConfigHashValidation(): void {
    * @return array[]
    *   The test cases.
    */
-  public function providerSpecialCharacters(): array {
+  public static function providerSpecialCharacters(): array {
     $data = [];
 
     for ($code_point = 0; $code_point < 32; $code_point++) {
diff --git a/core/tests/Drupal/KernelTests/Core/Config/Storage/StorageReplaceDataWrapperTest.php b/core/tests/Drupal/KernelTests/Core/Config/Storage/StorageReplaceDataWrapperTest.php
index 98bd908f09799ac4c2bb81a7e3981a6d6f55417b..a4e6cd2fd9d3179d4a67720778b65bbab0b2e283 100644
--- a/core/tests/Drupal/KernelTests/Core/Config/Storage/StorageReplaceDataWrapperTest.php
+++ b/core/tests/Drupal/KernelTests/Core/Config/Storage/StorageReplaceDataWrapperTest.php
@@ -80,7 +80,7 @@ public function testCreateCollection($collection) {
    * @return array
    *   Returns an array of collection names.
    */
-  public function providerCollections() {
+  public static function providerCollections() {
     return [
       [StorageInterface::DEFAULT_COLLECTION],
       ['foo.bar'],
diff --git a/core/tests/Drupal/KernelTests/Core/Database/DriverSpecificSchemaTestBase.php b/core/tests/Drupal/KernelTests/Core/Database/DriverSpecificSchemaTestBase.php
index 0a2c16501917d782507c971259fe191ead76956d..56e796e33dbb0affb0b83063942c3ba7c35f2c35 100644
--- a/core/tests/Drupal/KernelTests/Core/Database/DriverSpecificSchemaTestBase.php
+++ b/core/tests/Drupal/KernelTests/Core/Database/DriverSpecificSchemaTestBase.php
@@ -649,7 +649,7 @@ public function testSchemaChangePrimaryKey(array $initial_primary_key, array $re
    * @return array
    *   An array of test cases for SchemaTest::testSchemaCreateTablePrimaryKey().
    */
-  public function providerTestSchemaCreateTablePrimaryKey() {
+  public static function providerTestSchemaCreateTablePrimaryKey() {
     $tests = [];
 
     $tests['simple_primary_key'] = [
diff --git a/core/tests/Drupal/KernelTests/Core/Database/LoggingTest.php b/core/tests/Drupal/KernelTests/Core/Database/LoggingTest.php
index f6db6e65d2f89ffdd8458dd4f5d94a94e2edde28..438e442bd6933bbd5aa0320ba0db23cbe897abd1 100644
--- a/core/tests/Drupal/KernelTests/Core/Database/LoggingTest.php
+++ b/core/tests/Drupal/KernelTests/Core/Database/LoggingTest.php
@@ -186,7 +186,7 @@ public function testContribDriverLog($driver_namespace, $stack, array $expected_
    *
    * @see ::testContribDriverLog()
    */
-  public function providerContribDriverLog() {
+  public static function providerContribDriverLog() {
     $stack = [
       [
         'file' => '/var/www/core/lib/Drupal/Core/Database/Log.php',
diff --git a/core/tests/Drupal/KernelTests/Core/Database/SelectExtenderTest.php b/core/tests/Drupal/KernelTests/Core/Database/SelectExtenderTest.php
index c2a62186e09c8cf26f9cd45ea9f8ef96b9d85eb2..6283b48d13ee54d44a8e6c424179990f65bbe0d4 100644
--- a/core/tests/Drupal/KernelTests/Core/Database/SelectExtenderTest.php
+++ b/core/tests/Drupal/KernelTests/Core/Database/SelectExtenderTest.php
@@ -25,7 +25,7 @@ class SelectExtenderTest extends KernelTestBase {
    *   - The database driver namespace.
    *   - The namespaced class name for which to extend.
    */
-  public function providerExtend(): array {
+  public static function providerExtend(): array {
     return [
       [
         'Drupal\Core\Database\Query\PagerSelectExtender',
diff --git a/core/tests/Drupal/KernelTests/Core/Database/SelectLeastTest.php b/core/tests/Drupal/KernelTests/Core/Database/SelectLeastTest.php
index 7db76d03c5685c48c4085db107ecc131f0f4d3b9..8afe32e38637328a9a62a74ffcf0741a731d3ad2 100644
--- a/core/tests/Drupal/KernelTests/Core/Database/SelectLeastTest.php
+++ b/core/tests/Drupal/KernelTests/Core/Database/SelectLeastTest.php
@@ -19,7 +19,7 @@ public function testSelectLeast($values, $expected) {
     $this->assertEquals($expected, $least);
   }
 
-  public function selectLeastProvider() {
+  public static function selectLeastProvider() {
     return [
       [[1, 2, 3, 4, 5, 6], 1],
       [['A', 'B', 'C', 'NULL', 'F'], 'A'],
diff --git a/core/tests/Drupal/KernelTests/Core/Database/SelectTest.php b/core/tests/Drupal/KernelTests/Core/Database/SelectTest.php
index 68ea5ebb2f80e51b44608235db8e8fe08d00c1d9..256da561a17e7aca9cc20bc6389bf7558033ede6 100644
--- a/core/tests/Drupal/KernelTests/Core/Database/SelectTest.php
+++ b/core/tests/Drupal/KernelTests/Core/Database/SelectTest.php
@@ -498,7 +498,7 @@ public function testRandomOrder() {
    *     - the regular expression pattern to search for.
    *     - the regular expression operator 'REGEXP' or 'NOT REGEXP'.
    */
-  public function providerRegularExpressionCondition() {
+  public static function providerRegularExpressionCondition() {
     return [
       [['John'], 'name', 'hn$', 'REGEXP'],
       [['Paul'], 'name', '^Pau', 'REGEXP'],
@@ -598,7 +598,7 @@ public function testEmptyInCondition() {
    *   Array of non array compatible operators and its value in the expected
    *   exception message.
    */
-  public function providerNonArrayOperatorWithArrayValueCondition() {
+  public static function providerNonArrayOperatorWithArrayValueCondition() {
     return [
       '=' => ['=', '='],
       '>' => ['>', '>'],
diff --git a/core/tests/Drupal/KernelTests/Core/Datetime/DatetimeElementFormTest.php b/core/tests/Drupal/KernelTests/Core/Datetime/DatetimeElementFormTest.php
index 958dc61324090291a8e6a3e989ea7aea4487d46c..231d1834f4caff166fefd898b6700ebc6a92ef07 100644
--- a/core/tests/Drupal/KernelTests/Core/Datetime/DatetimeElementFormTest.php
+++ b/core/tests/Drupal/KernelTests/Core/Datetime/DatetimeElementFormTest.php
@@ -175,7 +175,7 @@ public function testDatetimeElementUntrustedCallbacks(string $date_callback = 'd
    * @return string[][]
    *   Test cases.
    */
-  public function providerUntrusted() : array {
+  public static function providerUntrusted() : array {
     return [
       'untrusted date' => [
         'datetimeDateCallback',
diff --git a/core/tests/Drupal/KernelTests/Core/DrupalKernel/DrupalKernelTest.php b/core/tests/Drupal/KernelTests/Core/DrupalKernel/DrupalKernelTest.php
index ffa8cc7c7caf5345ade1c60fd3b75466d8e3a203..ff1d2d5d55165034ab0f798e3746fd7dce2880e0 100644
--- a/core/tests/Drupal/KernelTests/Core/DrupalKernel/DrupalKernelTest.php
+++ b/core/tests/Drupal/KernelTests/Core/DrupalKernel/DrupalKernelTest.php
@@ -189,7 +189,7 @@ public function testPreventChangeOfSitePath() {
    * Data provider for self::testClassLoaderAutoDetect.
    * @return array
    */
-  public function providerClassLoaderAutoDetect() {
+  public static function providerClassLoaderAutoDetect() {
     return [
       'TRUE' => [TRUE],
       'FALSE' => [FALSE],
diff --git a/core/tests/Drupal/KernelTests/Core/Entity/ContentEntityStorageBaseTest.php b/core/tests/Drupal/KernelTests/Core/Entity/ContentEntityStorageBaseTest.php
index 88b4395841e7e5964efdefa2780c57c44745fa51..fd71efa81f2432c3e5343b63735640f6f52f0b95 100644
--- a/core/tests/Drupal/KernelTests/Core/Entity/ContentEntityStorageBaseTest.php
+++ b/core/tests/Drupal/KernelTests/Core/Entity/ContentEntityStorageBaseTest.php
@@ -41,7 +41,7 @@ public function testCreate($bundle) {
   /**
    * Provides test data for testCreate().
    */
-  public function providerTestCreate() {
+  public static function providerTestCreate() {
     return [
       ['scalar' => 'test_bundle'],
       ['array keyed by delta' => [0 => ['value' => 'test_bundle']]],
diff --git a/core/tests/Drupal/KernelTests/Core/Entity/EntityAccessControlHandlerTest.php b/core/tests/Drupal/KernelTests/Core/Entity/EntityAccessControlHandlerTest.php
index 3a34d85990d139b301ff371c7734c78851418529..bf2ecb9519d1069c5c91e596d6b4b58e0f5f6fc5 100644
--- a/core/tests/Drupal/KernelTests/Core/Entity/EntityAccessControlHandlerTest.php
+++ b/core/tests/Drupal/KernelTests/Core/Entity/EntityAccessControlHandlerTest.php
@@ -343,7 +343,7 @@ public function testFieldAccess($entity_class, array $entity_create_values, $exp
     $this->assertEquals('The entity ID cannot be changed.', $access_result->getReason());
   }
 
-  public function providerTestFieldAccess() {
+  public static function providerTestFieldAccess() {
     return [
       'serial ID entity' => [
         EntityTest::class,
diff --git a/core/tests/Drupal/KernelTests/Core/Entity/EntityDecoupledTranslationRevisionsTest.php b/core/tests/Drupal/KernelTests/Core/Entity/EntityDecoupledTranslationRevisionsTest.php
index bcd9955e6caea8572c5c683ff6979b4aace1a6a3..88f418d67fe0f95ef288b49940cd4c27c39df585 100644
--- a/core/tests/Drupal/KernelTests/Core/Entity/EntityDecoupledTranslationRevisionsTest.php
+++ b/core/tests/Drupal/KernelTests/Core/Entity/EntityDecoupledTranslationRevisionsTest.php
@@ -109,7 +109,7 @@ protected function setUp(): void {
   /**
    * Data provider for ::testDecoupledDefaultRevisions.
    */
-  public function dataTestDecoupledPendingRevisions() {
+  public static function dataTestDecoupledPendingRevisions() {
     $sets = [];
 
     $sets['Intermixed languages - No initial default translation'][] = [
@@ -211,7 +211,7 @@ public function testDecoupledPendingRevisions($sequence) {
   /**
    * Data provider for ::testUntranslatableFields.
    */
-  public function dataTestUntranslatableFields() {
+  public static function dataTestUntranslatableFields() {
     $sets = [];
 
     $sets['Default behavior - Untranslatable fields affect all revisions'] = [
diff --git a/core/tests/Drupal/KernelTests/Core/Entity/EntityDefinitionUpdateTest.php b/core/tests/Drupal/KernelTests/Core/Entity/EntityDefinitionUpdateTest.php
index 48b33b75512eba821388936ba0665b1c00e15e28..e71016b7045932f9a607d769f79665613f2fc23c 100644
--- a/core/tests/Drupal/KernelTests/Core/Entity/EntityDefinitionUpdateTest.php
+++ b/core/tests/Drupal/KernelTests/Core/Entity/EntityDefinitionUpdateTest.php
@@ -669,7 +669,7 @@ public function testBaseFieldDeleteWithExistingData($entity_type_id, $create_ent
   /**
    * Test cases for ::testBaseFieldDeleteWithExistingData.
    */
-  public function baseFieldDeleteWithExistingDataTestCases() {
+  public static function baseFieldDeleteWithExistingDataTestCases() {
     return [
       'Non-revisionable, non-translatable entity type' => [
         'entity_test_update',
@@ -1296,7 +1296,7 @@ public function testInitialValueFromField($default_initial_value, $expected_valu
   /**
    * Test cases for ::testInitialValueFromField.
    */
-  public function initialValueFromFieldTestCases() {
+  public static function initialValueFromFieldTestCases() {
     return [
       'literal value' => [
         'test initial value',
diff --git a/core/tests/Drupal/KernelTests/Core/Entity/EntityDeriverTest.php b/core/tests/Drupal/KernelTests/Core/Entity/EntityDeriverTest.php
index 9ae3f6bf32d487f16403ee1339b494d72b05dce9..66ce30dd09b360df6e0afdc30162d3ce5834b63e 100644
--- a/core/tests/Drupal/KernelTests/Core/Entity/EntityDeriverTest.php
+++ b/core/tests/Drupal/KernelTests/Core/Entity/EntityDeriverTest.php
@@ -68,7 +68,7 @@ public function testDerivatives($data_type, $expect_exception) {
   /**
    * Provides test data for ::testDerivatives().
    */
-  public function derivativesProvider() {
+  public static function derivativesProvider() {
     return [
       'un-bundleable entity type with no bundle type' => ['entity:user', FALSE],
       'un-bundleable entity type with bundle type' => ['entity:user:user', TRUE],
diff --git a/core/tests/Drupal/KernelTests/Core/Entity/EntityKeysTest.php b/core/tests/Drupal/KernelTests/Core/Entity/EntityKeysTest.php
index 18eb76267d3b9cd33cd4c85283e82a38a7d5eb39..0b5d95eb6ca6dc560110d218169015c2ee574b54 100644
--- a/core/tests/Drupal/KernelTests/Core/Entity/EntityKeysTest.php
+++ b/core/tests/Drupal/KernelTests/Core/Entity/EntityKeysTest.php
@@ -42,7 +42,7 @@ public function testMultipleKeysCache($translatable) {
   /**
    * Data provider for ::testMultipleKeysCache.
    */
-  public function multipleKeysCacheTestCases() {
+  public static function multipleKeysCacheTestCases() {
     return [
       'translatable Entity Key' => [
         TRUE,
diff --git a/core/tests/Drupal/KernelTests/Core/Entity/EntitySchemaTest.php b/core/tests/Drupal/KernelTests/Core/Entity/EntitySchemaTest.php
index 4528445ca162507930e2f6cc17df9404ad9819aa..b231f6d73fc0fcacfb3b4c08e986d81ad08ddb85 100644
--- a/core/tests/Drupal/KernelTests/Core/Entity/EntitySchemaTest.php
+++ b/core/tests/Drupal/KernelTests/Core/Entity/EntitySchemaTest.php
@@ -282,7 +282,7 @@ protected function findPrimaryKeys(EntityTypeInterface $entity_type) {
    * @return array
    *   An array of test cases consisting of an entity type ID and a field name.
    */
-  public function providerTestPrimaryKeyUpdate() {
+  public static function providerTestPrimaryKeyUpdate() {
     // Build up test cases for all possible entity type configurations.
     // For each entity type we test reinstalling each field that is part of
     // any table's primary key.
diff --git a/core/tests/Drupal/KernelTests/Core/Entity/EntityTypedDataDefinitionTest.php b/core/tests/Drupal/KernelTests/Core/Entity/EntityTypedDataDefinitionTest.php
index d4f0fe6854900989623b24bbff3d593ff49f8e85..0d40daef92fd33828aeebd45052c62354cb72b4d 100644
--- a/core/tests/Drupal/KernelTests/Core/Entity/EntityTypedDataDefinitionTest.php
+++ b/core/tests/Drupal/KernelTests/Core/Entity/EntityTypedDataDefinitionTest.php
@@ -171,7 +171,7 @@ public function testEntityDefinitionIsInternal($internal, $expected) {
   /**
    * Provides test cases for testEntityDefinitionIsInternal.
    */
-  public function entityDefinitionIsInternalProvider() {
+  public static function entityDefinitionIsInternalProvider() {
     return [
       'internal' => [TRUE, TRUE],
       'external' => [FALSE, FALSE],
diff --git a/core/tests/Drupal/KernelTests/Core/Entity/FieldableEntityDefinitionUpdateTest.php b/core/tests/Drupal/KernelTests/Core/Entity/FieldableEntityDefinitionUpdateTest.php
index 7e96479bb42829900247a948c5c6a45a01bd4af7..7b69cf8a7c127b02e2c6a7bfbda9c8dd390d046f 100644
--- a/core/tests/Drupal/KernelTests/Core/Entity/FieldableEntityDefinitionUpdateTest.php
+++ b/core/tests/Drupal/KernelTests/Core/Entity/FieldableEntityDefinitionUpdateTest.php
@@ -185,7 +185,7 @@ public function testFieldableEntityTypeUpdates($initial_rev, $initial_mul, $new_
   /**
    * Data provider for testFieldableEntityTypeUpdates().
    */
-  public function providerTestFieldableEntityTypeUpdates() {
+  public static function providerTestFieldableEntityTypeUpdates() {
     return [
       'no change' => [
         'initial_rev' => FALSE,
diff --git a/core/tests/Drupal/KernelTests/Core/Entity/RevisionRouteProviderTest.php b/core/tests/Drupal/KernelTests/Core/Entity/RevisionRouteProviderTest.php
index 59cd473b6c4810359ddb230e011a0b0c73e7c12f..f0c24260b532a66473430d9fc732e0816ad73191 100644
--- a/core/tests/Drupal/KernelTests/Core/Entity/RevisionRouteProviderTest.php
+++ b/core/tests/Drupal/KernelTests/Core/Entity/RevisionRouteProviderTest.php
@@ -104,7 +104,7 @@ public function testOperationAccessRevisionRoutes(string $linkTemplate, string $
    * @return array
    *   Data for testing.
    */
-  public function providerOperationAccessRevisionRoutes(): array {
+  public static function providerOperationAccessRevisionRoutes(): array {
     $data = [];
 
     $data['view revision'] = [
diff --git a/core/tests/Drupal/KernelTests/Core/Extension/ModuleInstallerTest.php b/core/tests/Drupal/KernelTests/Core/Extension/ModuleInstallerTest.php
index 743178fa9d9e564d47984595cb7956ec494d4586..04ff69d5cc79acc32f4b2ea897b6962665c808ec 100644
--- a/core/tests/Drupal/KernelTests/Core/Extension/ModuleInstallerTest.php
+++ b/core/tests/Drupal/KernelTests/Core/Extension/ModuleInstallerTest.php
@@ -102,7 +102,7 @@ public function testInvalidCoreInstall($module_name, $install_dependencies) {
   /**
    * Data provider for testInvalidCoreInstall().
    */
-  public function providerTestInvalidCoreInstall() {
+  public static function providerTestInvalidCoreInstall() {
     return [
       'no dependencies system_core_incompatible_semver_test' => [
         'system_core_incompatible_semver_test',
diff --git a/core/tests/Drupal/KernelTests/Core/Field/Entity/BaseFieldOverrideTest.php b/core/tests/Drupal/KernelTests/Core/Field/Entity/BaseFieldOverrideTest.php
index 92c1b98cc047137499100fb9b53a612983896a9d..5b959bb860f7e02e4ea1f36b888accc34ca289cf 100644
--- a/core/tests/Drupal/KernelTests/Core/Field/Entity/BaseFieldOverrideTest.php
+++ b/core/tests/Drupal/KernelTests/Core/Field/Entity/BaseFieldOverrideTest.php
@@ -52,7 +52,7 @@ public function testGetClass($field_type, $base_field_class, $expected_override_
   /**
    * Test cases for ::testGetClass.
    */
-  public function getClassTestCases() {
+  public static function getClassTestCases() {
     return [
       'String (default class)' => [
         'string',
diff --git a/core/tests/Drupal/KernelTests/Core/File/FileUrlGeneratorTest.php b/core/tests/Drupal/KernelTests/Core/File/FileUrlGeneratorTest.php
index 5359ee3fc56aa50611fb336dc2cff013663650d1..1ccb74990c6b76c05d6eebc4390b2e5e6c80d677 100644
--- a/core/tests/Drupal/KernelTests/Core/File/FileUrlGeneratorTest.php
+++ b/core/tests/Drupal/KernelTests/Core/File/FileUrlGeneratorTest.php
@@ -219,7 +219,7 @@ public function testGenerateURIWithSchema() {
   /**
    * Data provider.
    */
-  public function providerGenerateURI() {
+  public static function providerGenerateURI() {
     return [
       'schemaless' =>
         [
diff --git a/core/tests/Drupal/KernelTests/Core/File/UrlTransformRelativeTest.php b/core/tests/Drupal/KernelTests/Core/File/UrlTransformRelativeTest.php
index c24bd75e3f5451631e7617110951fc33fd828c52..c6eefa1f446dcdfbb27963f47d786161853c8a02 100644
--- a/core/tests/Drupal/KernelTests/Core/File/UrlTransformRelativeTest.php
+++ b/core/tests/Drupal/KernelTests/Core/File/UrlTransformRelativeTest.php
@@ -43,7 +43,7 @@ public function testFileUrlTransformRelative($host, $port, $https, $base_path, $
     $this->assertSame($expected, \Drupal::service('file_url_generator')->transformRelative($url, $root_relative));
   }
 
-  public function providerFileUrlTransformRelative() {
+  public static function providerFileUrlTransformRelative() {
     $data = [
       'http' => [
         'example.com',
diff --git a/core/tests/Drupal/KernelTests/Core/Image/ToolkitGdTest.php b/core/tests/Drupal/KernelTests/Core/Image/ToolkitGdTest.php
index 267538134db6bd86defe89bb5043c6e2dc76ea73..adfb42294764b27c989e53854b3a3a5e15c8e25e 100644
--- a/core/tests/Drupal/KernelTests/Core/Image/ToolkitGdTest.php
+++ b/core/tests/Drupal/KernelTests/Core/Image/ToolkitGdTest.php
@@ -105,7 +105,7 @@ public function getPixelColor(ImageInterface $image, int $x, int $y): array {
   /**
    * Data provider for ::testManipulations().
    */
-  public function providerTestImageFiles(): array {
+  public static function providerTestImageFiles(): array {
     // Typically the corner colors will be unchanged. These colors are in the
     // order of top-left, top-right, bottom-right, bottom-left.
     $default_corners = [static::RED, static::GREEN, static::BLUE, static::TRANSPARENT];
@@ -390,7 +390,7 @@ public function testSupportedExtensions(): void {
   /**
    * Data provider for ::testCreateImageFromScratch().
    */
-  public function providerSupportedImageTypes(): array {
+  public static function providerSupportedImageTypes(): array {
     return [
       [IMAGETYPE_PNG],
       [IMAGETYPE_GIF],
diff --git a/core/tests/Drupal/KernelTests/Core/Installer/InstallerRedirectTraitTest.php b/core/tests/Drupal/KernelTests/Core/Installer/InstallerRedirectTraitTest.php
index 6b897941512acfeb7ee72bb958aa9fed9cd0b920..41b2e770e307aca3ee1230a25765f5d616fba9ac 100644
--- a/core/tests/Drupal/KernelTests/Core/Installer/InstallerRedirectTraitTest.php
+++ b/core/tests/Drupal/KernelTests/Core/Installer/InstallerRedirectTraitTest.php
@@ -29,7 +29,7 @@ class InstallerRedirectTraitTest extends KernelTestBase {
    *   - Whether or not there is database connection info.
    *   - Whether or not there exists a sessions table in the database.
    */
-  public function providerShouldRedirectToInstaller() {
+  public static function providerShouldRedirectToInstaller() {
     return [
       [TRUE, DatabaseNotFoundException::class, FALSE, FALSE],
       [TRUE, DatabaseNotFoundException::class, TRUE, FALSE],
diff --git a/core/tests/Drupal/KernelTests/Core/Layout/IconBuilderTest.php b/core/tests/Drupal/KernelTests/Core/Layout/IconBuilderTest.php
index 92ac3cec7a25d41705d926daf5ef9a85895c7d81..3977ac885f58cf9e3adebdda43f5625369715960 100644
--- a/core/tests/Drupal/KernelTests/Core/Layout/IconBuilderTest.php
+++ b/core/tests/Drupal/KernelTests/Core/Layout/IconBuilderTest.php
@@ -32,7 +32,7 @@ public function testBuild(SvgIconBuilder $icon_builder, $icon_map, $expected) {
     $this->assertSame($expected, $output);
   }
 
-  public function providerTestBuild() {
+  public static function providerTestBuild() {
     $data = [];
     $data['empty'][] = (new SvgIconBuilder());
     $data['empty'][] = [];
diff --git a/core/tests/Drupal/KernelTests/Core/Pager/PagerManagerTest.php b/core/tests/Drupal/KernelTests/Core/Pager/PagerManagerTest.php
index 11faa4aeb4ac0dd6cea30ae590ce7f89062507c1..6ec99deb050fb7f850d8e8de9ca1ad95e02f90f7 100644
--- a/core/tests/Drupal/KernelTests/Core/Pager/PagerManagerTest.php
+++ b/core/tests/Drupal/KernelTests/Core/Pager/PagerManagerTest.php
@@ -81,7 +81,7 @@ public function testGetMaxPagerElementId(array $elements, int $expected_max_elem
    *   - Array of elements to pass to PagerManager::createPager().
    *   - The expected value returned by PagerManager::getMaxPagerElementId().
    */
-  public function providerTestGetMaxPagerElementId(): array {
+  public static function providerTestGetMaxPagerElementId(): array {
     return [
       'no_pager' => [[], -1],
       'single_pager' => [[0], 0],
diff --git a/core/tests/Drupal/KernelTests/Core/Plugin/Condition/ResponseStatusTest.php b/core/tests/Drupal/KernelTests/Core/Plugin/Condition/ResponseStatusTest.php
index 33c407508e75749ae01d91333d9be92308be73e6..faec6e8c45f7ba7374538f003106ade670275c08 100644
--- a/core/tests/Drupal/KernelTests/Core/Plugin/Condition/ResponseStatusTest.php
+++ b/core/tests/Drupal/KernelTests/Core/Plugin/Condition/ResponseStatusTest.php
@@ -77,7 +77,7 @@ public function testConditions(array $status_codes, bool $negate, int $response_
   /**
    * Provides test data for testConditions.
    */
-  public function providerTestConditions() {
+  public static function providerTestConditions() {
     // Default values with 200 response code.
     yield [
       'status_codes' => [],
diff --git a/core/tests/Drupal/KernelTests/Core/Plugin/ContextTypedDataTest.php b/core/tests/Drupal/KernelTests/Core/Plugin/ContextTypedDataTest.php
index f75f65193bc66517e6666ca7f66a857a0b29bdeb..d4a3770a587c65deab740920d561f4458f9d7749 100644
--- a/core/tests/Drupal/KernelTests/Core/Plugin/ContextTypedDataTest.php
+++ b/core/tests/Drupal/KernelTests/Core/Plugin/ContextTypedDataTest.php
@@ -63,7 +63,7 @@ public function testGetContextValue() {
   /**
    * Data provider for testHasContextValue.
    */
-  public function providerHasContextValue() {
+  public static function providerHasContextValue() {
     return [
       [TRUE, FALSE],
       [TRUE, 0],
diff --git a/core/tests/Drupal/KernelTests/Core/Routing/RouteProviderTest.php b/core/tests/Drupal/KernelTests/Core/Routing/RouteProviderTest.php
index 03c04c3c982a7ba13a6fa8535fa1b1f0ec4fac5d..30ea7be869b5d569d503d5ded15c5442dc5869d6 100644
--- a/core/tests/Drupal/KernelTests/Core/Routing/RouteProviderTest.php
+++ b/core/tests/Drupal/KernelTests/Core/Routing/RouteProviderTest.php
@@ -204,7 +204,7 @@ public function testOutlinePathMatch() {
   /**
    * Data provider for testMixedCasePaths()
    */
-  public function providerMixedCaseRoutePaths() {
+  public static function providerMixedCaseRoutePaths() {
     // cSpell:disable
     return [
       ['/path/one', 'route_a'],
@@ -254,7 +254,7 @@ public function testMixedCasePaths($path, $expected_route_name, $method = 'GET')
   /**
    * Data provider for testMixedCasePaths()
    */
-  public function providerDuplicateRoutePaths() {
+  public static function providerDuplicateRoutePaths() {
     // When matching routes with the same fit the route with the lowest-sorting
     // name should end up first in the resulting route collection.
     return [
diff --git a/core/tests/Drupal/KernelTests/Core/StreamWrapper/StreamWrapperManagerTest.php b/core/tests/Drupal/KernelTests/Core/StreamWrapper/StreamWrapperManagerTest.php
index 2cc2ee5a40229fde6971b4e7a7a4c31e4372357f..d548cab0140b338b046603daeb4e91b339ff9fe6 100644
--- a/core/tests/Drupal/KernelTests/Core/StreamWrapper/StreamWrapperManagerTest.php
+++ b/core/tests/Drupal/KernelTests/Core/StreamWrapper/StreamWrapperManagerTest.php
@@ -43,7 +43,7 @@ public function testUriScheme($uri, $expected) {
   /**
    * Data provider.
    */
-  public function providerTestUriScheme() {
+  public static function providerTestUriScheme() {
     $data = [];
     $data[] = [
       'public://filename',
diff --git a/core/tests/Drupal/KernelTests/Core/Test/Comparator/MarkupInterfaceComparatorTest.php b/core/tests/Drupal/KernelTests/Core/Test/Comparator/MarkupInterfaceComparatorTest.php
index 61cf2818080c67c549855c4462b3dc60d3a6cae9..81db9967a6ecc9fe15e880dd86861c1db0b27b7b 100644
--- a/core/tests/Drupal/KernelTests/Core/Test/Comparator/MarkupInterfaceComparatorTest.php
+++ b/core/tests/Drupal/KernelTests/Core/Test/Comparator/MarkupInterfaceComparatorTest.php
@@ -54,7 +54,7 @@ protected function setUp(): void {
    *     comparison should match, FALSE if error, or a class name of an object
    *     thrown.
    */
-  public function dataSetProvider() {
+  public static function dataSetProvider() {
     return [
       'FormattableMarkup vs FormattableMarkup, equal' => [
         new FormattableMarkup('GoldFinger', []),
@@ -162,7 +162,7 @@ public function dataSetProvider() {
    *     thrown.
    *   - the expected deprecation message.
    */
-  public function dataSetProviderDeprecatedCases() {
+  public static function dataSetProviderDeprecatedCases() {
     return [
       'html string with tags vs FormattableMarkup, equal' => [
         '<em class="placeholder">For Your Eyes</em> Only',
diff --git a/core/tests/Drupal/KernelTests/Core/Theme/RegistryTest.php b/core/tests/Drupal/KernelTests/Core/Theme/RegistryTest.php
index 1a1328dd5973913169911357c08d6fa9225f0f66..d5f74801f7cd0f13c159ed88cfcde9c24e046d08 100644
--- a/core/tests/Drupal/KernelTests/Core/Theme/RegistryTest.php
+++ b/core/tests/Drupal/KernelTests/Core/Theme/RegistryTest.php
@@ -218,7 +218,7 @@ public function test200ThemeSuggestions() {
    * @return array
    *   An associative array of 40x theme suggestions.
    */
-  public function provider40xThemeSuggestions() {
+  public static function provider40xThemeSuggestions() {
     return [
       [401, 'page__401'],
       [403, 'page__403'],
diff --git a/core/tests/Drupal/KernelTests/Core/Theme/ThemeInstallerTest.php b/core/tests/Drupal/KernelTests/Core/Theme/ThemeInstallerTest.php
index 0e2b1bd7ffced7b5ace779f8b81fd60e26531006..2ba2622a6e80eb294cb054eb485b3de3e5edc188 100644
--- a/core/tests/Drupal/KernelTests/Core/Theme/ThemeInstallerTest.php
+++ b/core/tests/Drupal/KernelTests/Core/Theme/ThemeInstallerTest.php
@@ -192,7 +192,7 @@ public function testInstallDeprecated() {
   /**
    * Data provider for testInstallThemeWithUnmetModuleDependencies().
    */
-  public function providerTestInstallThemeWithUnmetModuleDependencies() {
+  public static function providerTestInstallThemeWithUnmetModuleDependencies() {
     return [
       'theme with uninstalled module dependencies' => [
         'test_theme_depending_on_modules',
diff --git a/core/tests/Drupal/KernelTests/Core/Theme/ThemeRenderAndAutoescapeTest.php b/core/tests/Drupal/KernelTests/Core/Theme/ThemeRenderAndAutoescapeTest.php
index a6708856467e782b4d7b707667f461c5325dc588..901be11a72f1b71e5236ecb2023f95735e5ae375 100644
--- a/core/tests/Drupal/KernelTests/Core/Theme/ThemeRenderAndAutoescapeTest.php
+++ b/core/tests/Drupal/KernelTests/Core/Theme/ThemeRenderAndAutoescapeTest.php
@@ -55,7 +55,7 @@ public function testThemeRenderAndAutoescape($arg, $expected) {
   /**
    * Provide test examples.
    */
-  public function providerTestThemeRenderAndAutoescape() {
+  public static function providerTestThemeRenderAndAutoescape() {
     return [
       'empty string unchanged' => ['', ''],
       'simple string unchanged' => ['ab', 'ab'],
diff --git a/core/tests/Drupal/KernelTests/Core/Theme/TwigMarkupInterfaceTest.php b/core/tests/Drupal/KernelTests/Core/Theme/TwigMarkupInterfaceTest.php
index 7d3d40160796088fb5f9455563866eba4dbc3a8b..2aa4a9bc904b7090f70c85c02fc1b0ed040a9f42 100644
--- a/core/tests/Drupal/KernelTests/Core/Theme/TwigMarkupInterfaceTest.php
+++ b/core/tests/Drupal/KernelTests/Core/Theme/TwigMarkupInterfaceTest.php
@@ -38,7 +38,7 @@ public function testMarkupInterfaceEmpty($expected, $variable) {
   /**
    * Provide test examples.
    */
-  public function providerTestMarkupInterfaceEmpty() {
+  public static function providerTestMarkupInterfaceEmpty() {
     return [
       // The first argument to \Drupal\Core\StringTranslation\TranslatableMarkup
       // is not supposed to be an empty string.
diff --git a/core/tests/Drupal/Tests/Component/Annotation/Doctrine/DocParserTest.php b/core/tests/Drupal/Tests/Component/Annotation/Doctrine/DocParserTest.php
index 14314de2d88659fba75f8eb54463e3560d5a9331..f52b8fb8dce047da66a3e9acf5652a85b20e056f 100644
--- a/core/tests/Drupal/Tests/Component/Annotation/Doctrine/DocParserTest.php
+++ b/core/tests/Drupal/Tests/Component/Annotation/Doctrine/DocParserTest.php
@@ -398,7 +398,7 @@ public function testAnnotationTarget()
 
     }
 
-    public function getAnnotationVarTypeProviderValid()
+    public static function getAnnotationVarTypeProviderValid()
     {
         //({attribute name}, {attribute value})
          return array(
@@ -451,7 +451,7 @@ public function getAnnotationVarTypeProviderValid()
         );
     }
 
-    public function getAnnotationVarTypeProviderInvalid()
+    public static function getAnnotationVarTypeProviderInvalid()
     {
          //({attribute name}, {type declared type}, {attribute value} , {given type or class})
          return array(
@@ -504,7 +504,7 @@ public function getAnnotationVarTypeProviderInvalid()
         );
     }
 
-    public function getAnnotationVarTypeArrayProviderInvalid()
+    public static function getAnnotationVarTypeArrayProviderInvalid()
     {
          //({attribute name}, {type declared type}, {attribute value} , {given type or class})
          return array(
@@ -760,7 +760,7 @@ public function testAnnotationEnumInvalidLiteralDeclarationException()
         $parser->parse($docblock);
     }
 
-    public function getConstantsProvider()
+    public static function getConstantsProvider()
     {
         $provider[] = array(
             '@AnnotationWithConstants(PHP_EOL)',
diff --git a/core/tests/Drupal/Tests/Component/Assertion/InspectorTest.php b/core/tests/Drupal/Tests/Component/Assertion/InspectorTest.php
index 384bb30ed5d90bf8beb2955b68e000c4d39e4edd..eb5772781a38543ba98222d00075346f0aa000fd 100644
--- a/core/tests/Drupal/Tests/Component/Assertion/InspectorTest.php
+++ b/core/tests/Drupal/Tests/Component/Assertion/InspectorTest.php
@@ -35,7 +35,7 @@ public function testAssertAllStrings($input, $expected) {
     $this->assertSame($expected, Inspector::assertAllStrings($input));
   }
 
-  public function providerTestAssertAllStrings() {
+  public static function providerTestAssertAllStrings() {
     $data = [
       'empty-array' => [[], TRUE],
       'array-with-strings' => [['foo', 'bar'], TRUE],
diff --git a/core/tests/Drupal/Tests/Component/Datetime/DateTimePlusTest.php b/core/tests/Drupal/Tests/Component/Datetime/DateTimePlusTest.php
index 28c91f351c9eeef469e008efde81811e8a3557ca..99d0b79bdb4267adeac015de7f35eb81e577b09d 100644
--- a/core/tests/Drupal/Tests/Component/Datetime/DateTimePlusTest.php
+++ b/core/tests/Drupal/Tests/Component/Datetime/DateTimePlusTest.php
@@ -317,7 +317,7 @@ public function testDateTimezoneWithDateTimeObject() {
    *
    * @see DateTimePlusTest::testDates()
    */
-  public function providerTestDates() {
+  public static function providerTestDates() {
     $dates = [
       // String input.
       // Create date object from datetime string.
@@ -357,7 +357,7 @@ public function providerTestDates() {
    *
    * @see DateTimePlusTest::testDates()
    */
-  public function providerTestDateArrays() {
+  public static function providerTestDateArrays() {
     $dates = [
       // Array input.
       // Create date object from date array, date only.
@@ -397,7 +397,7 @@ public function providerTestDateArrays() {
    *
    * @see testDateFormats()
    */
-  public function providerTestDateFormat() {
+  public static function providerTestDateFormat() {
     return [
       // Create a year-only date.
       ['2009', NULL, 'Y', 'Y', '2009'],
@@ -422,7 +422,7 @@ public function providerTestDateFormat() {
    *
    * @see testInvalidDates
    */
-  public function providerTestInvalidDates() {
+  public static function providerTestInvalidDates() {
     return [
       // Test for invalid month names when we are using a short version
       // of the month.
@@ -449,7 +449,7 @@ public function providerTestInvalidDates() {
    *
    * @see testInvalidDateArrays
    */
-  public function providerTestInvalidDateArrays() {
+  public static function providerTestInvalidDateArrays() {
     return [
       // One year larger than the documented upper limit of checkdate().
       [['year' => 32768, 'month' => 1, 'day' => 8, 'hour' => 8, 'minute' => 0, 'second' => 0], 'America/Chicago', \InvalidArgumentException::class],
@@ -476,7 +476,7 @@ public function providerTestInvalidDateArrays() {
    *
    * @see testCheckArray
    */
-  public function providerTestCheckArray() {
+  public static function providerTestCheckArray() {
     return [
       'Date array, date only' => [['year' => 2010, 'month' => 2, 'day' => 28], TRUE],
       'Date array with hour' => [['year' => 2010, 'month' => 2, 'day' => 28, 'hour' => 10], TRUE],
@@ -502,7 +502,7 @@ public function providerTestCheckArray() {
    *
    * @see testDateTimezone
    */
-  public function providerTestDateTimezone() {
+  public static function providerTestDateTimezone() {
     // Use a common date for most of the tests.
     $date_string = '2007-01-31 21:00:00';
 
@@ -531,7 +531,7 @@ public function providerTestDateTimezone() {
    *
    * @see testTimestamp()
    */
-  public function providerTestTimestamp() {
+  public static function providerTestTimestamp() {
     return [
       // Create date object from a unix timestamp and display it in
       // local time.
@@ -583,7 +583,7 @@ public function providerTestTimestamp() {
    *
    * @see testDateTimestamp()
    */
-  public function providerTestDateTimestamp() {
+  public static function providerTestDateTimestamp() {
     return [
       // Create date object from datetime string in UTC, and convert
       // it to a local date.
@@ -652,7 +652,7 @@ public function providerTestDateTimestamp() {
    *
    * @see DateTimePlusTest::testDateDiff()
    */
-  public function providerTestDateDiff() {
+  public static function providerTestDateDiff() {
 
     $empty_interval = new \DateInterval('PT0S');
 
@@ -730,7 +730,7 @@ public function providerTestDateDiff() {
    *
    * @see DateTimePlusTest::testInvalidDateDiff()
    */
-  public function providerTestInvalidDateDiff() {
+  public static function providerTestInvalidDateDiff() {
     return [
       [
         'input1' => DateTimePlus::createFromFormat('U', 3600),
@@ -770,7 +770,7 @@ public function testInvalidConstructor($time, array $errors) {
    * @return array
    *   An array of invalid date/time strings, and corresponding error messages.
    */
-  public function providerTestInvalidConstructor() {
+  public static function providerTestInvalidConstructor() {
     return [
       [
         'YYYY-MM-DD',
diff --git a/core/tests/Drupal/Tests/Component/DependencyInjection/Dumper/OptimizedPhpArrayDumperTest.php b/core/tests/Drupal/Tests/Component/DependencyInjection/Dumper/OptimizedPhpArrayDumperTest.php
index 6f628103352190d61763e3562ca4bdd91cbbef59..3883c0d945de5d81ae4d4b648a27fb72bbf60e1d 100644
--- a/core/tests/Drupal/Tests/Component/DependencyInjection/Dumper/OptimizedPhpArrayDumperTest.php
+++ b/core/tests/Drupal/Tests/Component/DependencyInjection/Dumper/OptimizedPhpArrayDumperTest.php
@@ -121,7 +121,7 @@ public function testGetAliases($aliases, $definition_aliases) {
      *     - aliases as returned by ContainerBuilder.
      *     - aliases as expected in the container definition.
      */
-    public function getAliasesDataProvider() {
+    public static function getAliasesDataProvider() {
       return [
         [[], []],
         [
@@ -166,7 +166,7 @@ public function testGetParameters($parameters, $definition_parameters, $is_froze
      *     - parameters as expected in the container definition.
      *     - frozen value
      */
-    public function getParametersDataProvider() {
+    public static function getParametersDataProvider() {
       return [
         [[], [], TRUE],
         [
@@ -546,7 +546,7 @@ public function testGetServiceDefinitionWithReferenceToAlias($public) {
       $this->assertEquals(static::serializeDefinition($data), $dump['services']['foo'], 'Expected definition matches dump.');
     }
 
-    public function publicPrivateDataProvider() {
+    public static function publicPrivateDataProvider() {
       return [
         [TRUE],
         [FALSE],
@@ -688,7 +688,7 @@ public function testPercentsEscape($expected, $argument) {
      *     - expected final value.
      *     - escaped value in service definition.
      */
-    public function percentsEscapeProvider() {
+    public static function percentsEscapeProvider() {
       return [
         ['%foo%', '%%foo%%'],
         ['foo%bar%', 'foo%%bar%%'],
diff --git a/core/tests/Drupal/Tests/Component/Diff/DiffFormatterTest.php b/core/tests/Drupal/Tests/Component/Diff/DiffFormatterTest.php
index b0f25967fc70f1e5788b8a4d2822f9adf194d748..9016dd483f47cbeb1b0fc7bb1b59ceb8933fa99d 100644
--- a/core/tests/Drupal/Tests/Component/Diff/DiffFormatterTest.php
+++ b/core/tests/Drupal/Tests/Component/Diff/DiffFormatterTest.php
@@ -23,7 +23,7 @@ class DiffFormatterTest extends TestCase {
    *   - First array of text to diff.
    *   - Second array of text to diff.
    */
-  public function provideTestDiff() {
+  public static function provideTestDiff() {
     return [
       'empty' => ['', [], []],
       'add' => [
diff --git a/core/tests/Drupal/Tests/Component/Diff/DiffOpOutputBuilderTest.php b/core/tests/Drupal/Tests/Component/Diff/DiffOpOutputBuilderTest.php
index 6c169fcb6dfc758e67641ab60943dc4d22f37058..29143ca9b2b024b0294d8d36d43cbe50393f028b 100644
--- a/core/tests/Drupal/Tests/Component/Diff/DiffOpOutputBuilderTest.php
+++ b/core/tests/Drupal/Tests/Component/Diff/DiffOpOutputBuilderTest.php
@@ -26,7 +26,7 @@ class DiffOpOutputBuilderTest extends TestCase {
    *   - An array of strings to change from.
    *   - An array of strings to change to.
    */
-  public function provideTestDiff(): array {
+  public static function provideTestDiff(): array {
     return [
       'empty' => [[], [], []],
       'add' => [[new DiffOpAdd(['a'])], [], ['a']],
diff --git a/core/tests/Drupal/Tests/Component/Diff/Engine/DiffEngineTest.php b/core/tests/Drupal/Tests/Component/Diff/Engine/DiffEngineTest.php
index dce6e52b2cb16ac60b0e2e3187e385fd8c07027e..231b3c999192f531123883871247491334ba3b65 100644
--- a/core/tests/Drupal/Tests/Component/Diff/Engine/DiffEngineTest.php
+++ b/core/tests/Drupal/Tests/Component/Diff/Engine/DiffEngineTest.php
@@ -31,7 +31,7 @@ class DiffEngineTest extends TestCase {
    *   - An array of strings to change from.
    *   - An array of strings to change to.
    */
-  public function provideTestDiff() {
+  public static function provideTestDiff() {
     return [
       'empty' => [[], [], []],
       'add' => [[DiffOpAdd::class], [], ['a']],
diff --git a/core/tests/Drupal/Tests/Component/Diff/Engine/HWLDFWordAccumulatorTest.php b/core/tests/Drupal/Tests/Component/Diff/Engine/HWLDFWordAccumulatorTest.php
index 6364a6143ba8ea46b64b3dd0a8831eae455a23eb..bcaf935eabdfe7655ba83226d7653b7feaa3b108 100644
--- a/core/tests/Drupal/Tests/Component/Diff/Engine/HWLDFWordAccumulatorTest.php
+++ b/core/tests/Drupal/Tests/Component/Diff/Engine/HWLDFWordAccumulatorTest.php
@@ -36,7 +36,7 @@ public function testGetLinesEmpty() {
    *   - Array of strings for the $words parameter to addWords().
    *   - String tag for the $tag parameter to addWords().
    */
-  public function provideAddWords() {
+  public static function provideAddWords() {
     return [
       [['wordword2'], ['word', 'word2'], 'tag'],
       [['word', 'word2'], ['word', "\nword2"], 'tag'],
diff --git a/core/tests/Drupal/Tests/Component/DrupalComponentTest.php b/core/tests/Drupal/Tests/Component/DrupalComponentTest.php
index 09e356765d340e2b89f0ad6cfcd672dc90a29eb7..8291c74649639ab18dbc66ded098f4e435c2df7f 100644
--- a/core/tests/Drupal/Tests/Component/DrupalComponentTest.php
+++ b/core/tests/Drupal/Tests/Component/DrupalComponentTest.php
@@ -113,7 +113,7 @@ protected function assertNoCoreUsage(string $class_path): void {
    *   - TRUE if the test passes, FALSE otherwise.
    *   - File data as a string. This will be used as a virtual file.
    */
-  public function providerAssertNoCoreUsage() {
+  public static function providerAssertNoCoreUsage() {
     return [
       [
         TRUE,
diff --git a/core/tests/Drupal/Tests/Component/FileSystem/RegexDirectoryIteratorTest.php b/core/tests/Drupal/Tests/Component/FileSystem/RegexDirectoryIteratorTest.php
index c340f14630b02fd1d1fd50da6549520ca0467831..39a5095525b1cf72e65564c6ec7a224964ed97f0 100644
--- a/core/tests/Drupal/Tests/Component/FileSystem/RegexDirectoryIteratorTest.php
+++ b/core/tests/Drupal/Tests/Component/FileSystem/RegexDirectoryIteratorTest.php
@@ -33,7 +33,7 @@ public function testRegexDirectoryIterator(array $directory, $regex, array $expe
   /**
    * Provider for self::testRegexDirectoryIterator().
    */
-  public function providerTestRegexDirectoryIterator() {
+  public static function providerTestRegexDirectoryIterator() {
     return [
       [
         [
diff --git a/core/tests/Drupal/Tests/Component/Gettext/PoHeaderTest.php b/core/tests/Drupal/Tests/Component/Gettext/PoHeaderTest.php
index c0ba7cf6ff1ae9e8a4af1da07ebf0ef216b8481b..54d7914475ac51e01c704dd67c0357e564f93f12 100644
--- a/core/tests/Drupal/Tests/Component/Gettext/PoHeaderTest.php
+++ b/core/tests/Drupal/Tests/Component/Gettext/PoHeaderTest.php
@@ -49,7 +49,7 @@ public function testPluralsFormula($plural, $expected) {
    *   Pairs of plural expressions and expected plural positions keyed by plural
    *   value.
    */
-  public function providerTestPluralsFormula() {
+  public static function providerTestPluralsFormula() {
     return [
       [
         'nplurals=1; plural=0;',
diff --git a/core/tests/Drupal/Tests/Component/Gettext/PoStreamWriterTest.php b/core/tests/Drupal/Tests/Component/Gettext/PoStreamWriterTest.php
index f120955571dacdeebc7c90ab5040573f142495e5..d18888eecddd481f5441fa6a50d6dd277aa773a0 100644
--- a/core/tests/Drupal/Tests/Component/Gettext/PoStreamWriterTest.php
+++ b/core/tests/Drupal/Tests/Component/Gettext/PoStreamWriterTest.php
@@ -90,7 +90,7 @@ public function testWriteItem($poContent, $expected, $long) {
    *   - Written content.
    *   - Content longer than 10 bytes.
    */
-  public function providerWriteData() {
+  public static function providerWriteData() {
     // cSpell:disable
     return [
       ['', '', FALSE],
diff --git a/core/tests/Drupal/Tests/Component/Plugin/Context/ContextTest.php b/core/tests/Drupal/Tests/Component/Plugin/Context/ContextTest.php
index e48973a39f65f3f7fddca076c2285618224d5d96..4a6c28eae11903edfae7b937e4f048be69757c6b 100644
--- a/core/tests/Drupal/Tests/Component/Plugin/Context/ContextTest.php
+++ b/core/tests/Drupal/Tests/Component/Plugin/Context/ContextTest.php
@@ -16,7 +16,7 @@ class ContextTest extends TestCase {
   /**
    * Data provider for testGetContextValue.
    */
-  public function providerGetContextValue() {
+  public static function providerGetContextValue() {
     return [
       ['context_value', 'context_value', FALSE, 'data_type'],
       [NULL, NULL, FALSE, 'data_type'],
@@ -84,7 +84,7 @@ public function testGetContextValue($expected, $context_value, $is_required, $da
   /**
    * Data provider for testHasContextValue.
    */
-  public function providerHasContextValue() {
+  public static function providerHasContextValue() {
     return [
       [TRUE, FALSE],
       [TRUE, 0],
diff --git a/core/tests/Drupal/Tests/Component/Plugin/Discovery/AnnotatedClassDiscoveryTest.php b/core/tests/Drupal/Tests/Component/Plugin/Discovery/AnnotatedClassDiscoveryTest.php
index 28577e83c25e4a7c1ab160d045d130350c7cc342..6b7c905c28f3b597c6b279c4c6602afc3987c0e9 100644
--- a/core/tests/Drupal/Tests/Component/Plugin/Discovery/AnnotatedClassDiscoveryTest.php
+++ b/core/tests/Drupal/Tests/Component/Plugin/Discovery/AnnotatedClassDiscoveryTest.php
@@ -24,7 +24,7 @@ class AnnotatedClassDiscoveryTest extends TestCase {
    *
    * @var string[]
    */
-  public function provideBadAnnotations() {
+  public static function provideBadAnnotations() {
     return [
       ['addtogroup'],
       ['code'],
diff --git a/core/tests/Drupal/Tests/Component/Plugin/Discovery/DiscoveryCachedTraitTest.php b/core/tests/Drupal/Tests/Component/Plugin/Discovery/DiscoveryCachedTraitTest.php
index c6466ba669050a0d734de0a11cde504fe010bc40..ca63bff0cdad98362dd659b73b8e500a59775643 100644
--- a/core/tests/Drupal/Tests/Component/Plugin/Discovery/DiscoveryCachedTraitTest.php
+++ b/core/tests/Drupal/Tests/Component/Plugin/Discovery/DiscoveryCachedTraitTest.php
@@ -22,7 +22,7 @@ class DiscoveryCachedTraitTest extends TestCase {
    *   - Definitions to be returned by getDefinitions().
    *   - Plugin name to query for.
    */
-  public function providerGetDefinition() {
+  public static function providerGetDefinition() {
     return [
       ['definition', [], ['plugin_name' => 'definition'], 'plugin_name'],
       ['definition', ['plugin_name' => 'definition'], [], 'plugin_name'],
diff --git a/core/tests/Drupal/Tests/Component/Plugin/Discovery/DiscoveryTraitTest.php b/core/tests/Drupal/Tests/Component/Plugin/Discovery/DiscoveryTraitTest.php
index b18c95c0c3e7d31ce9bdfab76a46e4914b38792f..fce4210daec97fc4f60a89dd7de20e68ad6db6fb 100644
--- a/core/tests/Drupal/Tests/Component/Plugin/Discovery/DiscoveryTraitTest.php
+++ b/core/tests/Drupal/Tests/Component/Plugin/Discovery/DiscoveryTraitTest.php
@@ -21,7 +21,7 @@ class DiscoveryTraitTest extends TestCase {
    *   - Plugin definition array, to pass to doGetDefinition().
    *   - Plugin ID to get, passed to doGetDefinition().
    */
-  public function providerDoGetDefinition() {
+  public static function providerDoGetDefinition() {
     return [
       ['definition', ['plugin_name' => 'definition'], 'plugin_name'],
       [NULL, ['plugin_name' => 'definition'], 'bad_plugin_name'],
@@ -52,7 +52,7 @@ public function testDoGetDefinition($expected, $definitions, $plugin_id) {
    *   - Plugin definition array, to pass to doGetDefinition().
    *   - Plugin ID to get, passed to doGetDefinition().
    */
-  public function providerDoGetDefinitionException() {
+  public static function providerDoGetDefinitionException() {
     return [
       [FALSE, ['plugin_name' => 'definition'], 'bad_plugin_name'],
     ];
@@ -117,7 +117,7 @@ public function testGetDefinitionException($expected, $definitions, $plugin_id)
    *   - Expected TRUE or FALSE.
    *   - Plugin ID to look for.
    */
-  public function providerHasDefinition() {
+  public static function providerHasDefinition() {
     return [
       [TRUE, 'valid'],
       [FALSE, 'not_valid'],
diff --git a/core/tests/Drupal/Tests/Component/Plugin/Discovery/StaticDiscoveryDecoratorTest.php b/core/tests/Drupal/Tests/Component/Plugin/Discovery/StaticDiscoveryDecoratorTest.php
index b05a7be50281a7ce8b9ee8c987bdb1c9f21ae843..ef640f5dbf7245cf184d9991d235fe101e8b84f7 100644
--- a/core/tests/Drupal/Tests/Component/Plugin/Discovery/StaticDiscoveryDecoratorTest.php
+++ b/core/tests/Drupal/Tests/Component/Plugin/Discovery/StaticDiscoveryDecoratorTest.php
@@ -44,7 +44,7 @@ public function getRegisterDefinitionsCallback() {
    *   - A plugin definition.
    *   - Base plugin ID.
    */
-  public function providerGetDefinition() {
+  public static function providerGetDefinition() {
     return [
       ['is_defined', TRUE, FALSE, ['plugin-definition' => 'is_defined'], 'plugin-definition'],
       // Make sure we don't call the decorated method if we shouldn't.
@@ -116,7 +116,7 @@ public function testGetDefinition($expected, $has_register_definitions, $excepti
    *   - bool Whether the test mock has a callback.
    *   - array Plugin definitions.
    */
-  public function providerGetDefinitions() {
+  public static function providerGetDefinitions() {
     return [
       [TRUE, ['definition' => 'is_fake']],
       [FALSE, ['definition' => 'array_of_stuff']],
@@ -181,7 +181,7 @@ public function testGetDefinitions($has_register_definitions, $definitions) {
    *   - Array of arguments to pass to the method, with the expectation that our
    *     mocked __call() will return them.
    */
-  public function providerCall() {
+  public static function providerCall() {
     return [
       ['complexArguments', ['1', 2.0, 3, ['4' => 'five']]],
       ['noArguments', []],
diff --git a/core/tests/Drupal/Tests/Component/Plugin/Factory/ReflectionFactoryTest.php b/core/tests/Drupal/Tests/Component/Plugin/Factory/ReflectionFactoryTest.php
index d4446b188632a3a64e2ec10691baab2fe0ccf586..ccacab19e64fdc288bfe949638a9d7a496bb0f24 100644
--- a/core/tests/Drupal/Tests/Component/Plugin/Factory/ReflectionFactoryTest.php
+++ b/core/tests/Drupal/Tests/Component/Plugin/Factory/ReflectionFactoryTest.php
@@ -25,7 +25,7 @@ class ReflectionFactoryTest extends TestCase {
    *   - $plugin_definition parameter to getInstanceArguments().
    *   - $configuration parameter to getInstanceArguments().
    */
-  public function providerGetInstanceArguments() {
+  public static function providerGetInstanceArguments() {
     return [
       [
         ['arguments_plugin_id'],
diff --git a/core/tests/Drupal/Tests/Component/Plugin/PluginBaseTest.php b/core/tests/Drupal/Tests/Component/Plugin/PluginBaseTest.php
index f90fd02a9252c3255f282533694cbe0af6f0a319..e33cf214a759f62258a96a823cb83ce12ed60221 100644
--- a/core/tests/Drupal/Tests/Component/Plugin/PluginBaseTest.php
+++ b/core/tests/Drupal/Tests/Component/Plugin/PluginBaseTest.php
@@ -31,7 +31,7 @@ public function testGetPluginId($plugin_id, $expected) {
    *
    * @return array
    */
-  public function providerTestGetPluginId() {
+  public static function providerTestGetPluginId() {
     return [
       ['base_id', 'base_id'],
       ['base_id:derivative', 'base_id:derivative'],
@@ -58,7 +58,7 @@ public function testGetBaseId($plugin_id, $expected) {
    *
    * @return array
    */
-  public function providerTestGetBaseId() {
+  public static function providerTestGetBaseId() {
     return [
       ['base_id', 'base_id'],
       ['base_id:derivative', 'base_id'],
@@ -85,7 +85,7 @@ public function testGetDerivativeId($plugin_id = NULL, $expected = NULL) {
    *
    * @return array
    */
-  public function providerTestGetDerivativeId() {
+  public static function providerTestGetDerivativeId() {
     return [
       ['base_id', NULL],
       ['base_id:derivative', 'derivative'],
diff --git a/core/tests/Drupal/Tests/Component/Render/FormattableMarkupTest.php b/core/tests/Drupal/Tests/Component/Render/FormattableMarkupTest.php
index 57a79b185cfea115a59bd1df3b62a25d89f2ec3a..06a50ebd5bc7972c188f650b190a057299fa0769 100644
--- a/core/tests/Drupal/Tests/Component/Render/FormattableMarkupTest.php
+++ b/core/tests/Drupal/Tests/Component/Render/FormattableMarkupTest.php
@@ -69,7 +69,7 @@ public function testNullPlaceholder(string $expected, string $string, array $arg
    *
    * @return array
    */
-  public function providerTestNullPlaceholder() {
+  public static function providerTestNullPlaceholder() {
     return [
       ['', '@empty', ['@empty' => NULL], 'Deprecated NULL placeholder value for key (@empty) in: "@empty". This will throw a PHP error in drupal:11.0.0. See https://www.drupal.org/node/3318826'],
       ['', ':empty', [':empty' => NULL], 'Deprecated NULL placeholder value for key (:empty) in: ":empty". This will throw a PHP error in drupal:11.0.0. See https://www.drupal.org/node/3318826'],
@@ -117,7 +117,7 @@ public function testUnexpectedPlaceholder($string, $arguments, $error_number, $e
    *
    * @return array
    */
-  public function providerTestUnexpectedPlaceholder() {
+  public static function providerTestUnexpectedPlaceholder() {
     return [
       ['Non alpha, non-allowed starting character: ~placeholder', ['~placeholder' => 'replaced'], E_USER_WARNING, 'Placeholders must begin with one of the following "@", ":" or "%", invalid placeholder (~placeholder) with string: "Non alpha, non-allowed starting character: ~placeholder"'],
       ['Alpha starting character: placeholder', ['placeholder' => 'replaced'], NULL, ''],
diff --git a/core/tests/Drupal/Tests/Component/Serialization/YamlTest.php b/core/tests/Drupal/Tests/Component/Serialization/YamlTest.php
index 473de7a5eb8bb1bfd3c68cd22a7ae81f6c93edb0..e6ed083aff450b2daff3f6a23dbd5b737e853e6c 100644
--- a/core/tests/Drupal/Tests/Component/Serialization/YamlTest.php
+++ b/core/tests/Drupal/Tests/Component/Serialization/YamlTest.php
@@ -125,7 +125,7 @@ public function testObjectSupportDisabledSymfony() {
   /**
    * Data provider that lists all YAML files in core.
    */
-  public function providerYamlFilesInCore() {
+  public static function providerYamlFilesInCore() {
     $files = [];
     $dirs = new \RecursiveIteratorIterator(new \RecursiveDirectoryIterator(__DIR__ . '/../../../../../', \RecursiveDirectoryIterator::FOLLOW_SYMLINKS));
     foreach ($dirs as $dir) {
diff --git a/core/tests/Drupal/Tests/Component/Transliteration/PhpTransliterationTest.php b/core/tests/Drupal/Tests/Component/Transliteration/PhpTransliterationTest.php
index fa7f8ab14f063e2c7ef69d4649121671ca4d84ba..91efbb75866d484c6727396fc10fdb15d2f9e8d1 100644
--- a/core/tests/Drupal/Tests/Component/Transliteration/PhpTransliterationTest.php
+++ b/core/tests/Drupal/Tests/Component/Transliteration/PhpTransliterationTest.php
@@ -41,7 +41,7 @@ public function testRemoveDiacritics($original, $expected) {
    *   An array of arrays, each containing the parameters for
    *   self::testRemoveDiacritics().
    */
-  public function providerTestPhpTransliterationRemoveDiacritics() {
+  public static function providerTestPhpTransliterationRemoveDiacritics() {
     // cSpell:disable
     return [
       // Test all characters in the Unicode range 0x00bf to 0x017f.
diff --git a/core/tests/Drupal/Tests/Component/Utility/ArgumentsResolverTest.php b/core/tests/Drupal/Tests/Component/Utility/ArgumentsResolverTest.php
index 5411e6d15a5d435fd0c990d5c3835468596929d9..c20e800a7f9d9996b3267c4213c408f52d936ad5 100644
--- a/core/tests/Drupal/Tests/Component/Utility/ArgumentsResolverTest.php
+++ b/core/tests/Drupal/Tests/Component/Utility/ArgumentsResolverTest.php
@@ -33,7 +33,7 @@ public function testGetArgument($callable, $scalars, $objects, $wildcards, $expe
   /**
    * Provides test data to testGetArgument().
    */
-  public function providerTestGetArgument() {
+  public static function providerTestGetArgument() {
     $data = [];
 
     // Test an optional parameter with no provided value.
@@ -183,7 +183,7 @@ public function testHandleUnresolvedArgument($callable) {
   /**
    * Provides test data to testHandleUnresolvedArgument().
    */
-  public function providerTestHandleUnresolvedArgument() {
+  public static function providerTestHandleUnresolvedArgument() {
     $data = [];
     $data[] = [function ($foo) {}];
     $data[] = [[new TestClass(), 'access']];
diff --git a/core/tests/Drupal/Tests/Component/Utility/BytesTest.php b/core/tests/Drupal/Tests/Component/Utility/BytesTest.php
index b9294b6cae36eeb6ef80d09d1fc382c14ec1a188..3ec6e091316322ad5f010e4101b6435a7253476c 100644
--- a/core/tests/Drupal/Tests/Component/Utility/BytesTest.php
+++ b/core/tests/Drupal/Tests/Component/Utility/BytesTest.php
@@ -44,7 +44,7 @@ public function testToNumber($size, float $expected_number): void {
    *   \Drupal\Component\Utility\Bytes::toNumber(): size, and the expected
    *   return value with the expected type (float).
    */
-  public function providerTestToNumber(): array {
+  public static function providerTestToNumber(): array {
     return [
       ['1', 1.0],
       ['1 byte', 1.0],
@@ -98,7 +98,7 @@ public function testValidate($string, bool $expected_result): void {
    *   \Drupal\Component\Utility\Bytes::validate(): string, and the expected
    *   return value with the expected type (bool).
    */
-  public function providerTestValidate(): array {
+  public static function providerTestValidate(): array {
     return [
       // String not starting with a number.
       ['foo', FALSE],
diff --git a/core/tests/Drupal/Tests/Component/Utility/ColorTest.php b/core/tests/Drupal/Tests/Component/Utility/ColorTest.php
index d3b457e3f20d34c27f8584c067db7a264f404721..3f8983469355447c7d5210ce61368fb72ba79575 100644
--- a/core/tests/Drupal/Tests/Component/Utility/ColorTest.php
+++ b/core/tests/Drupal/Tests/Component/Utility/ColorTest.php
@@ -31,7 +31,7 @@ public function testValidateHex($expected, $value) {
   /**
    * Provides data for testValidateHex().
    */
-  public function providerTestValidateHex() {
+  public static function providerTestValidateHex() {
     return [
       // Tests length.
       [FALSE, ''],
@@ -98,7 +98,7 @@ public function testHexToRgb($value, $expected, $invalid = FALSE) {
    *     - The rgb color array value.
    *     - (optional) Boolean indicating invalid status. Defaults to FALSE.
    */
-  public function providerTestHexToRgb() {
+  public static function providerTestHexToRgb() {
     $invalid = [];
     // Any invalid arguments should throw an exception.
     foreach (['', '-1', '1', '12', '12345', '1234567', '123456789', '123456789a', 'foo'] as $value) {
@@ -155,7 +155,7 @@ public function testRgbToHex($value, $expected) {
    *     - The rgb color array value.
    *     - The hex color value.
    */
-  public function providerTestRbgToHex() {
+  public static function providerTestRbgToHex() {
     // Input using named RGB array (e.g., as returned by Color::hexToRgb()).
     $tests = [
       [['red' => 0, 'green' => 0, 'blue' => 0], '#000000'],
@@ -184,7 +184,7 @@ public function providerTestRbgToHex() {
    *     - The hex color value.
    *     - The 6 character length hex color value.
    */
-  public function providerTestNormalizeHexLength() {
+  public static function providerTestNormalizeHexLength() {
     $data = [
       ['#000', '#000000'],
       ['#FFF', '#FFFFFF'],
diff --git a/core/tests/Drupal/Tests/Component/Utility/CryptTest.php b/core/tests/Drupal/Tests/Component/Utility/CryptTest.php
index 8894d9cf21cb1a064015362b9eb45194f4a54316..b85bbcf9274266e89061d9e902a3f284f3f50fcb 100644
--- a/core/tests/Drupal/Tests/Component/Utility/CryptTest.php
+++ b/core/tests/Drupal/Tests/Component/Utility/CryptTest.php
@@ -71,7 +71,7 @@ public function testHmacBase64Invalid($data, $key) {
    *
    * @return array Test data.
    */
-  public function providerTestHashBase64() {
+  public static function providerTestHashBase64() {
     return [
       [
         'data' => 'The SHA (Secure Hash Algorithm) is one of a number of cryptographic hash functions. A cryptographic hash is like a signature for a text or a data file. SHA-256 algorithm generates an almost-unique, fixed size 256-bit (32-byte) hash. Hash is a one way function – it cannot be decrypted back. This makes it suitable for password validation, challenge hash authentication, anti-tamper, digital signatures.',
@@ -91,7 +91,7 @@ public function providerTestHashBase64() {
    *
    * @return array Test data.
    */
-  public function providerTestHmacBase64() {
+  public static function providerTestHmacBase64() {
     return [
       [
         'data' => 'Calculates a base-64 encoded, URL-safe sha-256 hmac.',
@@ -107,7 +107,7 @@ public function providerTestHmacBase64() {
    *
    * @return array Test data.
    */
-  public function providerTestHmacBase64Invalid() {
+  public static function providerTestHmacBase64Invalid() {
     return [
       [new \stdClass(), new \stdClass()],
       [new \stdClass(), 'string'],
diff --git a/core/tests/Drupal/Tests/Component/Utility/EnvironmentTest.php b/core/tests/Drupal/Tests/Component/Utility/EnvironmentTest.php
index 10a5c2800a8ade31138200802e8282c1de9e88c0..7f0ef7f0c9609b30117c0e6e7dd85708501ee578 100644
--- a/core/tests/Drupal/Tests/Component/Utility/EnvironmentTest.php
+++ b/core/tests/Drupal/Tests/Component/Utility/EnvironmentTest.php
@@ -45,7 +45,7 @@ public function testCheckMemoryLimit($required, $custom_memory_limit, $expected)
    *   \Drupal\Component\Utility\Environment::checkMemoryLimit():
    *   required and memory_limit, and the expected return value.
    */
-  public function providerTestCheckMemoryLimit() {
+  public static function providerTestCheckMemoryLimit() {
     return [
       // Minimal amount of memory should be available.
       ['30MB', NULL, TRUE],
diff --git a/core/tests/Drupal/Tests/Component/Utility/HtmlTest.php b/core/tests/Drupal/Tests/Component/Utility/HtmlTest.php
index 32dea1dfa5c774706fead415209b4a1c24aa3321..1f6cadd2bd3dd97bf2ae0d41636b147783b1c7e1 100644
--- a/core/tests/Drupal/Tests/Component/Utility/HtmlTest.php
+++ b/core/tests/Drupal/Tests/Component/Utility/HtmlTest.php
@@ -64,7 +64,7 @@ public function testCleanCssIdentifier($expected, $source, $filter = NULL) {
    * @return array
    *   Test data.
    */
-  public function providerTestCleanCssIdentifier() {
+  public static function providerTestCleanCssIdentifier() {
     $id1 = 'abcdefghijklmnopqrstuvwxyz_ABCDEFGHIJKLMNOPQRSTUVWXYZ-0123456789';
     $id2 = '¡¢£¤¥';
     $id3 = 'css__identifier__with__double__underscores';
@@ -132,7 +132,7 @@ public function testHtmlGetUniqueId($expected, $source, $reset = FALSE) {
    * @return array
    *   Test data.
    */
-  public function providerTestHtmlGetUniqueId() {
+  public static function providerTestHtmlGetUniqueId() {
     // cSpell:disable
     $id = 'abcdefghijklmnopqrstuvwxyz-0123456789';
     return [
@@ -184,7 +184,7 @@ public function testHtmlGetUniqueIdWithAjaxIds($expected, $source) {
    * @return array
    *   Test data.
    */
-  public function providerTestHtmlGetUniqueIdWithAjaxIds() {
+  public static function providerTestHtmlGetUniqueIdWithAjaxIds() {
     return [
       ['test-unique-id1--', 'test-unique-id1'],
       // Note, we truncate two hyphens at the end.
@@ -217,7 +217,7 @@ public function testHtmlGetId($expected, $source) {
    * @return array
    *   Test data.
    */
-  public function providerTestHtmlGetId() {
+  public static function providerTestHtmlGetId() {
     // cSpell:disable
     $id = 'abcdefghijklmnopqrstuvwxyz-0123456789';
     return [
@@ -249,7 +249,7 @@ public function testDecodeEntities($text, $expected) {
    *
    * @see testDecodeEntities()
    */
-  public function providerDecodeEntities() {
+  public static function providerDecodeEntities() {
     return [
       ['Drupal', 'Drupal'],
       ['<script>', '<script>'],
@@ -290,7 +290,7 @@ public function testEscape($expected, $text) {
    *
    * @see testEscape()
    */
-  public function providerEscape() {
+  public static function providerEscape() {
     return [
       ['Drupal', 'Drupal'],
       ['&lt;script&gt;', '<script>'],
@@ -364,7 +364,7 @@ public function testTransformRootRelativeUrlsToAbsoluteAssertion($scheme_and_hos
    * @return array
    *   Test data.
    */
-  public function providerTestTransformRootRelativeUrlsToAbsolute() {
+  public static function providerTestTransformRootRelativeUrlsToAbsolute() {
     $data = [];
 
     // Random generator.
@@ -409,7 +409,7 @@ public function providerTestTransformRootRelativeUrlsToAbsolute() {
    * @return array
    *   Test data.
    */
-  public function providerTestTransformRootRelativeUrlsToAbsoluteAssertion() {
+  public static function providerTestTransformRootRelativeUrlsToAbsoluteAssertion() {
     return [
       'only relative path' => ['llama'],
       'only root-relative path' => ['/llama'],
diff --git a/core/tests/Drupal/Tests/Component/Utility/ImageTest.php b/core/tests/Drupal/Tests/Component/Utility/ImageTest.php
index 5860e9bea3070e612be4804f6df901a10e44b5c7..c41af3179101f672eaf63105933c8d0f70572dbb 100644
--- a/core/tests/Drupal/Tests/Component/Utility/ImageTest.php
+++ b/core/tests/Drupal/Tests/Component/Utility/ImageTest.php
@@ -44,7 +44,7 @@ public function testScaleDimensions($input, $output) {
    *
    * @see testScaleDimensions()
    */
-  public function providerTestScaleDimensions() {
+  public static function providerTestScaleDimensions() {
     // Define input / output datasets to test different branch conditions.
     $tests = [];
 
diff --git a/core/tests/Drupal/Tests/Component/Utility/NestedArrayTest.php b/core/tests/Drupal/Tests/Component/Utility/NestedArrayTest.php
index f6f6873948236647d64ffa52b6c843cbee5480ab..f1d4436a5cfc53ebcfd8b39dad7ef6e60b2ba5fb 100644
--- a/core/tests/Drupal/Tests/Component/Utility/NestedArrayTest.php
+++ b/core/tests/Drupal/Tests/Component/Utility/NestedArrayTest.php
@@ -264,7 +264,7 @@ public function testFilter($array, $callable, $expected) {
     $this->assertEquals($expected, NestedArray::filter($array, $callable));
   }
 
-  public function providerTestFilter() {
+  public static function providerTestFilter() {
     $data = [];
     $data['1d-array'] = [
       [0, 1, '', TRUE], NULL, [1 => 1, 3 => TRUE],
diff --git a/core/tests/Drupal/Tests/Component/Utility/NumberTest.php b/core/tests/Drupal/Tests/Component/Utility/NumberTest.php
index f719ec07a3452c5d782479e1a8115d0829f2a875..3e06711db90374bf57f67c663f1fb04912a5d6ca 100644
--- a/core/tests/Drupal/Tests/Component/Utility/NumberTest.php
+++ b/core/tests/Drupal/Tests/Component/Utility/NumberTest.php
@@ -145,7 +145,7 @@ public function testConversions($value, $expected) {
    *     - The integer value.
    *     - The alphadecimal value.
    */
-  public function providerTestConversions() {
+  public static function providerTestConversions() {
     return [
       [0, '00'],
       [1, '01'],
diff --git a/core/tests/Drupal/Tests/Component/Utility/RectangleTest.php b/core/tests/Drupal/Tests/Component/Utility/RectangleTest.php
index 47d1c0c7a0aa64485ded9bbbb9d8a2066568ce9d..79d42ff079d9671935802f383f3ffe0d16cbc4b2 100644
--- a/core/tests/Drupal/Tests/Component/Utility/RectangleTest.php
+++ b/core/tests/Drupal/Tests/Component/Utility/RectangleTest.php
@@ -96,7 +96,7 @@ public function testRotateDimensions($width, $height, $angle, $exp_width, $exp_h
    *
    * @see testRotateDimensions()
    */
-  public function providerPhp55RotateDimensions() {
+  public static function providerPhp55RotateDimensions() {
     // The dataset is stored in a .json file because it is very large and causes
     // problems for PHPCS.
     return json_decode(file_get_contents(__DIR__ . '/fixtures/RectangleTest.json'));
diff --git a/core/tests/Drupal/Tests/Component/Utility/ReflectionTest.php b/core/tests/Drupal/Tests/Component/Utility/ReflectionTest.php
index f82392b189e2b32c99d7171daaba60a72579e0e8..1b15c34f331c950dc3ecaac84f834f9f16f52994 100644
--- a/core/tests/Drupal/Tests/Component/Utility/ReflectionTest.php
+++ b/core/tests/Drupal/Tests/Component/Utility/ReflectionTest.php
@@ -31,7 +31,7 @@ public function testGetParameterClassName(?string $expected, \ReflectionParamete
    *
    * @return array[]
    */
-  public function providerGetParameterClassName() {
+  public static function providerGetParameterClassName() {
     $reflection_method = new \ReflectionMethod(static::class, 'existsForTesting');
     $parameters = $reflection_method->getParameters();
     return [
diff --git a/core/tests/Drupal/Tests/Component/Utility/SortArrayTest.php b/core/tests/Drupal/Tests/Component/Utility/SortArrayTest.php
index 34b191184cdfb23328f57e1ae34c2a51f07438e0..f23aaf4bd87e9f97c309c409692d9e9c103944f4 100644
--- a/core/tests/Drupal/Tests/Component/Utility/SortArrayTest.php
+++ b/core/tests/Drupal/Tests/Component/Utility/SortArrayTest.php
@@ -44,7 +44,7 @@ public function testSortByWeightElement($a, $b, $expected) {
    *
    * @see \Drupal\Tests\Component\Utility\SortArrayTest::testSortByWeightElement()
    */
-  public function providerSortByWeightElement() {
+  public static function providerSortByWeightElement() {
     $tests = [];
 
     // Weights set and equal.
@@ -120,7 +120,7 @@ public function testSortByWeightProperty($a, $b, $expected) {
    *
    * @see \Drupal\Tests\Component\Utility\SortArrayTest::testSortByWeightProperty()
    */
-  public function providerSortByWeightProperty() {
+  public static function providerSortByWeightProperty() {
     $tests = [];
 
     // Weights set and equal.
@@ -196,7 +196,7 @@ public function testSortByTitleElement($a, $b, $expected) {
    *
    * @see \Drupal\Tests\Component\Utility\SortArrayTest::testSortByTitleElement()
    */
-  public function providerSortByTitleElement() {
+  public static function providerSortByTitleElement() {
     $tests = [];
 
     // Titles set and equal.
@@ -265,7 +265,7 @@ public function testSortByTitleProperty($a, $b, $expected) {
    *
    * @see \Drupal\Tests\Component\Utility\SortArrayTest::testSortByTitleProperty()
    */
-  public function providerSortByTitleProperty() {
+  public static function providerSortByTitleProperty() {
     $tests = [];
 
     // Titles set and equal.
diff --git a/core/tests/Drupal/Tests/Component/Utility/UnicodeTest.php b/core/tests/Drupal/Tests/Component/Utility/UnicodeTest.php
index 4c9d301337ffd861fab2cb39466e3393bb9806ff..6dfe031dd123e020f9c7e58b2feb5da485f856a4 100644
--- a/core/tests/Drupal/Tests/Component/Utility/UnicodeTest.php
+++ b/core/tests/Drupal/Tests/Component/Utility/UnicodeTest.php
@@ -36,7 +36,7 @@ public function testUcfirst($text, $expected) {
    * @return array
    *   An array containing a string and its uppercase first version.
    */
-  public function providerUcfirst() {
+  public static function providerUcfirst() {
     // cSpell:disable
     return [
       ['tHe QUIcK bRoWn', 'THe QUIcK bRoWn'],
@@ -67,7 +67,7 @@ public function testLcfirst($text, $expected) {
    * @return array
    *   An array containing a string and its lowercase version.
    */
-  public function providerLcfirst() {
+  public static function providerLcfirst() {
     // cSpell:disable
     return [
       ['tHe QUIcK bRoWn', 'tHe QUIcK bRoWn'],
@@ -98,7 +98,7 @@ public function testUcwords($text, $expected) {
    * @return array
    *   An array containing a string and its capitalized version.
    */
-  public function providerUcwords() {
+  public static function providerUcwords() {
     // cSpell:disable
     return [
       ['tHe QUIcK bRoWn', 'THe QUIcK BRoWn'],
@@ -136,7 +136,7 @@ public function testTruncate($text, $max_length, $expected, $wordsafe = FALSE, $
    *     - (optional) Boolean for the $wordsafe flag. Defaults to FALSE.
    *     - (optional) Boolean for the $add_ellipsis flag. Defaults to FALSE.
    */
-  public function providerTruncate() {
+  public static function providerTruncate() {
     // cSpell:disable
     $tests = [
       ['frànçAIS is über-åwesome', 24, 'frànçAIS is über-åwesome'],
@@ -229,7 +229,7 @@ public function testTruncateBytes($text, $max_length, $expected) {
    *   An array of arrays, each containing the parameters to
    *   self::testTruncateBytes().
    */
-  public function providerTestTruncateBytes() {
+  public static function providerTestTruncateBytes() {
     return [
       // String shorter than max length.
       ['Short string', 42, 'Short string'],
@@ -266,7 +266,7 @@ public function testValidateUtf8($text, $expected, $message) {
    *   An array of arrays, each containing the parameters for
    *   self::testValidateUtf8().
    */
-  public function providerTestValidateUtf8() {
+  public static function providerTestValidateUtf8() {
     return [
       // Empty string.
       ['', TRUE, 'An empty string did not validate.'],
@@ -303,7 +303,7 @@ public function testConvertToUtf8($data, $encoding, $expected) {
    *   An array of arrays, each containing the parameters to
    *   self::testConvertUtf8().  }
    */
-  public function providerTestConvertToUtf8() {
+  public static function providerTestConvertToUtf8() {
     return [
       [chr(0x97), 'Windows-1252', '—'],
       [chr(0x99), 'Windows-1252', 'â„¢'],
diff --git a/core/tests/Drupal/Tests/Component/Utility/UrlHelperTest.php b/core/tests/Drupal/Tests/Component/Utility/UrlHelperTest.php
index da578931b3ecdb43204d009b9f514d1999428ff2..c21fff98369eb8ecaaed41334d56b8f9589c5cde 100644
--- a/core/tests/Drupal/Tests/Component/Utility/UrlHelperTest.php
+++ b/core/tests/Drupal/Tests/Component/Utility/UrlHelperTest.php
@@ -19,7 +19,7 @@ class UrlHelperTest extends TestCase {
    *
    * @return array
    */
-  public function providerTestBuildQuery() {
+  public static function providerTestBuildQuery() {
     return [
       [['a' => ' &#//+%20@Ûž'], 'a=%20%26%23//%2B%2520%40%DB%9E', 'Value was properly encoded.'],
       [[' &#//+%20@Ûž' => 'a'], '%20%26%23%2F%2F%2B%2520%40%DB%9E=a', 'Key was properly encoded.'],
@@ -607,7 +607,7 @@ public function testExternalIsLocal($url, $base_url, $expected) {
    *
    * @see \Drupal\Tests\Component\Utility\UrlHelperTest::testExternalIsLocal()
    */
-  public function providerTestExternalIsLocal() {
+  public static function providerTestExternalIsLocal() {
     return [
       // Different mixes of trailing slash.
       ['http://example.com', 'http://example.com', TRUE],
@@ -660,7 +660,7 @@ public function testExternalIsLocalInvalid($url, $base_url) {
    *
    * @see \Drupal\Tests\Component\Utility\UrlHelperTest::testExternalIsLocalInvalid()
    */
-  public function providerTestExternalIsLocalInvalid() {
+  public static function providerTestExternalIsLocalInvalid() {
     return [
       ['http://example.com/foo', ''],
       ['http://example.com/foo', 'bar'],
diff --git a/core/tests/Drupal/Tests/Component/Utility/UserAgentTest.php b/core/tests/Drupal/Tests/Component/Utility/UserAgentTest.php
index d19292c62de67351c6f7428998f386d01a36a9b7..5a20f8df07908dd96ac040c05730303fd8129827 100644
--- a/core/tests/Drupal/Tests/Component/Utility/UserAgentTest.php
+++ b/core/tests/Drupal/Tests/Component/Utility/UserAgentTest.php
@@ -86,7 +86,7 @@ public function testGetBestMatchingLangcode($accept_language, $expected) {
    *   - An accept-language string.
    *   - Expected best matching language code.
    */
-  public function providerTestGetBestMatchingLangcode() {
+  public static function providerTestGetBestMatchingLangcode() {
     // Random generator.
     $random = new Random();
 
diff --git a/core/tests/Drupal/Tests/Component/Utility/VariableTest.php b/core/tests/Drupal/Tests/Component/Utility/VariableTest.php
index 196f0db029ce0c9f9d61e6e3f8fe88c3b4cdceb2..0df91d37e95ddceea6eaace7898868c180f12173 100644
--- a/core/tests/Drupal/Tests/Component/Utility/VariableTest.php
+++ b/core/tests/Drupal/Tests/Component/Utility/VariableTest.php
@@ -23,7 +23,7 @@ class VariableTest extends TestCase {
    * @return array[]
    *   Sets of arguments to pass to the test method.
    */
-  public function providerCallableToString(): array {
+  public static function providerCallableToString(): array {
     $mock = VariableTestMock::class;
     return [
       'string' => [
@@ -91,7 +91,7 @@ public function testCallableToString($callable, string $expected_name): void {
    *     - The expected export string.
    *     - The variable to export.
    */
-  public function providerTestExport() {
+  public static function providerTestExport() {
     return [
       // Array.
       [
diff --git a/core/tests/Drupal/Tests/Component/Utility/XssTest.php b/core/tests/Drupal/Tests/Component/Utility/XssTest.php
index 0f242959ebee394b88680254ab87dd8248625ecf..f781306dc83adfeb556404aef3169e48592307b2 100644
--- a/core/tests/Drupal/Tests/Component/Utility/XssTest.php
+++ b/core/tests/Drupal/Tests/Component/Utility/XssTest.php
@@ -93,7 +93,7 @@ public function testFilterXssNormalized($value, $expected, $message, array $allo
    *     - (optional) The allowed HTML tags array that should be passed to
    *       \Drupal\Component\Utility\Xss::filter().
    */
-  public function providerTestFilterXssNormalized() {
+  public static function providerTestFilterXssNormalized() {
     return [
       [
         "Who&#039;s Online",
@@ -160,7 +160,7 @@ public function testFilterXssNotNormalized($value, $expected, $message, array $a
    *     - (optional) The allowed HTML tags array that should be passed to
    *       \Drupal\Component\Utility\Xss::filter().
    */
-  public function providerTestFilterXssNotNormalized() {
+  public static function providerTestFilterXssNotNormalized() {
     $cases = [
       // Tag stripping, different ways to work around removal of HTML tags.
       [
@@ -465,7 +465,7 @@ public function testInvalidMultiByte($value, $expected, $message) {
    *     - The value to expect after filtering.
    *     - The assertion message.
    */
-  public function providerTestInvalidMultiByte() {
+  public static function providerTestInvalidMultiByte() {
     return [
       ["Foo\xC0barbaz", '', 'Xss::filter() accepted invalid sequence "Foo\xC0barbaz"'],
       ["Fooÿñ", "Fooÿñ", 'Xss::filter() rejects valid sequence Fooÿñ"'],
@@ -495,7 +495,7 @@ public function testAttribute($value, $expected, $message, $allowed_tags = NULL)
   /**
    * Data provider for testFilterXssAdminNotNormalized().
    */
-  public function providerTestAttributes() {
+  public static function providerTestAttributes() {
     return [
       [
         '<img src="http://example.com/foo.jpg" title="Example: title" alt="Example: alt" class="md:block">',
@@ -601,7 +601,7 @@ public function testFilterXssAdminNotNormalized($value, $expected, $message) {
    *     - The value to expect after filtering.
    *     - The assertion message.
    */
-  public function providerTestFilterXssAdminNotNormalized() {
+  public static function providerTestFilterXssAdminNotNormalized() {
     return [
       // DRUPAL-SA-2008-044
       ['<object />', 'object', 'Admin HTML filter -- should not allow object tag.'],
diff --git a/core/tests/Drupal/Tests/Component/Uuid/UuidTest.php b/core/tests/Drupal/Tests/Component/Uuid/UuidTest.php
index 3170d7ce07578a207c10ee6ff9a4137aa55b226e..77a5ed1fb96ba0fd1bbbdfa5c8560463fb607761 100644
--- a/core/tests/Drupal/Tests/Component/Uuid/UuidTest.php
+++ b/core/tests/Drupal/Tests/Component/Uuid/UuidTest.php
@@ -41,7 +41,7 @@ public function testUuidIsUnique(UuidInterface $instance) {
    *
    * @return array
    */
-  public function providerUuidInstances() {
+  public static function providerUuidInstances() {
 
     $instances = [];
     $instances[][] = new Php();
@@ -84,7 +84,7 @@ public function testValidation($uuid, $is_valid, $message) {
    *   - (bool) Whether or not the Uuid is valid.
    *   - Failure message.
    */
-  public function providerTestValidation() {
+  public static function providerTestValidation() {
     return [
       // These valid UUIDs.
       ['6ba7b810-9dad-11d1-80b4-00c04fd430c8', TRUE, 'Basic FQDN UUID did not validate'],
diff --git a/core/tests/Drupal/Tests/Composer/Generator/BuilderTest.php b/core/tests/Drupal/Tests/Composer/Generator/BuilderTest.php
index ca4b9701ef7aba9d8b27ceab5c32594402bfbdc3..a41153b4ee86f1bdf64b792db196e3aab9fcc4a5 100644
--- a/core/tests/Drupal/Tests/Composer/Generator/BuilderTest.php
+++ b/core/tests/Drupal/Tests/Composer/Generator/BuilderTest.php
@@ -20,7 +20,7 @@ class BuilderTest extends TestCase {
   /**
    * Provides test data for testBuilder.
    */
-  public function builderTestData() {
+  public static function builderTestData() {
     return [
       [
         DrupalCoreRecommendedBuilder::class,
diff --git a/core/tests/Drupal/Tests/Composer/Generator/MetapackageUpdateTest.php b/core/tests/Drupal/Tests/Composer/Generator/MetapackageUpdateTest.php
index 664ffd7a73a9f0f63c6d555a583d119849d3e161..dcadfe9989c52d0c629c15c4eb1755a3ee3239fc 100644
--- a/core/tests/Drupal/Tests/Composer/Generator/MetapackageUpdateTest.php
+++ b/core/tests/Drupal/Tests/Composer/Generator/MetapackageUpdateTest.php
@@ -22,7 +22,7 @@ class MetapackageUpdateTest extends TestCase {
   /**
    * Provides test data for testUpdated.
    */
-  public function updatedTestData() {
+  public static function updatedTestData() {
     return [
       [
         DrupalCoreRecommendedBuilder::class,
diff --git a/core/tests/Drupal/Tests/Composer/Generator/OverlapWithTopLevelDependenciesTest.php b/core/tests/Drupal/Tests/Composer/Generator/OverlapWithTopLevelDependenciesTest.php
index 69616f7fa63b39e073ff0fb9efaef1fc2af87618..2b0305f985093e72c5bdc525b9692ad01db231e4 100644
--- a/core/tests/Drupal/Tests/Composer/Generator/OverlapWithTopLevelDependenciesTest.php
+++ b/core/tests/Drupal/Tests/Composer/Generator/OverlapWithTopLevelDependenciesTest.php
@@ -16,7 +16,7 @@ class OverlapWithTopLevelDependenciesTest extends TestCase {
   /**
    * Provides data for testOverlapWithTemplateProject().
    */
-  public function templateProjectPathProvider() {
+  public static function templateProjectPathProvider() {
     return [
       [
         'composer/Template/RecommendedProject',
diff --git a/core/tests/Drupal/Tests/Composer/Plugin/ProjectMessage/ConfigTest.php b/core/tests/Drupal/Tests/Composer/Plugin/ProjectMessage/ConfigTest.php
index f1ed747139552af1cc8130ea25a1a686d3f2f028..4294472eb537e8008b42080d3474e34915df3852 100644
--- a/core/tests/Drupal/Tests/Composer/Plugin/ProjectMessage/ConfigTest.php
+++ b/core/tests/Drupal/Tests/Composer/Plugin/ProjectMessage/ConfigTest.php
@@ -24,7 +24,7 @@ public static function setUpBeforeClass(): void {
     ]);
   }
 
-  public function provideGetMessageText() {
+  public static function provideGetMessageText() {
     return [
       [[], []],
       [
diff --git a/core/tests/Drupal/Tests/Composer/Plugin/Scaffold/Functional/ScaffoldTest.php b/core/tests/Drupal/Tests/Composer/Plugin/Scaffold/Functional/ScaffoldTest.php
index 55ecf23c99c0425443024244aa93c6fbd8622b1e..eeef34bc571d1e99626eb5046622fd33045e628e 100644
--- a/core/tests/Drupal/Tests/Composer/Plugin/Scaffold/Functional/ScaffoldTest.php
+++ b/core/tests/Drupal/Tests/Composer/Plugin/Scaffold/Functional/ScaffoldTest.php
@@ -137,7 +137,7 @@ public function scaffoldSut($fixture_name, $is_link = FALSE, $relocated_docroot
   /**
    * Data provider for testScaffoldWithExpectedException.
    */
-  public function scaffoldExpectedExceptionTestValues() {
+  public static function scaffoldExpectedExceptionTestValues() {
     return [
       [
         'drupal-drupal-missing-scaffold-file',
@@ -200,7 +200,7 @@ public function testProjectThatScaffoldsEmptyProject() {
     $this->assertAutoloadFileCorrect($result->docroot());
   }
 
-  public function scaffoldOverridingSettingsExcludingHtaccessValues() {
+  public static function scaffoldOverridingSettingsExcludingHtaccessValues() {
     return [
       [
         'drupal-composer-drupal-project',
diff --git a/core/tests/Drupal/Tests/Composer/Plugin/VendorHardening/VendorHardeningPluginTest.php b/core/tests/Drupal/Tests/Composer/Plugin/VendorHardening/VendorHardeningPluginTest.php
index 0a5fcee9c451a9e9b9c16e467310bb47ee6eab95..e98ee24373bfc09dd01be4c826e21e44df7b2dd8 100644
--- a/core/tests/Drupal/Tests/Composer/Plugin/VendorHardening/VendorHardeningPluginTest.php
+++ b/core/tests/Drupal/Tests/Composer/Plugin/VendorHardening/VendorHardeningPluginTest.php
@@ -172,7 +172,7 @@ public function testWriteAccessRestrictionFiles() {
     $this->assertFileExists($dir . '/web.config');
   }
 
-  public function providerFindBinOverlap() {
+  public static function providerFindBinOverlap() {
     return [
       [
         [],
diff --git a/core/tests/Drupal/Tests/ComposerIntegrationTest.php b/core/tests/Drupal/Tests/ComposerIntegrationTest.php
index dedd187292233d77541bbfe3770b069b7ffbcd48..f37883e9ac4ce34e891dd48327f650cb3ba37518 100644
--- a/core/tests/Drupal/Tests/ComposerIntegrationTest.php
+++ b/core/tests/Drupal/Tests/ComposerIntegrationTest.php
@@ -135,7 +135,7 @@ public function testAllCoreComponentsReplaced(): void {
    *
    * @return array
    */
-  public function providerTestExpectedScaffoldFiles() {
+  public static function providerTestExpectedScaffoldFiles() {
     return [
       ['.editorconfig', 'assets/scaffold/files/editorconfig', '[project-root]'],
       ['.gitattributes', 'assets/scaffold/files/gitattributes', '[project-root]'],
diff --git a/core/tests/Drupal/Tests/Core/Access/AccessManagerTest.php b/core/tests/Drupal/Tests/Core/Access/AccessManagerTest.php
index 3b66a4f835aef926abfb15b4aab81d3b3bf588fe..8048eebf51e565cad44d3168d9e8e9d81612aea3 100644
--- a/core/tests/Drupal/Tests/Core/Access/AccessManagerTest.php
+++ b/core/tests/Drupal/Tests/Core/Access/AccessManagerTest.php
@@ -248,7 +248,7 @@ public function testCheckWithNullAccount() {
    *
    * @see \Drupal\Tests\Core\Access\AccessManagerTest::testCheckConjunctions()
    */
-  public function providerTestCheckConjunctions() {
+  public static function providerTestCheckConjunctions() {
     $access_allow = AccessResult::allowed();
     $access_deny = AccessResult::neutral();
     $access_kill = AccessResult::forbidden();
@@ -507,7 +507,7 @@ public function testCheckException($return_value) {
    *
    * @return array
    */
-  public function providerCheckException() {
+  public static function providerCheckException() {
     return [
       [[1]],
       ['string'],
diff --git a/core/tests/Drupal/Tests/Core/Access/AccessResultTest.php b/core/tests/Drupal/Tests/Core/Access/AccessResultTest.php
index ae25925f294334d5c0060239a457a42c660ab554..f9cd0e838c66726fb8c6d4c20cf5a2ac8e982732 100644
--- a/core/tests/Drupal/Tests/Core/Access/AccessResultTest.php
+++ b/core/tests/Drupal/Tests/Core/Access/AccessResultTest.php
@@ -584,7 +584,7 @@ public function testInheritCacheability() {
    *   does not implement CacheableDependencyInterface, then the result won't
    *   either. This is the case for bullets 3, 6 and 9 in the set above.
    */
-  public function andOrCacheabilityPropagationProvider() {
+  public static function andOrCacheabilityPropagationProvider() {
     // ct: cacheable=true, cf: cacheable=false, un: uncacheable.
     // Note: the test cases that have a "un" access result as the first operand
     // test UncacheableTestAccessResult, not AccessResult. However, we
@@ -940,7 +940,7 @@ public function testAllowedIfHasPermissions($permissions, $conjunction, AccessRe
    *
    * @return array
    */
-  public function providerTestAllowedIfHasPermissions() {
+  public static function providerTestAllowedIfHasPermissions() {
     $access_result = AccessResult::allowedIf(FALSE);
     $data[] = [[], 'AND', $access_result];
     $data[] = [[], 'OR', $access_result];
diff --git a/core/tests/Drupal/Tests/Core/Access/CsrfTokenGeneratorTest.php b/core/tests/Drupal/Tests/Core/Access/CsrfTokenGeneratorTest.php
index f81f9960b0dcc8001ee5a0795e7f557155ebb978..ea71f5e23ed29f272031e4d275ba2f8e0dc473bd 100644
--- a/core/tests/Drupal/Tests/Core/Access/CsrfTokenGeneratorTest.php
+++ b/core/tests/Drupal/Tests/Core/Access/CsrfTokenGeneratorTest.php
@@ -157,7 +157,7 @@ public function testValidateParameterTypes($token, $value) {
    * @return array
    *   An array of data used by the test.
    */
-  public function providerTestValidateParameterTypes() {
+  public static function providerTestValidateParameterTypes() {
     return [
       [[], ''],
       [TRUE, 'foo'],
@@ -189,7 +189,7 @@ public function testInvalidParameterTypes($token, $value = '') {
    * @return array
    *   An array of data used by the test.
    */
-  public function providerTestInvalidParameterTypes() {
+  public static function providerTestInvalidParameterTypes() {
     return [
       [NULL, new \stdClass()],
       [0, []],
diff --git a/core/tests/Drupal/Tests/Core/Ajax/AjaxCommandsTest.php b/core/tests/Drupal/Tests/Core/Ajax/AjaxCommandsTest.php
index 1f6b02bc188a6e66b25833b4d80a54f9c78c478e..8b92157a11133ec820cfaedf9132011e1c16f336 100644
--- a/core/tests/Drupal/Tests/Core/Ajax/AjaxCommandsTest.php
+++ b/core/tests/Drupal/Tests/Core/Ajax/AjaxCommandsTest.php
@@ -43,7 +43,7 @@ class AjaxCommandsTest extends UnitTestCase {
    *   - Array of css elements
    *   - Expected value
    */
-  public function providerCss() {
+  public static function providerCss() {
     return [
       'empty' => [
         [],
@@ -196,7 +196,7 @@ public function testAnnounceCommand($message, $priority, array $expected) {
   /**
    * Data provider for testAnnounceCommand().
    */
-  public function announceCommandProvider() {
+  public static function announceCommandProvider() {
     return [
       'no priority' => [
         'Things are going to change!',
diff --git a/core/tests/Drupal/Tests/Core/Annotation/PluralTranslationTest.php b/core/tests/Drupal/Tests/Core/Annotation/PluralTranslationTest.php
index 845e624685a92ee3047b7c5f105f1db667ef908b..48ef55692719057418318ab30a9e56e13b39b4da 100644
--- a/core/tests/Drupal/Tests/Core/Annotation/PluralTranslationTest.php
+++ b/core/tests/Drupal/Tests/Core/Annotation/PluralTranslationTest.php
@@ -58,7 +58,7 @@ public function testMissingData($data) {
     new PluralTranslation($data);
   }
 
-  public function providerTestMissingData() {
+  public static function providerTestMissingData() {
     $data = [];
     $data['all-missing'] = [[]];
     $data['singular-missing'] = [['plural' => 'muh']];
diff --git a/core/tests/Drupal/Tests/Core/Asset/AssetResolverTest.php b/core/tests/Drupal/Tests/Core/Asset/AssetResolverTest.php
index 41c53115e997af0e12e924ab59d7b9a831d0d352..4546b38a831997d0ef67042431fa64853bd82a74 100644
--- a/core/tests/Drupal/Tests/Core/Asset/AssetResolverTest.php
+++ b/core/tests/Drupal/Tests/Core/Asset/AssetResolverTest.php
@@ -146,7 +146,7 @@ public function testGetJsAssets(AttachedAssetsInterface $assets_a, AttachedAsset
     $this->assertCount($expected_cache_item_count * 2, $this->cache->getAllCids());
   }
 
-  public function providerAttachedAssets() {
+  public static function providerAttachedAssets() {
     $time = time();
     return [
       'same libraries, different timestamps' => [
diff --git a/core/tests/Drupal/Tests/Core/Asset/CssCollectionRendererUnitTest.php b/core/tests/Drupal/Tests/Core/Asset/CssCollectionRendererUnitTest.php
index bf3071056b9e97df7f6e7b90c805fe829366b60b..18fb5b7f7128e6821270720b19ded0126439776b 100644
--- a/core/tests/Drupal/Tests/Core/Asset/CssCollectionRendererUnitTest.php
+++ b/core/tests/Drupal/Tests/Core/Asset/CssCollectionRendererUnitTest.php
@@ -80,7 +80,7 @@ protected function setUp(): void {
    *
    * @see testRender
    */
-  public function providerTestRender() {
+  public static function providerTestRender() {
     $create_link_element = function ($href, $media = 'all', $custom_attributes = []) {
       $attributes = [
         'rel' => 'stylesheet',
diff --git a/core/tests/Drupal/Tests/Core/Asset/CssOptimizerUnitTest.php b/core/tests/Drupal/Tests/Core/Asset/CssOptimizerUnitTest.php
index 318f2c62b0e37139bc038d5f3ed296ca44f0e8da..2b7033ac8e13a1abbe660ba0ba085421819f91f6 100644
--- a/core/tests/Drupal/Tests/Core/Asset/CssOptimizerUnitTest.php
+++ b/core/tests/Drupal/Tests/Core/Asset/CssOptimizerUnitTest.php
@@ -52,7 +52,7 @@ protected function setUp(): void {
   /**
    * Provides data for the CSS asset optimizing test.
    */
-  public function providerTestOptimize() {
+  public static function providerTestOptimize() {
     $path = 'core/tests/Drupal/Tests/Core/Asset/css_test_files/';
     $absolute_path = dirname(__FILE__) . '/css_test_files/';
     return [
diff --git a/core/tests/Drupal/Tests/Core/Asset/JsOptimizerUnitTest.php b/core/tests/Drupal/Tests/Core/Asset/JsOptimizerUnitTest.php
index d698dcda17066693baf7790a028739f7b39ecbe9..e1da45e626a23fa17fe87cff4603bcb880fc9a27 100644
--- a/core/tests/Drupal/Tests/Core/Asset/JsOptimizerUnitTest.php
+++ b/core/tests/Drupal/Tests/Core/Asset/JsOptimizerUnitTest.php
@@ -38,7 +38,7 @@ protected function setUp(): void {
    * @return array
    *   An array of test data.
    */
-  public function providerTestClean() {
+  public static function providerTestClean() {
     $path = dirname(__FILE__) . '/js_test_files/';
     return [
       // File. Tests:
@@ -85,7 +85,7 @@ public function testClean($js_asset, $expected) {
    * @return array
    *   An array of test data.
    */
-  public function providerTestOptimize() {
+  public static function providerTestOptimize() {
     $path = dirname(__FILE__) . '/js_test_files/';
     return [
       0 => [
diff --git a/core/tests/Drupal/Tests/Core/Asset/LibraryDependencyResolverTest.php b/core/tests/Drupal/Tests/Core/Asset/LibraryDependencyResolverTest.php
index 40327713c063961836fc9b54d59c327ccacc9f00..705461e915e076a3f8de393eec9f8f6cc16f8e92 100644
--- a/core/tests/Drupal/Tests/Core/Asset/LibraryDependencyResolverTest.php
+++ b/core/tests/Drupal/Tests/Core/Asset/LibraryDependencyResolverTest.php
@@ -73,7 +73,7 @@ protected function setUp(): void {
   /**
    * Provides test data for ::testGetLibrariesWithDependencies().
    */
-  public function providerTestGetLibrariesWithDependencies() {
+  public static function providerTestGetLibrariesWithDependencies() {
     return [
       // Empty list of libraries.
       [[], []],
@@ -125,7 +125,7 @@ public function testGetLibrariesWithDependencies(array $libraries, array $expect
   /**
    * Provides test data for ::testGetMinimalRepresentativeSubset().
    */
-  public function providerTestGetMinimalRepresentativeSubset() {
+  public static function providerTestGetMinimalRepresentativeSubset() {
     return [
       // Empty list of libraries.
       [[], []],
diff --git a/core/tests/Drupal/Tests/Core/Asset/LibraryDiscoveryParserTest.php b/core/tests/Drupal/Tests/Core/Asset/LibraryDiscoveryParserTest.php
index aee09bc92bd14bedd2ee425125df14cfc059e1f4..3724faaf3f0b35567fa270d00f393ba4624ff94e 100644
--- a/core/tests/Drupal/Tests/Core/Asset/LibraryDiscoveryParserTest.php
+++ b/core/tests/Drupal/Tests/Core/Asset/LibraryDiscoveryParserTest.php
@@ -756,7 +756,7 @@ public function testCssAssert($extension, $exception_message) {
   /**
    * Data provider for testing bad CSS declarations.
    */
-  public function providerTestCssAssert() {
+  public static function providerTestCssAssert() {
     return [
       'css_bad_category' => ['css_bad_category', 'See https://www.drupal.org/node/2274843.'],
       'Improper CSS nesting' => ['css_bad_nesting', 'CSS must be nested under a category. See https://www.drupal.org/node/2274843.'],
diff --git a/core/tests/Drupal/Tests/Core/Authentication/AuthenticationManagerTest.php b/core/tests/Drupal/Tests/Core/Authentication/AuthenticationManagerTest.php
index d67b3309584c535a596fa0eec08d7a247237ea19..c988388f73d2dc3624e11b8032762735c2e9c093 100644
--- a/core/tests/Drupal/Tests/Core/Authentication/AuthenticationManagerTest.php
+++ b/core/tests/Drupal/Tests/Core/Authentication/AuthenticationManagerTest.php
@@ -64,7 +64,7 @@ public function testApplyFilterWithFilterProvider() {
   /**
    * Provides data to self::testDefaultFilter().
    */
-  public function providerTestDefaultFilter() {
+  public static function providerTestDefaultFilter() {
     $data = [];
     // No route, cookie is global, should apply.
     $data[] = [TRUE, FALSE, [], 'cookie', TRUE];
diff --git a/core/tests/Drupal/Tests/Core/Batch/PercentagesTest.php b/core/tests/Drupal/Tests/Core/Batch/PercentagesTest.php
index 128f4d5da8dcee8f5b3ebe227249627bb8bd3acc..58009604f43ef9c25c75ca2958882690f0b5f03e 100644
--- a/core/tests/Drupal/Tests/Core/Batch/PercentagesTest.php
+++ b/core/tests/Drupal/Tests/Core/Batch/PercentagesTest.php
@@ -32,7 +32,7 @@ public function testPercentages($total, $current, $expected_result) {
    * @return array
    *   An array of data used by the test.
    */
-  public function providerTestPercentages() {
+  public static function providerTestPercentages() {
     // Set up an array of test cases.
     return [
       // array(total, current, expected).
diff --git a/core/tests/Drupal/Tests/Core/Block/BlockBaseTest.php b/core/tests/Drupal/Tests/Core/Block/BlockBaseTest.php
index 0ac1f6c775cdbe982068f64872d1e1d82cb6993a..5d4d2cbf4e11934993d89c5241bf07d5ffb54f8a 100644
--- a/core/tests/Drupal/Tests/Core/Block/BlockBaseTest.php
+++ b/core/tests/Drupal/Tests/Core/Block/BlockBaseTest.php
@@ -47,7 +47,7 @@ public function testGetMachineNameSuggestion($label, $expected) {
   /**
    * Provides data for testGetMachineNameSuggestion().
    */
-  public function providerTestGetMachineNameSuggestion() {
+  public static function providerTestGetMachineNameSuggestion() {
     return [
       ['Admin label', 'adminlabel'],
       // cspell:disable-next-line
diff --git a/core/tests/Drupal/Tests/Core/Cache/CacheTest.php b/core/tests/Drupal/Tests/Core/Cache/CacheTest.php
index 71090f46c24dd9fb298ce15dc58c8a02b63cfcb0..8d14805b3ca530cdcc90c3cfc6074f1dd87a3ae4 100644
--- a/core/tests/Drupal/Tests/Core/Cache/CacheTest.php
+++ b/core/tests/Drupal/Tests/Core/Cache/CacheTest.php
@@ -53,7 +53,7 @@ public function validateTagsProvider() {
    *
    * @return array
    */
-  public function mergeTagsProvider() {
+  public static function mergeTagsProvider() {
     return [
       [[], [], []],
       [['bar', 'foo'], ['bar'], ['foo']],
@@ -80,7 +80,7 @@ public function testMergeTags(array $expected, ...$cache_tags) {
    *
    * @return array
    */
-  public function mergeMaxAgesProvider() {
+  public static function mergeMaxAgesProvider() {
     return [
       [Cache::PERMANENT, Cache::PERMANENT, Cache::PERMANENT],
       [60, 60, 60],
@@ -119,7 +119,7 @@ public function testMergeMaxAges($expected, ...$max_ages) {
    *
    * @return array
    */
-  public function mergeCacheContextsProvide() {
+  public static function mergeCacheContextsProvide() {
     return [
       [[], [], []],
       [['foo'], [], ['foo']],
@@ -158,7 +158,7 @@ public function testMergeCacheContexts(array $expected, ...$contexts) {
    *
    * @return array
    */
-  public function buildTagsProvider() {
+  public static function buildTagsProvider() {
     return [
       ['node', [1], ['node:1']],
       ['node', [1, 2, 3], ['node:1', 'node:2', 'node:3']],
diff --git a/core/tests/Drupal/Tests/Core/Cache/CacheableMetadataTest.php b/core/tests/Drupal/Tests/Core/Cache/CacheableMetadataTest.php
index d0b4c2f65361f23611f8634af9757c231f36da21..09fb21469a0df884edf8b310f4c470aed8766803 100644
--- a/core/tests/Drupal/Tests/Core/Cache/CacheableMetadataTest.php
+++ b/core/tests/Drupal/Tests/Core/Cache/CacheableMetadataTest.php
@@ -68,7 +68,7 @@ public function testAddCacheableDependency(CacheableMetadata $a, CacheableMetada
    *
    * @return array
    */
-  public function providerTestMerge() {
+  public static function providerTestMerge() {
     return [
       // All empty.
       [(new CacheableMetadata()), (new CacheableMetadata()), (new CacheableMetadata())],
@@ -122,7 +122,7 @@ public function testSetCacheMaxAge($data, $expect_exception) {
   /**
    * Data provider for testSetCacheMaxAge.
    */
-  public function providerSetCacheMaxAge() {
+  public static function providerSetCacheMaxAge() {
     return [
       [0 , FALSE],
       ['http', TRUE],
@@ -147,7 +147,7 @@ public function testCreateFromRenderArray(array $render_array, CacheableMetadata
    *
    * @return array
    */
-  public function providerTestCreateFromRenderArray() {
+  public static function providerTestCreateFromRenderArray() {
     $data = [];
 
     $empty_metadata = new CacheableMetadata();
@@ -183,7 +183,7 @@ public function testCreateFromObject($object, CacheableMetadata $expected) {
    *
    * @return array
    */
-  public function providerTestCreateFromObject() {
+  public static function providerTestCreateFromObject() {
     $data = [];
 
     $empty_metadata = new CacheableMetadata();
diff --git a/core/tests/Drupal/Tests/Core/Cache/Context/CacheContextsManagerTest.php b/core/tests/Drupal/Tests/Core/Cache/Context/CacheContextsManagerTest.php
index 0ba6ac354b3a163d5a36ec016c43c149c1d2e3a0..51afa3a9d424c317d2a5388f7c65f07f9ccd6b1d 100644
--- a/core/tests/Drupal/Tests/Core/Cache/Context/CacheContextsManagerTest.php
+++ b/core/tests/Drupal/Tests/Core/Cache/Context/CacheContextsManagerTest.php
@@ -66,7 +66,7 @@ public function testOptimizeTokens(array $context_tokens, array $optimized_conte
   /**
    * Provides a list of context token sets.
    */
-  public function providerTestOptimizeTokens() {
+  public static function providerTestOptimizeTokens() {
     return [
       [['a', 'x'], ['a', 'x']],
       [['a.b', 'x'], ['a.b', 'x']],
@@ -149,7 +149,7 @@ public function testInvalidCalculatedContext($context_token) {
   /**
    * Provides a list of invalid 'baz' cache contexts: the parameter is missing.
    */
-  public function providerTestInvalidCalculatedContext() {
+  public static function providerTestInvalidCalculatedContext() {
     return [
       ['baz'],
       ['baz:'],
@@ -200,7 +200,7 @@ protected function getMockContainer() {
    *
    * @return array
    */
-  public function validateTokensProvider() {
+  public static function validateTokensProvider() {
     return [
       [[], FALSE],
       [['foo'], FALSE],
diff --git a/core/tests/Drupal/Tests/Core/Cache/Context/CookieCacheContextTest.php b/core/tests/Drupal/Tests/Core/Cache/Context/CookieCacheContextTest.php
index 3dee9fc9475776174f85cef63ab28a0309848d42..8eef5a405063f455a6731ff9e393f5f16fd7e734 100644
--- a/core/tests/Drupal/Tests/Core/Cache/Context/CookieCacheContextTest.php
+++ b/core/tests/Drupal/Tests/Core/Cache/Context/CookieCacheContextTest.php
@@ -34,7 +34,7 @@ public function testGetContext($cookies, $cookie_name, $context) {
   /**
    * Provides a list of cookies and expected cache contexts.
    */
-  public function providerTestGetContext() {
+  public static function providerTestGetContext() {
     return [
       [['foo' => 1, 'bar' => 2, 'baz' => 3], 'foo', 1],
       // Context is ordered by cookie name.
diff --git a/core/tests/Drupal/Tests/Core/Cache/Context/HeadersCacheContextTest.php b/core/tests/Drupal/Tests/Core/Cache/Context/HeadersCacheContextTest.php
index 1a946b5760a866a0b9257541857dd0944c4922b9..f691ffe9da5a33612767844f63e33370dbc3a64d 100644
--- a/core/tests/Drupal/Tests/Core/Cache/Context/HeadersCacheContextTest.php
+++ b/core/tests/Drupal/Tests/Core/Cache/Context/HeadersCacheContextTest.php
@@ -34,7 +34,7 @@ public function testGetContext($headers, $header_name, $context) {
   /**
    * Provides a list of headers and expected cache contexts.
    */
-  public function providerTestGetContext() {
+  public static function providerTestGetContext() {
     return [
       [[], NULL, ''],
       [[], 'foo', ''],
diff --git a/core/tests/Drupal/Tests/Core/Cache/Context/PathParentCacheContextTest.php b/core/tests/Drupal/Tests/Core/Cache/Context/PathParentCacheContextTest.php
index 440e0e5c07d40d5cafd17dcb4a50e6a70d11466b..1d5b652ddbcb6cf669cb067bc2d804f9e4b16f3d 100644
--- a/core/tests/Drupal/Tests/Core/Cache/Context/PathParentCacheContextTest.php
+++ b/core/tests/Drupal/Tests/Core/Cache/Context/PathParentCacheContextTest.php
@@ -31,7 +31,7 @@ public function testGetContext($original_path, $context) {
   /**
    * Provides a list of paths and expected cache contexts.
    */
-  public function providerTestGetContext() {
+  public static function providerTestGetContext() {
     return [
       ['/some/path', 'some'],
       ['/some/other-path', 'some'],
diff --git a/core/tests/Drupal/Tests/Core/Cache/Context/ProtocolVersionCacheContextTest.php b/core/tests/Drupal/Tests/Core/Cache/Context/ProtocolVersionCacheContextTest.php
index 72f1de4094a1c12d1b05ef194afc002e97e4d71f..673cd4cc387f4995b4a1b5308525879744372d7f 100644
--- a/core/tests/Drupal/Tests/Core/Cache/Context/ProtocolVersionCacheContextTest.php
+++ b/core/tests/Drupal/Tests/Core/Cache/Context/ProtocolVersionCacheContextTest.php
@@ -32,7 +32,7 @@ public function testGetContext($protocol, $context) {
   /**
    * Provides a list of query arguments and expected cache contexts.
    */
-  public function providerTestGetContext() {
+  public static function providerTestGetContext() {
     return [
       ['HTTP/1.0', 'HTTP/1.0'],
       ['HTTP/1.1', 'HTTP/1.1'],
diff --git a/core/tests/Drupal/Tests/Core/Cache/Context/QueryArgsCacheContextTest.php b/core/tests/Drupal/Tests/Core/Cache/Context/QueryArgsCacheContextTest.php
index ae8009f24f2bfb6ba8adcfdef4deee029eac83cc..4ed09f3ae4d128fd4fe66c10e74071a2d2ec3562 100644
--- a/core/tests/Drupal/Tests/Core/Cache/Context/QueryArgsCacheContextTest.php
+++ b/core/tests/Drupal/Tests/Core/Cache/Context/QueryArgsCacheContextTest.php
@@ -31,7 +31,7 @@ public function testGetContext(array $query_args, $cache_context_parameter, $con
   /**
    * Provides a list of query arguments and expected cache contexts.
    */
-  public function providerTestGetContext() {
+  public static function providerTestGetContext() {
     return [
       [[], NULL, ''],
       [[], 'foo', ''],
diff --git a/core/tests/Drupal/Tests/Core/Cache/DatabaseBackendFactoryTest.php b/core/tests/Drupal/Tests/Core/Cache/DatabaseBackendFactoryTest.php
index d2c3ad1dd5453f6dc4a99e4cd7cd82e97220b94f..93666f28daf6d6bcae954e2ed681d4a743aa0ef5 100644
--- a/core/tests/Drupal/Tests/Core/Cache/DatabaseBackendFactoryTest.php
+++ b/core/tests/Drupal/Tests/Core/Cache/DatabaseBackendFactoryTest.php
@@ -37,7 +37,7 @@ public function testGet(array $settings, $expected_max_rows_foo, $expected_max_r
     $this->assertSame($expected_max_rows_bar, $database_backend_factory->get('bar')->getMaxRows());
   }
 
-  public function getProvider() {
+  public static function getProvider() {
     return [
       'default' => [
         [],
diff --git a/core/tests/Drupal/Tests/Core/Common/AttributesTest.php b/core/tests/Drupal/Tests/Core/Common/AttributesTest.php
index f2fd29e16dc088cbc0c9c7a0c1296fd609943eca..49321a4fa2a73f136bca8582d2d59d44dc37a774 100644
--- a/core/tests/Drupal/Tests/Core/Common/AttributesTest.php
+++ b/core/tests/Drupal/Tests/Core/Common/AttributesTest.php
@@ -19,7 +19,7 @@ class AttributesTest extends UnitTestCase {
    *
    * @return array
    */
-  public function providerTestAttributeData() {
+  public static function providerTestAttributeData() {
     return [
       // Verify that special characters are HTML encoded.
       [['&"\'<>' => 'value'], ' &amp;&quot;&#039;&lt;&gt;="value"', 'HTML encode attribute names.'],
diff --git a/core/tests/Drupal/Tests/Core/Config/ConfigDependencyManagerTest.php b/core/tests/Drupal/Tests/Core/Config/ConfigDependencyManagerTest.php
index 92a6342c262f19cfc25529e7ce2a59d2a1d867a2..a84b4f22bc58654e7b2f3443d2f18d0c2604853a 100644
--- a/core/tests/Drupal/Tests/Core/Config/ConfigDependencyManagerTest.php
+++ b/core/tests/Drupal/Tests/Core/Config/ConfigDependencyManagerTest.php
@@ -25,7 +25,7 @@ public function testSortAll(array $data, array $expected_order) {
     $this->assertEquals($expected_order, $dependency_manager->sortAll());
   }
 
-  public function providerTestSortAll() {
+  public static function providerTestSortAll() {
     $datasets[] = [
       [
         'provider.entity_b' => [],
diff --git a/core/tests/Drupal/Tests/Core/Config/ConfigFactoryOverrideBaseTest.php b/core/tests/Drupal/Tests/Core/Config/ConfigFactoryOverrideBaseTest.php
index d4ba1b1a0636a65186667cc6ff6840e12e4b48d3..8a01635b81fe6c24cd42360a3b1c8f5d5654aeed 100644
--- a/core/tests/Drupal/Tests/Core/Config/ConfigFactoryOverrideBaseTest.php
+++ b/core/tests/Drupal/Tests/Core/Config/ConfigFactoryOverrideBaseTest.php
@@ -26,7 +26,7 @@ public function testFilterNestedArray(array $original_data, array $override_data
     $this->assertEquals($override_data_after, $override_data_before);
   }
 
-  public function providerTestFilterNestedArray() {
+  public static function providerTestFilterNestedArray() {
     $data = [];
     $data['empty'] = [
       [],
diff --git a/core/tests/Drupal/Tests/Core/Config/ConfigTest.php b/core/tests/Drupal/Tests/Core/Config/ConfigTest.php
index 1bdc3cbd28afe2b215d8fbcd17458c5a290aad04..29032f8f54db59490a786f8de40c1ca38dd3ec1a 100644
--- a/core/tests/Drupal/Tests/Core/Config/ConfigTest.php
+++ b/core/tests/Drupal/Tests/Core/Config/ConfigTest.php
@@ -94,7 +94,7 @@ public function testSetName($name) {
    *
    * @see \Drupal\Tests\Core\Config\ConfigTest::testSetName()
    */
-  public function setNameProvider() {
+  public static function setNameProvider() {
     return [
       // Valid name with dot.
       [
@@ -400,7 +400,7 @@ public function testMerge($data, $data_to_merge, $merged_data) {
    *
    * @see \Drupal\Tests\Core\Config\ConfigTest::testMerge()
    */
-  public function mergeDataProvider() {
+  public static function mergeDataProvider() {
     return [
       [
         // Data.
@@ -435,7 +435,7 @@ public function testGetCacheTags() {
    *
    * @see \Drupal\Tests\Core\Config\ConfigTest::testValidateNameException()
    */
-  public function validateNameProvider() {
+  public static function validateNameProvider() {
     $return = [
       // Name missing namespace (dot).
       [
@@ -465,7 +465,7 @@ public function validateNameProvider() {
    * @see \Drupal\Tests\Core\Config\ConfigTest::testOverrideData()
    * @see \Drupal\Tests\Core\Config\ConfigTest::testDelete()
    */
-  public function overrideDataProvider() {
+  public static function overrideDataProvider() {
     $test_cases = [
       [
         // Original data.
@@ -539,7 +539,7 @@ public function overrideDataProvider() {
    *
    * @see \Drupal\Tests\Core\Config\ConfigTest::testClear()
    */
-  public function simpleDataProvider() {
+  public static function simpleDataProvider() {
     return [
       [
         [
@@ -560,7 +560,7 @@ public function simpleDataProvider() {
    * @see \Drupal\Tests\Core\Config\ConfigTest::testInitWithData()
    * @see \Drupal\Tests\Core\Config\ConfigTest::testNestedClear()
    */
-  public function nestedDataProvider() {
+  public static function nestedDataProvider() {
     return [
       [
         [
diff --git a/core/tests/Drupal/Tests/Core/Config/Entity/ConfigEntityTypeTest.php b/core/tests/Drupal/Tests/Core/Config/Entity/ConfigEntityTypeTest.php
index 09b47a11c3dcd63f35702cc27dffbdc327c1a698..9b22d95d0b6c27bfccf7d4ec252de03c2c0770e8 100644
--- a/core/tests/Drupal/Tests/Core/Config/Entity/ConfigEntityTypeTest.php
+++ b/core/tests/Drupal/Tests/Core/Config/Entity/ConfigEntityTypeTest.php
@@ -140,7 +140,7 @@ public function testGetConfigPrefix($definition, $expected) {
   /**
    * Provides test data.
    */
-  public function providerTestGetConfigPrefix() {
+  public static function providerTestGetConfigPrefix() {
     return [
       [['provider' => 'node', 'id' => 'node_type', 'config_prefix' => 'type'], 'node.type'],
       [['provider' => 'views', 'id' => 'view'], 'views.view'],
@@ -162,7 +162,7 @@ public function testGetPropertiesToExport($definition, $expected) {
     $this->assertSame($expected, $properties_to_export);
   }
 
-  public function providerGetPropertiesToExport() {
+  public static function providerGetPropertiesToExport() {
     $data = [];
     $data[] = [
       [
diff --git a/core/tests/Drupal/Tests/Core/Config/ReadOnlyStorageTest.php b/core/tests/Drupal/Tests/Core/Config/ReadOnlyStorageTest.php
index 69855da4c9c3e89c7b1b1168edad9c4b8dcc7be2..980d5fd47210df1085de11b30a1ed488e7e0ee79 100644
--- a/core/tests/Drupal/Tests/Core/Config/ReadOnlyStorageTest.php
+++ b/core/tests/Drupal/Tests/Core/Config/ReadOnlyStorageTest.php
@@ -67,7 +67,7 @@ public function testReadOperations($method, $arguments, $fixture) {
    * @return array
    *   The data.
    */
-  public function readMethodsProvider() {
+  public static function readMethodsProvider() {
     $fixture = [
       StorageInterface::DEFAULT_COLLECTION => ['config.a', 'config.b', 'other.a'],
     ];
diff --git a/core/tests/Drupal/Tests/Core/Config/StorageCopyTraitTest.php b/core/tests/Drupal/Tests/Core/Config/StorageCopyTraitTest.php
index 9b13f9328a53bc9b50a840ff1d84d339232eaecd..aa30d1028f0089aa679b0a49558c1c8cee942cfc 100644
--- a/core/tests/Drupal/Tests/Core/Config/StorageCopyTraitTest.php
+++ b/core/tests/Drupal/Tests/Core/Config/StorageCopyTraitTest.php
@@ -68,7 +68,7 @@ public function testReplaceStorageContents($source_collections, $target_collecti
   /**
    * Provides data for testCheckRequirements().
    */
-  public function providerTestReplaceStorageContents() {
+  public static function providerTestReplaceStorageContents() {
     $data = [];
     $data[] = [TRUE, TRUE];
     $data[] = [TRUE, FALSE];
diff --git a/core/tests/Drupal/Tests/Core/Controller/ControllerResolverTest.php b/core/tests/Drupal/Tests/Core/Controller/ControllerResolverTest.php
index 2f0335f24229e5dd55015850fe0b0a9e8bff6377..7ba733c18fa39d49d0f399f907899d068aaf124d 100644
--- a/core/tests/Drupal/Tests/Core/Controller/ControllerResolverTest.php
+++ b/core/tests/Drupal/Tests/Core/Controller/ControllerResolverTest.php
@@ -63,7 +63,7 @@ public function testCreateController($controller, $class, $output) {
   /**
    * Provides test data for testCreateController().
    */
-  public function providerTestCreateController() {
+  public static function providerTestCreateController() {
     return [
       // Tests class::method.
       ['Drupal\Tests\Core\Controller\MockController::getResult', 'Drupal\Tests\Core\Controller\MockController', 'This is a regular controller.'],
@@ -111,7 +111,7 @@ public function testGetController($attributes, $class, $output = NULL) {
   /**
    * Provides test data for testGetController().
    */
-  public function providerTestGetController() {
+  public static function providerTestGetController() {
     return [
       // Tests passing a controller via the request.
       [['_controller' => 'Drupal\Tests\Core\Controller\MockContainerAware::getResult'], 'Drupal\Tests\Core\Controller\MockContainerAware', 'This is container aware.'],
@@ -134,7 +134,7 @@ public function testGetControllerFromDefinition($definition, $output) {
   /**
    * Provides test data for testGetControllerFromDefinition().
    */
-  public function providerTestGetControllerFromDefinition() {
+  public static function providerTestGetControllerFromDefinition() {
     return [
       // Tests a method on an object.
       [[new MockController(), 'getResult'], 'This is a regular controller.'],
diff --git a/core/tests/Drupal/Tests/Core/Cron/CronSuspendQueueDelayTest.php b/core/tests/Drupal/Tests/Core/Cron/CronSuspendQueueDelayTest.php
index 2738682e9954990ce0d804b93b5a4ea973d5b75a..687e75e154f519d23bf1eb092c123b1f28535d2c 100644
--- a/core/tests/Drupal/Tests/Core/Cron/CronSuspendQueueDelayTest.php
+++ b/core/tests/Drupal/Tests/Core/Cron/CronSuspendQueueDelayTest.php
@@ -285,7 +285,7 @@ public function testSuspendQueueThreshold(float $threshold, float $suspendQueueD
    * @return array
    *   Scenarios for testing.
    */
-  public function providerSuspendQueueThreshold(): array {
+  public static function providerSuspendQueueThreshold(): array {
     $scenarios = [];
     $scenarios['cron will wait for the queue, and rerun'] = [
       15.0,
diff --git a/core/tests/Drupal/Tests/Core/CronTest.php b/core/tests/Drupal/Tests/Core/CronTest.php
index 09d3d5325b8040d9b0f83e5a20f2b09449efb032..226c3e8cdac2ccf9631105bd98b1ff6795fb741b 100644
--- a/core/tests/Drupal/Tests/Core/CronTest.php
+++ b/core/tests/Drupal/Tests/Core/CronTest.php
@@ -172,7 +172,7 @@ protected function resetTestingState() {
   /**
    * Data provider for ::testProcessQueues() method.
    */
-  public function processQueuesTestData() {
+  public static function processQueuesTestData() {
     return [
       ['Complete', 'assertFalse', 0],
       ['Exception', 'assertTrue', 1],
diff --git a/core/tests/Drupal/Tests/Core/Database/ConditionTest.php b/core/tests/Drupal/Tests/Core/Database/ConditionTest.php
index 4e6908694bc1d38e6d1cf7bfc3c8be9a08fa8fa8..0cd5b4fcd3c3f120ee6b70e87532187fbccb1381 100644
--- a/core/tests/Drupal/Tests/Core/Database/ConditionTest.php
+++ b/core/tests/Drupal/Tests/Core/Database/ConditionTest.php
@@ -27,7 +27,7 @@ class ConditionTest extends UnitTestCase {
    *   - Expected result for the string version of the condition.
    *   - The field name to input in the condition.
    */
-  public function providerSimpleCondition() {
+  public static function providerSimpleCondition() {
     return [
       ['name = :db_condition_placeholder_0', 'name'],
       ['name123 = :db_condition_placeholder_0', 'name-123'],
@@ -113,7 +113,7 @@ public function testCompileWithKnownOperators($expected, $field, $value, $operat
    *
    * @return array
    */
-  public function dataProviderTestCompileWithKnownOperators() {
+  public static function dataProviderTestCompileWithKnownOperators() {
     // Below are a list of commented out test cases, which should work but
     // aren't directly supported by core, but instead need manual handling with
     // prefix/suffix at the moment.
@@ -173,7 +173,7 @@ public function testCompileWithSqlInjectionForOperator($operator) {
     $condition->compile($connection, $query_placeholder);
   }
 
-  public function providerTestCompileWithSqlInjectionForOperator() {
+  public static function providerTestCompileWithSqlInjectionForOperator() {
     $data = [];
     $data[] = ["IS NOT NULL) ;INSERT INTO {test} (name) VALUES ('test12345678'); -- "];
     $data[] = ["IS NOT NULL) UNION ALL SELECT name, pass FROM {users_field_data} -- "];
diff --git a/core/tests/Drupal/Tests/Core/Database/ConnectionTest.php b/core/tests/Drupal/Tests/Core/Database/ConnectionTest.php
index 2522a8947619b1b19fc734479089195c32f4f270..7447460984ebff55ba9e4bb369e4c33d720fea55 100644
--- a/core/tests/Drupal/Tests/Core/Database/ConnectionTest.php
+++ b/core/tests/Drupal/Tests/Core/Database/ConnectionTest.php
@@ -28,7 +28,7 @@ class ConnectionTest extends UnitTestCase {
    *   - Arguments to pass to Connection::setPrefix().
    *   - Expected result from Connection::tablePrefix().
    */
-  public function providerPrefixRoundTrip() {
+  public static function providerPrefixRoundTrip() {
     return [
       [
         [
@@ -77,7 +77,7 @@ public function testPrefixRoundTrip($expected, $prefix_info) {
    *   - Query to be prefixed.
    *   - Quote identifier.
    */
-  public function providerTestPrefixTables() {
+  public static function providerTestPrefixTables() {
     return [
       [
         'SELECT * FROM test_table',
@@ -126,7 +126,7 @@ public function testPrefixTables($expected, $prefix_info, $query, array $quote_i
    *   - Namespace.
    *   - Class name without namespace.
    */
-  public function providerGetDriverClass() {
+  public static function providerGetDriverClass() {
     return [
       [
         'nonexistent_class',
@@ -355,7 +355,7 @@ public function testGetDriverClass($expected, $namespace, $class) {
    *   - Driver for PDO connection.
    *   - Namespace for connection.
    */
-  public function providerSchema() {
+  public static function providerSchema() {
     return [
       [
         'Drupal\\Tests\\Core\\Database\\Stub\\Driver\\Schema',
@@ -385,7 +385,7 @@ public function testSchema($expected, $driver, $namespace) {
    *   - Expected filtered comment.
    *   - Arguments for Connection::makeComment().
    */
-  public function providerMakeComments() {
+  public static function providerMakeComments() {
     return [
       [
         '/*  */ ',
@@ -421,7 +421,7 @@ public function testMakeComments($expected, $comment_array) {
    *   - Expected filtered comment.
    *   - Comment to filter.
    */
-  public function providerFilterComments() {
+  public static function providerFilterComments() {
     return [
       ['', ''],
       ['Exploit  *  / DROP TABLE node. --', 'Exploit * / DROP TABLE node; --'],
@@ -456,7 +456,7 @@ public function testFilterComments($expected, $comment) {
    *   testEscapeField. The first value is the expected value, and the second
    *   value is the value to test.
    */
-  public function providerEscapeTables() {
+  public static function providerEscapeTables() {
     return [
       ['nocase', 'nocase'],
       ['camelCase', 'camelCase'],
@@ -491,7 +491,7 @@ public function testEscapeTable($expected, $name, array $identifier_quote = ['"'
    *   - Expected escaped string.
    *   - String to escape.
    */
-  public function providerEscapeAlias() {
+  public static function providerEscapeAlias() {
     return [
       ['!nocase!', 'nocase', ['!', '!']],
       ['`backtick`', 'backtick', ['`', '`']],
@@ -522,7 +522,7 @@ public function testEscapeAlias($expected, $name, array $identifier_quote = ['"'
    *   - Expected escaped string.
    *   - String to escape.
    */
-  public function providerEscapeFields() {
+  public static function providerEscapeFields() {
     return [
       ['/title/', 'title', ['/', '/']],
       ['`backtick`', 'backtick', ['`', '`']],
@@ -556,7 +556,7 @@ public function testEscapeField($expected, $name, array $identifier_quote = ['"'
    *   testEscapeField. The first value is the expected value, and the second
    *   value is the value to test.
    */
-  public function providerEscapeDatabase() {
+  public static function providerEscapeDatabase() {
     return [
       ['/name/', 'name', ['/', '/']],
       ['`backtick`', 'backtick', ['`', '`']],
@@ -628,7 +628,7 @@ public function testQueryTrim($expected, $query, $options) {
    *   - Padded query.
    *   - Query options.
    */
-  public function provideQueriesToTrim() {
+  public static function provideQueriesToTrim() {
     return [
       'remove_non_breaking_space' => [
         'SELECT * FROM test',
@@ -735,7 +735,7 @@ public function testFindCallerFromDebugBacktraceWithMockedBacktrace(string $driv
    *
    * @see ::testFindCallerFromDebugBacktraceWithMockedBacktrace()
    */
-  public function providerMockedBacktrace(): array {
+  public static function providerMockedBacktrace(): array {
     $stack = [
       [
         'file' => '/var/www/core/lib/Drupal/Core/Database/Log.php',
diff --git a/core/tests/Drupal/Tests/Core/Database/DatabaseTest.php b/core/tests/Drupal/Tests/Core/Database/DatabaseTest.php
index 38f518fc9f2ca9abd77e1f61746f565ee47a980f..87a62f9026a21d9531f82c1cbcfb341b1d5db196 100644
--- a/core/tests/Drupal/Tests/Core/Database/DatabaseTest.php
+++ b/core/tests/Drupal/Tests/Core/Database/DatabaseTest.php
@@ -88,7 +88,7 @@ public function testFindDriverAutoloadDirectory($expected, $namespace, $include_
    *
    * @return array
    */
-  public function providerFindDriverAutoloadDirectory() {
+  public static function providerFindDriverAutoloadDirectory() {
     return [
       'core mysql' => ['core/modules/mysql/src/Driver/Database/mysql/', 'Drupal\mysql\Driver\Database\mysql', FALSE],
       'D8 custom fake' => [FALSE, 'Drupal\Driver\Database\CoreFake', TRUE],
@@ -113,7 +113,7 @@ public function testFindDriverAutoloadDirectoryException($expected_message, $nam
    *
    * @return array
    */
-  public function providerFindDriverAutoloadDirectoryException() {
+  public static function providerFindDriverAutoloadDirectoryException() {
     return [
       'test module but tests not included' => [
         "The database_driver Drupal\driver_test\Driver\Database\DrivertestMysql does not exist.",
diff --git a/core/tests/Drupal/Tests/Core/Database/InstallerObjectTest.php b/core/tests/Drupal/Tests/Core/Database/InstallerObjectTest.php
index 460fe1129372c0c5caec70f666a41009df6481a9..85ee0d5fd7c0212d955668bdbf4a751198b0e32b 100644
--- a/core/tests/Drupal/Tests/Core/Database/InstallerObjectTest.php
+++ b/core/tests/Drupal/Tests/Core/Database/InstallerObjectTest.php
@@ -59,7 +59,7 @@ public function testDbInstallerObject($driver, $namespace, $expected_class_name)
    *   - namespace: The namespace providing the driver.
    *   - class: The fully qualified class name of the expected install task.
    */
-  public function providerDbInstallerObject() {
+  public static function providerDbInstallerObject() {
     return [
       // A driver only in the core namespace.
       ['mysql', "Drupal\\mysql\\Driver\\Database\\mysql", MysqlInstallTasks::class],
diff --git a/core/tests/Drupal/Tests/Core/Database/RowCountExceptionTest.php b/core/tests/Drupal/Tests/Core/Database/RowCountExceptionTest.php
index 9610b5249892f5e6512f649836ede54503e11a50..aa978be52e60b645b0a7a3e81fb5896e92af1e81 100644
--- a/core/tests/Drupal/Tests/Core/Database/RowCountExceptionTest.php
+++ b/core/tests/Drupal/Tests/Core/Database/RowCountExceptionTest.php
@@ -24,7 +24,7 @@ class RowCountExceptionTest extends UnitTestCase {
    *
    * @return array
    */
-  public function providerTestExceptionMessage() {
+  public static function providerTestExceptionMessage() {
     return [
       [static::DEFAULT_EXCEPTION_MESSAGE, ''],
       ['test', 'test'],
diff --git a/core/tests/Drupal/Tests/Core/Database/UrlConversionTest.php b/core/tests/Drupal/Tests/Core/Database/UrlConversionTest.php
index 6f87304b590b47b990fdca6c876777faf9ae8afb..c2e8f1352332037429af851d104d9974c566d8ef 100644
--- a/core/tests/Drupal/Tests/Core/Database/UrlConversionTest.php
+++ b/core/tests/Drupal/Tests/Core/Database/UrlConversionTest.php
@@ -41,7 +41,7 @@ public function testDbUrlToConnectionConversion($url, $database_array, $include_
    *   - url: The full URL string to be tested.
    *   - database_array: An array containing the expected results.
    */
-  public function providerConvertDbUrlToConnectionInfo() {
+  public static function providerConvertDbUrlToConnectionInfo() {
     $root = dirname(__FILE__, 7);
     return [
       'MySql without prefix' => [
@@ -293,7 +293,7 @@ public function testGetInvalidArgumentExceptionInUrlConversion($url, $root, $exp
    *   - Drupal root string.
    *   - The expected exception message.
    */
-  public function providerInvalidArgumentsUrlConversion() {
+  public static function providerInvalidArgumentsUrlConversion() {
     return [
       ['foo', '', "Missing scheme in URL 'foo'"],
       ['foo', 'bar', "Missing scheme in URL 'foo'"],
@@ -325,7 +325,7 @@ public function testGetConnectionInfoAsUrl(array $info, $expected_url) {
    *     database, username, password, prefix, host, port, namespace and driver.
    *   - The expected URL after conversion.
    */
-  public function providerGetConnectionInfoAsUrl() {
+  public static function providerGetConnectionInfoAsUrl() {
     $info1 = [
       'database' => 'test_database',
       'username' => 'test_user',
@@ -477,7 +477,7 @@ public function testGetInvalidArgumentGetConnectionInfoAsUrl(array $connection_o
    *     database, username, password, prefix, host, port, namespace and driver.
    *   - The expected exception message.
    */
-  public function providerInvalidArgumentGetConnectionInfoAsUrl() {
+  public static function providerInvalidArgumentGetConnectionInfoAsUrl() {
     return [
       'Missing database key' => [
         [
diff --git a/core/tests/Drupal/Tests/Core/Datetime/DateHelperTest.php b/core/tests/Drupal/Tests/Core/Datetime/DateHelperTest.php
index e9295ad379bd115b1f3ee6a6a21873519e7e868f..41ca72ba1ff709d29545eef569f618e49f161b8e 100644
--- a/core/tests/Drupal/Tests/Core/Datetime/DateHelperTest.php
+++ b/core/tests/Drupal/Tests/Core/Datetime/DateHelperTest.php
@@ -60,7 +60,7 @@ public function testWeekDaysOrdered($first_day, $expected) {
     $this->assertSame($expected, DateHelper::weekDaysOrdered($weekdays));
   }
 
-  public function providerTestWeekDaysOrdered() {
+  public static function providerTestWeekDaysOrdered() {
     $data = [];
     $data[] = [
       0,
diff --git a/core/tests/Drupal/Tests/Core/Datetime/DateTest.php b/core/tests/Drupal/Tests/Core/Datetime/DateTest.php
index c9010bdcd7c7bd81b6d4a3c00075a302f2dfcbb8..39d9c54850f161110cb14dadce8e0913bccb92fe 100644
--- a/core/tests/Drupal/Tests/Core/Datetime/DateTest.php
+++ b/core/tests/Drupal/Tests/Core/Datetime/DateTest.php
@@ -124,7 +124,7 @@ public function testFormatInterval($interval, $granularity, $expected, $langcode
   /**
    * Provides some test data for the format interval test.
    */
-  public function providerTestFormatInterval() {
+  public static function providerTestFormatInterval() {
     $data = [
       // Checks for basic seconds.
       [1, 1, '1 sec'],
diff --git a/core/tests/Drupal/Tests/Core/Datetime/DrupalDateTimeTest.php b/core/tests/Drupal/Tests/Core/Datetime/DrupalDateTimeTest.php
index fc0213793f135352cc4fb713c7909b5be5c9648e..53467b6d7895561a12b859bfcb1260e3168307b6 100644
--- a/core/tests/Drupal/Tests/Core/Datetime/DrupalDateTimeTest.php
+++ b/core/tests/Drupal/Tests/Core/Datetime/DrupalDateTimeTest.php
@@ -62,7 +62,7 @@ public function testInvalidDateDiff($input1, $input2, $absolute) {
    *
    * @see DrupalDateTimeTest::testDateDiff()
    */
-  public function providerTestDateDiff() {
+  public static function providerTestDateDiff() {
 
     $settings = ['langcode' => 'en'];
 
@@ -145,7 +145,7 @@ public function providerTestDateDiff() {
    *
    * @see DateTimePlusTest::testInvalidDateDiff()
    */
-  public function providerTestInvalidDateDiff() {
+  public static function providerTestInvalidDateDiff() {
     $settings = ['langcode' => 'en'];
     $utc_tz = new \DateTimeZone('UTC');
     return [
diff --git a/core/tests/Drupal/Tests/Core/DependencyInjection/YamlFileLoaderTest.php b/core/tests/Drupal/Tests/Core/DependencyInjection/YamlFileLoaderTest.php
index 7f55c404fb232db90885f3ed0e1d3d099a44e199..dcf9c974afaa4a84ec5f618a0c607ca3bf02b686 100644
--- a/core/tests/Drupal/Tests/Core/DependencyInjection/YamlFileLoaderTest.php
+++ b/core/tests/Drupal/Tests/Core/DependencyInjection/YamlFileLoaderTest.php
@@ -80,7 +80,7 @@ public function testExceptions($yml, $message) {
     $yaml_file_loader->load('vfs://drupal/modules/example/example.yml');
   }
 
-  public function providerTestExceptions() {
+  public static function providerTestExceptions() {
     return [
       '_defaults must be an array' => [<<<YAML
 services:
diff --git a/core/tests/Drupal/Tests/Core/Display/DisplayVariantTest.php b/core/tests/Drupal/Tests/Core/Display/DisplayVariantTest.php
index 71a39d0cfb90f0e80120c0baaeb5ad286a33ac11..e8555b9bc3f86beee2f3212c0849391da66838e9 100644
--- a/core/tests/Drupal/Tests/Core/Display/DisplayVariantTest.php
+++ b/core/tests/Drupal/Tests/Core/Display/DisplayVariantTest.php
@@ -87,7 +87,7 @@ public function testGetConfiguration($configuration, $expected) {
   /**
    * Provides test data for testGetConfiguration().
    */
-  public function providerTestGetConfiguration() {
+  public static function providerTestGetConfiguration() {
     $data = [];
     $data[] = [
       [],
diff --git a/core/tests/Drupal/Tests/Core/DrupalKernel/DrupalKernelTest.php b/core/tests/Drupal/Tests/Core/DrupalKernel/DrupalKernelTest.php
index 8c86bd922e1b5d347905d3a0555fbe6ed84a5a9f..dee0d58572a091b435439482e7e562c9d8b4270c 100644
--- a/core/tests/Drupal/Tests/Core/DrupalKernel/DrupalKernelTest.php
+++ b/core/tests/Drupal/Tests/Core/DrupalKernel/DrupalKernelTest.php
@@ -55,7 +55,7 @@ public function testTrustedHosts($host, $server_name, $message, $expected = FALS
   /**
    * Provides test data for testTrustedHosts().
    */
-  public function providerTestTrustedHosts() {
+  public static function providerTestTrustedHosts() {
     $data = [];
 
     // Tests canonical URL.
diff --git a/core/tests/Drupal/Tests/Core/DrupalKernel/ValidateHostnameTest.php b/core/tests/Drupal/Tests/Core/DrupalKernel/ValidateHostnameTest.php
index 8e440aefff960fec2c81e5b4d5d2d37a5a4cceb0..4be76598eeb100c2a4d80b7d58126dbdbc909018 100644
--- a/core/tests/Drupal/Tests/Core/DrupalKernel/ValidateHostnameTest.php
+++ b/core/tests/Drupal/Tests/Core/DrupalKernel/ValidateHostnameTest.php
@@ -28,7 +28,7 @@ public function testValidateHostname($hostname, $message, $expected = FALSE) {
   /**
    * Provides test data for testValidateHostname().
    */
-  public function providerTestValidateHostname() {
+  public static function providerTestValidateHostname() {
     $data = [];
 
     // Verifies that DrupalKernel::validateHostname() prevents invalid
diff --git a/core/tests/Drupal/Tests/Core/Entity/ContentEntityBaseUnitTest.php b/core/tests/Drupal/Tests/Core/Entity/ContentEntityBaseUnitTest.php
index 6d7951bc97436236678b523340abe9c2e9ecb794..bb56a7e78bf71ad5bafad7771c8092ec643d52cd 100644
--- a/core/tests/Drupal/Tests/Core/Entity/ContentEntityBaseUnitTest.php
+++ b/core/tests/Drupal/Tests/Core/Entity/ContentEntityBaseUnitTest.php
@@ -360,7 +360,7 @@ public function testPreSaveRevision() {
    *   - A bool whether to provide a bundle-specific definition.
    *   - A bool whether to provide an entity type-specific definition.
    */
-  public function providerTestTypedData(): array {
+  public static function providerTestTypedData(): array {
     return [
       'Entity data definition derivative with entity type and bundle' => [
         TRUE,
@@ -534,7 +534,7 @@ public function testAccess() {
    *   - Language code for $activeLanguage.
    *   - Fields array for $fields.
    */
-  public function providerGet() {
+  public static function providerGet() {
     return [
       // Populated fields array.
       ['result', 'field_name', 'langcode', ['field_name' => ['langcode' => 'result']]],
@@ -596,7 +596,7 @@ public function testGet($expected, $field_name, $active_langcode, $fields) {
    *     Drupal\Core\Field\FieldDefinitionInterface object will be mocked for
    *     each name.
    */
-  public function providerGetFields() {
+  public static function providerGetFields() {
     return [
       [[], FALSE, FALSE, []],
       [['field' => 'field', 'field2' => 'field2'], TRUE, FALSE, ['field', 'field2']],
diff --git a/core/tests/Drupal/Tests/Core/Entity/EntityCreateAccessCheckTest.php b/core/tests/Drupal/Tests/Core/Entity/EntityCreateAccessCheckTest.php
index 7e93fa4f70c453f561858183d68e1d83b57a092d..66b4e94d0cdf11cf76108a3d573268c4f8a9590d 100644
--- a/core/tests/Drupal/Tests/Core/Entity/EntityCreateAccessCheckTest.php
+++ b/core/tests/Drupal/Tests/Core/Entity/EntityCreateAccessCheckTest.php
@@ -47,7 +47,7 @@ protected function setUp(): void {
    *
    * @return array
    */
-  public function providerTestAccess() {
+  public static function providerTestAccess() {
     $no_access = FALSE;
     $access = TRUE;
 
diff --git a/core/tests/Drupal/Tests/Core/Entity/EntityFieldManagerTest.php b/core/tests/Drupal/Tests/Core/Entity/EntityFieldManagerTest.php
index cf2293b8d3ff173076b720e38f3ffad3ecd14be1..0a8966454081ebd51a91159a549552d9652c562a 100644
--- a/core/tests/Drupal/Tests/Core/Entity/EntityFieldManagerTest.php
+++ b/core/tests/Drupal/Tests/Core/Entity/EntityFieldManagerTest.php
@@ -361,7 +361,7 @@ public function testGetBaseFieldDefinitionsTranslatableEntityTypeDefaultLangcode
    * @return array
    *   Test data.
    */
-  public function providerTestGetBaseFieldDefinitionsTranslatableEntityTypeDefaultLangcode() {
+  public static function providerTestGetBaseFieldDefinitionsTranslatableEntityTypeDefaultLangcode() {
     return [
       ['default_langcode'],
       ['custom_default_langcode_key'],
@@ -405,7 +405,7 @@ public function testGetBaseFieldDefinitionsTranslatableEntityTypeLangcode($provi
    * @return array
    *   Test data.
    */
-  public function providerTestGetBaseFieldDefinitionsTranslatableEntityTypeLangcode() {
+  public static function providerTestGetBaseFieldDefinitionsTranslatableEntityTypeLangcode() {
     return [
       [FALSE, TRUE, TRUE],
       [TRUE, FALSE, TRUE],
diff --git a/core/tests/Drupal/Tests/Core/Entity/EntityFormTest.php b/core/tests/Drupal/Tests/Core/Entity/EntityFormTest.php
index 3712b7fac625371dea4c49e95fca9a74f2b4f2fc..8e30610eab4c2b6623f06934caf5df957a5ea3f9 100644
--- a/core/tests/Drupal/Tests/Core/Entity/EntityFormTest.php
+++ b/core/tests/Drupal/Tests/Core/Entity/EntityFormTest.php
@@ -72,7 +72,7 @@ public function testFormId($expected, $definition) {
   /**
    * Provides test data for testFormId().
    */
-  public function providerTestFormIds() {
+  public static function providerTestFormIds() {
     return [
       [
         'node_article_form',
diff --git a/core/tests/Drupal/Tests/Core/Entity/EntityLinkTest.php b/core/tests/Drupal/Tests/Core/Entity/EntityLinkTest.php
index 1398c4503d8d912012cc79668284dbb284fdf19d..ab3003c78e1dc94ceed17cd48cdc8b0df0402cad 100644
--- a/core/tests/Drupal/Tests/Core/Entity/EntityLinkTest.php
+++ b/core/tests/Drupal/Tests/Core/Entity/EntityLinkTest.php
@@ -115,7 +115,7 @@ public function testToLink($entity_label, $link_text, $expected_text, $link_rel
   /**
    * Provides test data for testLink().
    */
-  public function providerTestLink() {
+  public static function providerTestLink() {
     $data = [];
     $data[] = [
       'some_entity_label',
diff --git a/core/tests/Drupal/Tests/Core/Entity/EntityResolverManagerTest.php b/core/tests/Drupal/Tests/Core/Entity/EntityResolverManagerTest.php
index cdb68553e4540d4cd5363be2662848d3253ecf31..49ae87a2cf9dd380cbb7541ca6bdb36097e77afb 100644
--- a/core/tests/Drupal/Tests/Core/Entity/EntityResolverManagerTest.php
+++ b/core/tests/Drupal/Tests/Core/Entity/EntityResolverManagerTest.php
@@ -86,7 +86,7 @@ public function testSetRouteOptionsWithStandardRoute($controller) {
   /**
    * Data provider for testSetRouteOptionsWithStandardRoute.
    */
-  public function providerTestSetRouteOptionsWithStandardRoute() {
+  public static function providerTestSetRouteOptionsWithStandardRoute() {
     return [
       ['Drupal\Tests\Core\Entity\BasicControllerClass::exampleControllerMethod'],
       ['Drupal\Tests\Core\Entity\test_function_controller'],
@@ -116,7 +116,7 @@ public function testSetRouteOptionsWithStandardRouteWithArgument($controller) {
   /**
    * Data provider for testSetRouteOptionsWithStandardRouteWithArgument.
    */
-  public function providerTestSetRouteOptionsWithStandardRouteWithArgument() {
+  public static function providerTestSetRouteOptionsWithStandardRouteWithArgument() {
     return [
       ['Drupal\Tests\Core\Entity\BasicControllerClass::exampleControllerMethodWithArgument'],
       ['Drupal\Tests\Core\Entity\test_function_controller_with_argument'],
@@ -146,7 +146,7 @@ public function testSetRouteOptionsWithContentController($controller) {
   /**
    * Data provider for testSetRouteOptionsWithContentController.
    */
-  public function providerTestSetRouteOptionsWithContentController() {
+  public static function providerTestSetRouteOptionsWithContentController() {
     return [
       ['Drupal\Tests\Core\Entity\BasicControllerClass::exampleControllerMethodWithArgument'],
       ['Drupal\Tests\Core\Entity\test_function_controller_with_argument'],
@@ -179,7 +179,7 @@ public function testSetRouteOptionsWithEntityTypeNoUpcasting($controller) {
   /**
    * Data provider for testSetRouteOptionsWithEntityTypeNoUpcasting.
    */
-  public function providerTestSetRouteOptionsWithEntityTypeNoUpcasting() {
+  public static function providerTestSetRouteOptionsWithEntityTypeNoUpcasting() {
     return [
       ['Drupal\Tests\Core\Entity\BasicControllerClass::exampleControllerWithEntityNoUpcasting'],
       ['Drupal\Tests\Core\Entity\test_function_controller_no_upcasting'],
@@ -213,7 +213,7 @@ public function testSetRouteOptionsWithEntityTypeUpcasting($controller) {
   /**
    * Data provider for testSetRouteOptionsWithEntityTypeUpcasting.
    */
-  public function providerTestSetRouteOptionsWithEntityTypeUpcasting() {
+  public static function providerTestSetRouteOptionsWithEntityTypeUpcasting() {
     return [
       ['Drupal\Tests\Core\Entity\BasicControllerClass::exampleControllerWithEntityUpcasting'],
       ['Drupal\Tests\Core\Entity\test_function_controller_entity_upcasting'],
diff --git a/core/tests/Drupal/Tests/Core/Entity/EntityTypeBundleInfoTest.php b/core/tests/Drupal/Tests/Core/Entity/EntityTypeBundleInfoTest.php
index 6482dd91e2e17983a909819ac958217cdb576655..256a06e94488f761acbb416199791114e3b7af39 100644
--- a/core/tests/Drupal/Tests/Core/Entity/EntityTypeBundleInfoTest.php
+++ b/core/tests/Drupal/Tests/Core/Entity/EntityTypeBundleInfoTest.php
@@ -189,7 +189,7 @@ public function testGetBundleInfo($entity_type_id, $expected) {
    * @return array
    *   Test data.
    */
-  public function providerTestGetBundleInfo() {
+  public static function providerTestGetBundleInfo() {
     return [
       [
         'apple',
diff --git a/core/tests/Drupal/Tests/Core/Entity/EntityTypeManagerTest.php b/core/tests/Drupal/Tests/Core/Entity/EntityTypeManagerTest.php
index 9c192c55b558f3bc8fce8f011c9f5db344e8ee98..4e74f0735010290b9d0ae14a841c832a6e234129 100644
--- a/core/tests/Drupal/Tests/Core/Entity/EntityTypeManagerTest.php
+++ b/core/tests/Drupal/Tests/Core/Entity/EntityTypeManagerTest.php
@@ -157,7 +157,7 @@ public function testHasHandler($entity_type_id, $expected) {
    * @return array
    *   Test data.
    */
-  public function providerTestHasHandler() {
+  public static function providerTestHasHandler() {
     return [
       ['apple', TRUE],
       ['banana', FALSE],
@@ -288,7 +288,7 @@ public function testGetHandler() {
    * @return array
    *   Test data.
    */
-  public function provideMissingHandlerData() : array {
+  public static function provideMissingHandlerData() : array {
     return [
       'missing_handler' => [
         'test_entity_type',
@@ -391,7 +391,7 @@ public function testGetDefinition($entity_type_id, $expected) {
    * @return array
    *   Test data.
    */
-  public function providerTestGetDefinition() {
+  public static function providerTestGetDefinition() {
     return [
       ['apple', TRUE],
       ['banana', TRUE],
diff --git a/core/tests/Drupal/Tests/Core/Entity/EntityTypeTest.php b/core/tests/Drupal/Tests/Core/Entity/EntityTypeTest.php
index 2a2c510d141802ea567abc92b875dc622e155afd..071b5d41912660524ceab31b256b9ccdaa07d0f4 100644
--- a/core/tests/Drupal/Tests/Core/Entity/EntityTypeTest.php
+++ b/core/tests/Drupal/Tests/Core/Entity/EntityTypeTest.php
@@ -95,7 +95,7 @@ public function testHasKey($entity_keys, $expected) {
   /**
    * Provides test data for testGet.
    */
-  public function providerTestGet() {
+  public static function providerTestGet() {
     return [
       [[], 'provider', NULL],
       [['provider' => ''], 'provider', ''],
@@ -109,7 +109,7 @@ public function providerTestGet() {
   /**
    * Provides test data for testSet.
    */
-  public function providerTestSet() {
+  public static function providerTestSet() {
     return [
       ['provider', NULL],
       ['provider', ''],
@@ -123,7 +123,7 @@ public function providerTestSet() {
   /**
    * Provides test data.
    */
-  public function providerTestGetKeys() {
+  public static function providerTestGetKeys() {
     return [
       [[], ['revision' => '', 'bundle' => '', 'langcode' => '']],
       [['id' => 'id'], ['id' => 'id', 'revision' => '', 'bundle' => '', 'langcode' => '']],
@@ -433,7 +433,7 @@ public function testGetBundleLabel($definition, $expected) {
   /**
    * Provides test data for ::testGetBundleLabel().
    */
-  public function providerTestGetBundleLabel() {
+  public static function providerTestGetBundleLabel() {
     return [
       [['label' => 'Entity Label Foo'], 'Entity Label Foo bundle'],
       [['bundle_label' => 'Bundle Label Bar'], 'Bundle Label Bar'],
diff --git a/core/tests/Drupal/Tests/Core/Entity/EntityUrlTest.php b/core/tests/Drupal/Tests/Core/Entity/EntityUrlTest.php
index 8e1bf3b2efaa80b13f286150ca8a66c0612584ff..85dc0eebdf0977dd1468045b282d7072409d0638 100644
--- a/core/tests/Drupal/Tests/Core/Entity/EntityUrlTest.php
+++ b/core/tests/Drupal/Tests/Core/Entity/EntityUrlTest.php
@@ -189,7 +189,7 @@ public function testToUrlLinkTemplates($link_template, $expected_route_name) {
    * @return array
    *   An array of test cases for testToUrlLinkTemplates().
    */
-  public function providerTestToUrlLinkTemplates() {
+  public static function providerTestToUrlLinkTemplates() {
     $test_cases = [];
 
     $test_cases['canonical'] = ['canonical', 'entity.test_entity.canonical'];
@@ -284,7 +284,7 @@ public function testToUrlLinkTemplateNoId($link_template, $expected_route_name)
    * @return array
    *   An array of test cases for testToUrlLinkTemplateNoId().
    */
-  public function providerTestToUrlLinkTemplateNoId() {
+  public static function providerTestToUrlLinkTemplateNoId() {
     $test_cases = [];
 
     $test_cases['collection'] = ['collection', 'entity.test_entity.collection'];
@@ -377,7 +377,7 @@ public function testToUrlUriCallbackUndefined(array $bundle_info, $uri_callback)
    * @return array
    *   An array of test cases for testToUrlUriCallbackUndefined().
    */
-  public function providerTestToUrlUriCallbackUndefined() {
+  public static function providerTestToUrlUriCallbackUndefined() {
     $test_cases = [];
 
     $test_cases['no_callback'] = [[], NULL];
diff --git a/core/tests/Drupal/Tests/Core/Entity/FieldDefinitionTest.php b/core/tests/Drupal/Tests/Core/Entity/FieldDefinitionTest.php
index fd72a312cb3136c9d5efbde560adbe3c449c5da5..b7e4ce30f9aa43dc4b2058dabb7f8249b0ec1ede 100644
--- a/core/tests/Drupal/Tests/Core/Entity/FieldDefinitionTest.php
+++ b/core/tests/Drupal/Tests/Core/Entity/FieldDefinitionTest.php
@@ -344,7 +344,7 @@ public static function mockDefaultValueCallback($entity, $definition) {
   /**
    * A data provider for all the types of factories that can create definitions.
    */
-  public function factoryTypeProvider() {
+  public static function factoryTypeProvider() {
     return [
       '::createFromFieldStorageDefinition factory' => [
         'createFromFieldStorageDefinition',
diff --git a/core/tests/Drupal/Tests/Core/Entity/Sql/DefaultTableMappingTest.php b/core/tests/Drupal/Tests/Core/Entity/Sql/DefaultTableMappingTest.php
index cd97ea8b379d46dfb00d477576789081bfc71c77..7351ae89439146a2855113a4db4fa996c5857dcb 100644
--- a/core/tests/Drupal/Tests/Core/Entity/Sql/DefaultTableMappingTest.php
+++ b/core/tests/Drupal/Tests/Core/Entity/Sql/DefaultTableMappingTest.php
@@ -323,7 +323,7 @@ public function testGetFieldColumnNameInvalid($base_field, $columns, $column) {
    *   field name, base field status, list of field columns, name of the column
    *   to be retrieved, expected result, whether an exception is expected.
    */
-  public function providerTestGetFieldColumnName() {
+  public static function providerTestGetFieldColumnName() {
     $data = [];
     // Base field with single column.
     $data[] = [TRUE, ['foo'], 'foo', 'test'];
@@ -416,7 +416,7 @@ public function testGetFieldTableName($table_names, $expected) {
    *   A nested array where each inner array has the following values: a list of
    *   table names and the expected table name.
    */
-  public function providerTestGetFieldTableName() {
+  public static function providerTestGetFieldTableName() {
     $data = [];
 
     $data[] = [['data' => 'data_table', 'base' => 'base_table', 'revision' => 'revision_table'], 'data_table'];
@@ -496,7 +496,7 @@ public function testGetDedicatedTableName($info, $expected_data_table, $expected
    *   consisting of the entity type ID, field name and a table prefix, followed
    *   by the expected data table name and the revision table name.
    */
-  public function providerTestGetDedicatedTableName() {
+  public static function providerTestGetDedicatedTableName() {
     $data = [];
 
     $data['short entity type; short field name; no prefix'] = [
diff --git a/core/tests/Drupal/Tests/Core/Entity/Sql/SqlContentEntityStorageSchemaTest.php b/core/tests/Drupal/Tests/Core/Entity/Sql/SqlContentEntityStorageSchemaTest.php
index 3cc96f3ce8b0d50e3dbe982d471899f67202ecf1..66fac780ca45cd686a94333a66289e28c3f77a99 100644
--- a/core/tests/Drupal/Tests/Core/Entity/Sql/SqlContentEntityStorageSchemaTest.php
+++ b/core/tests/Drupal/Tests/Core/Entity/Sql/SqlContentEntityStorageSchemaTest.php
@@ -1581,7 +1581,7 @@ public function testCastValue($expected, $value, array $schema) {
   /**
    * Provides data for testCastValue().
    */
-  public function providerSchemaCastValue() {
+  public static function providerSchemaCastValue() {
     $cases = [];
     // Tests NULL values.
     $cases[] = [
diff --git a/core/tests/Drupal/Tests/Core/Entity/Sql/SqlContentEntityStorageTest.php b/core/tests/Drupal/Tests/Core/Entity/Sql/SqlContentEntityStorageTest.php
index 3031589477b21570d9fdb87e7b80ec2e1a24dd22..f4374c2964f4a9951fc5fff1f2571417800bad1f 100644
--- a/core/tests/Drupal/Tests/Core/Entity/Sql/SqlContentEntityStorageTest.php
+++ b/core/tests/Drupal/Tests/Core/Entity/Sql/SqlContentEntityStorageTest.php
@@ -173,7 +173,7 @@ public function testGetBaseTable($base_table, $expected) {
    *   value of SqlContentEntityStorage::getBaseTable() as the second
    *   value.
    */
-  public function providerTestGetBaseTable() {
+  public static function providerTestGetBaseTable() {
     return [
       // Test that the entity type's base table is used, if provided.
       ['entity_test', 'entity_test'],
@@ -221,7 +221,7 @@ public function testGetRevisionTable($revision_table, $expected) {
    *   return value of SqlContentEntityStorage::getRevisionTable() as the
    *   second value.
    */
-  public function providerTestGetRevisionTable() {
+  public static function providerTestGetRevisionTable() {
     return [
       // Test that the entity type's revision table is used, if provided.
       ['entity_test_revision', 'entity_test_revision'],
@@ -299,7 +299,7 @@ public function testGetRevisionDataTable($revision_data_table, $expected) {
    *   return value of SqlContentEntityStorage::getRevisionDataTable() as
    *   the second value.
    */
-  public function providerTestGetRevisionDataTable() {
+  public static function providerTestGetRevisionDataTable() {
     return [
       // Test that the entity type's revision data table is used, if provided.
       ['entity_test_field_revision', 'entity_test_field_revision'],
@@ -526,7 +526,7 @@ public function testGetTableMappingSimpleWithFields(array $entity_keys) {
    *   A nested array, where each inner array has a single value being a  map of
    *   entity keys to use for the mocked entity type.
    */
-  public function providerTestGetTableMappingSimple() {
+  public static function providerTestGetTableMappingSimple() {
     return [
       [['id' => 'test_id', 'bundle' => NULL, 'uuid' => NULL]],
       [['id' => 'test_id', 'bundle' => 'test_bundle', 'uuid' => NULL]],
diff --git a/core/tests/Drupal/Tests/Core/EventSubscriber/ActiveLinkResponseFilterTest.php b/core/tests/Drupal/Tests/Core/EventSubscriber/ActiveLinkResponseFilterTest.php
index 5657fa656ab8eeeb2167f12ddc8058312f9c0973..e25dd83077c9f3b672107a1373586ac464710dce 100644
--- a/core/tests/Drupal/Tests/Core/EventSubscriber/ActiveLinkResponseFilterTest.php
+++ b/core/tests/Drupal/Tests/Core/EventSubscriber/ActiveLinkResponseFilterTest.php
@@ -35,7 +35,7 @@ class ActiveLinkResponseFilterTest extends UnitTestCase {
    *
    * @see \Drupal\Core\EventSubscriber\ActiveLinkResponseFilter::setLinkActiveClass()
    */
-  public function providerTestSetLinkActiveClass() {
+  public static function providerTestSetLinkActiveClass() {
     // Define all the variations that *don't* affect whether or not an
     // "is-active" class is set, but that should remain unchanged:
     // - surrounding HTML
diff --git a/core/tests/Drupal/Tests/Core/EventSubscriber/ExceptionJsonSubscriberTest.php b/core/tests/Drupal/Tests/Core/EventSubscriber/ExceptionJsonSubscriberTest.php
index 921d370190445310b5ee0fc866b38dd05bb3f2bf..db86952b9508d17376b8c92d1b222a851aff6682 100644
--- a/core/tests/Drupal/Tests/Core/EventSubscriber/ExceptionJsonSubscriberTest.php
+++ b/core/tests/Drupal/Tests/Core/EventSubscriber/ExceptionJsonSubscriberTest.php
@@ -41,7 +41,7 @@ public function testOn4xx(HttpExceptionInterface $exception, $expected_response_
     $this->assertEquals('application/json', $response->headers->get('Content-Type'));
   }
 
-  public function providerTestOn4xx() {
+  public static function providerTestOn4xx() {
     return [
       'uncacheable exception' => [
         new MethodNotAllowedHttpException(['POST', 'PUT'], 'test message'),
diff --git a/core/tests/Drupal/Tests/Core/EventSubscriber/ModuleRouteSubscriberTest.php b/core/tests/Drupal/Tests/Core/EventSubscriber/ModuleRouteSubscriberTest.php
index 3b65d4039714ef0ce9ce527bbbbfc1a971a068e8..6b9b68be9b78c6301808dcf06cec1fd4a756d72f 100644
--- a/core/tests/Drupal/Tests/Core/EventSubscriber/ModuleRouteSubscriberTest.php
+++ b/core/tests/Drupal/Tests/Core/EventSubscriber/ModuleRouteSubscriberTest.php
@@ -74,7 +74,7 @@ public function testRemoveRoute($route_name, array $requirements, $removed) {
   /**
    * Data provider for testRemoveRoute().
    */
-  public function providerTestRemoveRoute() {
+  public static function providerTestRemoveRoute() {
     return [
       ['enabled', ['_module_dependencies' => 'enabled'], FALSE],
       ['disabled', ['_module_dependencies' => 'disabled'], TRUE],
diff --git a/core/tests/Drupal/Tests/Core/EventSubscriber/OptionsRequestSubscriberTest.php b/core/tests/Drupal/Tests/Core/EventSubscriber/OptionsRequestSubscriberTest.php
index c186267eece79ec65585e7eb546c69d6eb682fb0..23d8fcd1878e52854407183d1dc24530fb235da4 100644
--- a/core/tests/Drupal/Tests/Core/EventSubscriber/OptionsRequestSubscriberTest.php
+++ b/core/tests/Drupal/Tests/Core/EventSubscriber/OptionsRequestSubscriberTest.php
@@ -74,7 +74,7 @@ public function testWithOptionsRequest(RouteCollection $collection, $expected_he
     $this->assertEquals($expected_header, $response->headers->get('Allow'));
   }
 
-  public function providerTestOnRequestWithOptionsRequest() {
+  public static function providerTestOnRequestWithOptionsRequest() {
     $data = [];
 
     foreach (['GET', 'POST', 'PATCH', 'PUT', 'DELETE'] as $method) {
diff --git a/core/tests/Drupal/Tests/Core/EventSubscriber/RedirectResponseSubscriberTest.php b/core/tests/Drupal/Tests/Core/EventSubscriber/RedirectResponseSubscriberTest.php
index 42921760ed73a6ee47dcf57107269e7b60c0b8c3..641120a531fef5dcbbfbd782d6eae70bbb86660c 100644
--- a/core/tests/Drupal/Tests/Core/EventSubscriber/RedirectResponseSubscriberTest.php
+++ b/core/tests/Drupal/Tests/Core/EventSubscriber/RedirectResponseSubscriberTest.php
@@ -151,7 +151,7 @@ public function testRedirectWithOptInExternalUrl() {
   /**
    * Data provider for testDestinationRedirectToExternalUrl().
    */
-  public function providerTestDestinationRedirectToExternalUrl() {
+  public static function providerTestDestinationRedirectToExternalUrl() {
     return [
       'absolute external url' => [new Request(['destination' => 'http://example.com']), 'http://example.com'],
       'absolute external url with folder' => [new Request(['destination' => 'http://example.com/foobar']), 'http://example.com/foobar'],
@@ -180,7 +180,7 @@ public function testDestinationRedirectWithInvalidUrl(Request $request) {
   /**
    * Data provider for testDestinationRedirectWithInvalidUrl().
    */
-  public function providerTestDestinationRedirectWithInvalidUrl() {
+  public static function providerTestDestinationRedirectWithInvalidUrl() {
     $data = [];
     $data[] = [new Request(['destination' => '//example:com'])];
     $data[] = [new Request(['destination' => '//example:com/test'])];
diff --git a/core/tests/Drupal/Tests/Core/EventSubscriber/RssResponseRelativeUrlFilterTest.php b/core/tests/Drupal/Tests/Core/EventSubscriber/RssResponseRelativeUrlFilterTest.php
index b97522dee6e7b7b5467883241f241f1061725bea..82961fa886e0487ad7e14c83f6ac93d6f8ca6e43 100644
--- a/core/tests/Drupal/Tests/Core/EventSubscriber/RssResponseRelativeUrlFilterTest.php
+++ b/core/tests/Drupal/Tests/Core/EventSubscriber/RssResponseRelativeUrlFilterTest.php
@@ -17,7 +17,7 @@
  */
 class RssResponseRelativeUrlFilterTest extends UnitTestCase {
 
-  public function providerTestOnResponse() {
+  public static function providerTestOnResponse() {
     $data = [];
 
     $valid_feed = <<<RSS
diff --git a/core/tests/Drupal/Tests/Core/EventSubscriber/SpecialAttributesRouteSubscriberTest.php b/core/tests/Drupal/Tests/Core/EventSubscriber/SpecialAttributesRouteSubscriberTest.php
index 179e099504087b64dcb0bb7c7b7a8536e37daa77..e662533bf1dd064a5baf043e57b0a6af4d69596d 100644
--- a/core/tests/Drupal/Tests/Core/EventSubscriber/SpecialAttributesRouteSubscriberTest.php
+++ b/core/tests/Drupal/Tests/Core/EventSubscriber/SpecialAttributesRouteSubscriberTest.php
@@ -23,7 +23,7 @@ class SpecialAttributesRouteSubscriberTest extends UnitTestCase {
    * @return array
    *   An array of invalid routes.
    */
-  public function providerTestOnRouteBuildingInvalidVariables() {
+  public static function providerTestOnRouteBuildingInvalidVariables() {
     // Build an array of mock route objects based on paths.
     $routes = [];
     $paths = [
@@ -49,7 +49,7 @@ public function providerTestOnRouteBuildingInvalidVariables() {
    * @return array
    *   An array of valid routes.
    */
-  public function providerTestOnRouteBuildingValidVariables() {
+  public static function providerTestOnRouteBuildingValidVariables() {
     // Build an array of mock route objects based on paths.
     $routes = [];
     $paths = [
diff --git a/core/tests/Drupal/Tests/Core/Extension/DatabaseDriverListTest.php b/core/tests/Drupal/Tests/Core/Extension/DatabaseDriverListTest.php
index 7f7c281a096b46cac2236bb5fa7079e443dadb94..4af0786a1ba1efb61ae95dbae4af54256468e712 100644
--- a/core/tests/Drupal/Tests/Core/Extension/DatabaseDriverListTest.php
+++ b/core/tests/Drupal/Tests/Core/Extension/DatabaseDriverListTest.php
@@ -59,7 +59,7 @@ public function testLegacyGetFromDriverName(string $driverName, string $moduleNa
   /**
    * Data provider for testLegacyGetFromDriverName().
    */
-  public function providerDatabaseDrivers(): array {
+  public static function providerDatabaseDrivers(): array {
     return [
       ['mysql', 'mysql', 'Drupal\\mysql\\Driver\\Database\\mysql'],
       ['pgsql', 'pgsql', 'Drupal\\pgsql\\Driver\\Database\\pgsql'],
diff --git a/core/tests/Drupal/Tests/Core/Extension/DependencyTest.php b/core/tests/Drupal/Tests/Core/Extension/DependencyTest.php
index a57cd28156c3a8303786e155c5fa1b65d2212228..b3f81fd2977fdf7497b3ffbda1e766a5a3dbdf62 100644
--- a/core/tests/Drupal/Tests/Core/Extension/DependencyTest.php
+++ b/core/tests/Drupal/Tests/Core/Extension/DependencyTest.php
@@ -28,7 +28,7 @@ public function testCreateFromString($string, $expected_name, $expected_project,
   /**
    * Data provider for testCreateFromString.
    */
-  public function providerCreateFromString() {
+  public static function providerCreateFromString() {
     $tests = [];
     $tests['module_name_only'] = ['views', 'views', '', ''];
     $tests['module_and_project_names'] = ['drupal:views', 'views', 'drupal', ''];
diff --git a/core/tests/Drupal/Tests/Core/Extension/ExtensionListTest.php b/core/tests/Drupal/Tests/Core/Extension/ExtensionListTest.php
index 3e90d94c93d39e15313513b6d791c50ca70b0880..c5f1f4b7f5da6907103d3e3fdf68b15f5dba30fd 100644
--- a/core/tests/Drupal/Tests/Core/Extension/ExtensionListTest.php
+++ b/core/tests/Drupal/Tests/Core/Extension/ExtensionListTest.php
@@ -220,7 +220,7 @@ public function testCheckIncompatibility($additional_settings, $expected) {
   /**
    * DataProvider for testCheckIncompatibility().
    */
-  public function providerCheckIncompatibility() {
+  public static function providerCheckIncompatibility() {
     return [
       'core_incompatible true' => [
         [
diff --git a/core/tests/Drupal/Tests/Core/Extension/ExtensionVersionTest.php b/core/tests/Drupal/Tests/Core/Extension/ExtensionVersionTest.php
index 06aa51e53fdf15dfec540019af9c44c9def4de80..1c6979db0644943127810c23f1ad4b30694975c8 100644
--- a/core/tests/Drupal/Tests/Core/Extension/ExtensionVersionTest.php
+++ b/core/tests/Drupal/Tests/Core/Extension/ExtensionVersionTest.php
@@ -65,7 +65,7 @@ public function testGetVersionExtra(string $version, array $expected_version_inf
    * @return mixed[][]
    *   Arrays of version information.
    */
-  public function providerVersionInfos(): array {
+  public static function providerVersionInfos(): array {
     // Data provider values are:
     // - The version number to test.
     // - Array of expected version information with the following keys:
@@ -263,7 +263,7 @@ public function testInvalidVersionNumber(string $version): void {
    * @return string[]
    *   The test cases for testInvalidVersionNumber().
    */
-  public function providerInvalidVersionNumber(): array {
+  public static function providerInvalidVersionNumber(): array {
     return static::createKeyedTestCases([
       '',
       '8',
@@ -306,7 +306,7 @@ public function testInvalidVersionCorePrefix(string $version): void {
    * @return string[]
    *   The test cases for testInvalidVersionCorePrefix().
    */
-  public function providerInvalidVersionCorePrefix(): array {
+  public static function providerInvalidVersionCorePrefix(): array {
     return static::createKeyedTestCases([
       '6.x-1.0',
       '7.x-1.x',
@@ -335,7 +335,7 @@ public function testInvalidBranchCorePrefix(string $branch): void {
    * @return string[]
    *   The test cases for testInvalidBranchCorePrefix().
    */
-  public function providerInvalidBranchCorePrefix(): array {
+  public static function providerInvalidBranchCorePrefix(): array {
     return static::createKeyedTestCases([
       '6.x-1.',
       '7.x-1.',
@@ -368,7 +368,7 @@ public function testCreateFromSupportBranch(string $branch, string $expected_maj
    * @return string[][]
    *   The test cases for testCreateFromSupportBranch().
    */
-  public function providerCreateFromSupportBranch(): array {
+  public static function providerCreateFromSupportBranch(): array {
     // Data provider values are:
     // - The version number to test.
     // - Array of expected version information with the following keys:
@@ -418,7 +418,7 @@ public function testInvalidBranch(string $branch): void {
    * @return string[]
    *   The test cases for testInvalidBranch().
    */
-  public function provideInvalidBranch(): array {
+  public static function provideInvalidBranch(): array {
     return self::createKeyedTestCases([
       '8.x-1.0',
       '8.x-2.x',
diff --git a/core/tests/Drupal/Tests/Core/Extension/InfoParserUnitTest.php b/core/tests/Drupal/Tests/Core/Extension/InfoParserUnitTest.php
index bf70c5522d47b4838eacb3400b18de6e87e12ff8..4e70611ee378a89b0b5ea43c611e74d7bce476a0 100644
--- a/core/tests/Drupal/Tests/Core/Extension/InfoParserUnitTest.php
+++ b/core/tests/Drupal/Tests/Core/Extension/InfoParserUnitTest.php
@@ -298,7 +298,7 @@ public function testCoreIncompatibility($test_case, $constraint, $expected) {
   /**
    * Data provider for testCoreIncompatibility().
    */
-  public function providerCoreIncompatibility() {
+  public static function providerCoreIncompatibility() {
     // Remove possible stability suffix to properly parse 11.0-dev.
     $version = preg_replace('/-dev$/', '', \Drupal::VERSION);
     [$major, $minor] = explode('.', $version, 2);
@@ -412,7 +412,7 @@ public function testValidLifecycle($lifecycle, $expected) {
   /**
    * Data provider for testValidLifecycle().
    */
-  public function providerValidLifecycle() {
+  public static function providerValidLifecycle() {
     return [
       'empty' => [
         '',
@@ -469,7 +469,7 @@ public function testInvalidLifecycle($lifecycle, $exception_message) {
   /**
    * Data provider for testInvalidLifecycle().
    */
-  public function providerInvalidLifecycle() {
+  public static function providerInvalidLifecycle() {
     return [
       'bogus' => [
         'bogus',
@@ -527,7 +527,7 @@ public function testLifecycleLink($lifecycle, $lifecycle_link = NULL, $exception
   /**
    * Data provider for testLifecycleLink().
    */
-  public function providerLifecycleLink() {
+  public static function providerLifecycleLink() {
     return [
       'valid deprecated' => [
         ExtensionLifecycle::DEPRECATED,
diff --git a/core/tests/Drupal/Tests/Core/Extension/ThemeExtensionListTest.php b/core/tests/Drupal/Tests/Core/Extension/ThemeExtensionListTest.php
index 19a9d2aabb51c9d9cf39ebcaeff2d20d8241c434..0f112489526be5243fcabc3c6a668d7f6bd67eac 100644
--- a/core/tests/Drupal/Tests/Core/Extension/ThemeExtensionListTest.php
+++ b/core/tests/Drupal/Tests/Core/Extension/ThemeExtensionListTest.php
@@ -137,7 +137,7 @@ public function testGetBaseThemes(array $themes, $theme, array $expected) {
    * @return array
    *   An array of theme test data.
    */
-  public function providerTestGetBaseThemes() {
+  public static function providerTestGetBaseThemes() {
     $data = [];
 
     // Tests a theme without any base theme.
diff --git a/core/tests/Drupal/Tests/Core/Field/FieldInputValueNormalizerTraitTest.php b/core/tests/Drupal/Tests/Core/Field/FieldInputValueNormalizerTraitTest.php
index 1fa81d6bfb6033f9a4cdb2d846ff857ed6766348..b846f9686c9cd03c95b3a6cee17ab09246036d27 100644
--- a/core/tests/Drupal/Tests/Core/Field/FieldInputValueNormalizerTraitTest.php
+++ b/core/tests/Drupal/Tests/Core/Field/FieldInputValueNormalizerTraitTest.php
@@ -26,7 +26,7 @@ public function testKeyValueByDelta($input_value, $expected_value, $main_propert
   /**
    * Provides test cases for ::testKeyValueByDelta.
    */
-  public function keyValueByDeltaTestCases() {
+  public static function keyValueByDeltaTestCases() {
     return [
       'Integer' => [
         1,
diff --git a/core/tests/Drupal/Tests/Core/Field/StringItemTest.php b/core/tests/Drupal/Tests/Core/Field/StringItemTest.php
index b3b6cc0aac386aca897b97968c7712c99ed697dc..4906337617c0f30e0199c1928f82ef8800aace7a 100644
--- a/core/tests/Drupal/Tests/Core/Field/StringItemTest.php
+++ b/core/tests/Drupal/Tests/Core/Field/StringItemTest.php
@@ -52,7 +52,7 @@ public function testGenerateSampleValue(int $max_length): void {
    * @return array
    *   Test cases.
    */
-  public function providerMaxLength(): array {
+  public static function providerMaxLength(): array {
     return [
       '32' => [32],
       '255' => [255],
diff --git a/core/tests/Drupal/Tests/Core/Field/UriItemTest.php b/core/tests/Drupal/Tests/Core/Field/UriItemTest.php
index 92d88b7ea985464d7ef3b5cdc56f57992c452dda..a8fc6710c24535117ef514061677b63b9071723a 100644
--- a/core/tests/Drupal/Tests/Core/Field/UriItemTest.php
+++ b/core/tests/Drupal/Tests/Core/Field/UriItemTest.php
@@ -42,7 +42,7 @@ public function testGenerateSampleValue(int $max_length): void {
    * @return array
    *   Test cases.
    */
-  public function providerMaxLength(): array {
+  public static function providerMaxLength(): array {
     return [
       '32' => [32],
       '255' => [255],
diff --git a/core/tests/Drupal/Tests/Core/File/FileSystemTest.php b/core/tests/Drupal/Tests/Core/File/FileSystemTest.php
index f8a3a402a22e5cc94b510ed82edf5111977ede0a..4794b5fe44b7b4f346bbb84d415a6d6eb877e504 100644
--- a/core/tests/Drupal/Tests/Core/File/FileSystemTest.php
+++ b/core/tests/Drupal/Tests/Core/File/FileSystemTest.php
@@ -113,7 +113,7 @@ public function testBasename($uri, $expected, $suffix = NULL) {
     $this->assertSame($expected, $this->fileSystem->basename($uri, $suffix));
   }
 
-  public function providerTestBasename() {
+  public static function providerTestBasename() {
     $data = [];
     $data[] = [
       'public://nested/dir',
diff --git a/core/tests/Drupal/Tests/Core/File/FileUploadSanitizeNameEventTest.php b/core/tests/Drupal/Tests/Core/File/FileUploadSanitizeNameEventTest.php
index c1cf737df9e25476faba191469267335c4503204..17e7bbe1f5b4cb878fd6a68f7c7a9e47ebae14f8 100644
--- a/core/tests/Drupal/Tests/Core/File/FileUploadSanitizeNameEventTest.php
+++ b/core/tests/Drupal/Tests/Core/File/FileUploadSanitizeNameEventTest.php
@@ -81,7 +81,7 @@ public function testEventFilenameFunctions(string $filename) {
    * @return array
    *   Arrays with original file name.
    */
-  public function provideFilenames() {
+  public static function provideFilenames() {
     return [
       'ASCII filename with extension' => [
         'example.txt',
diff --git a/core/tests/Drupal/Tests/Core/Form/ConfigTargetTest.php b/core/tests/Drupal/Tests/Core/Form/ConfigTargetTest.php
index 09e272230efc71910d60926747f9d64a78ed5348..ba24a8515410c2fe359d6788ac271e508a751a97 100644
--- a/core/tests/Drupal/Tests/Core/Form/ConfigTargetTest.php
+++ b/core/tests/Drupal/Tests/Core/Form/ConfigTargetTest.php
@@ -97,7 +97,7 @@ public function getFormId() {
     $this->assertSame($expected, $form_state->isCached());
   }
 
-  public function providerTestFormCacheable(): array {
+  public static function providerTestFormCacheable(): array {
     $closure = fn (bool $something): string => $something ? 'Yes' : 'No';
     return [
       'No callables' => [TRUE, NULL, NULL],
@@ -164,7 +164,7 @@ public function testFromFormException(array $form, array $array_parents, string
     ConfigTarget::fromForm($array_parents, $form);
   }
 
-  public function providerTestFromFormException(): array {
+  public static function providerTestFromFormException(): array {
     return [
       'No #config_target' => [
         [
@@ -215,7 +215,7 @@ public function testMultiTargetWithoutCallables(...$arguments): void {
     new ConfigTarget(...$arguments);
   }
 
-  public function providerMultiTargetWithoutCallables(): \Generator {
+  public static function providerMultiTargetWithoutCallables(): \Generator {
     yield "neither callable" => ['foo.settings', ['a', 'b']];
     yield "only fromConfig" => ['foo.settings', ['a', 'b'], "intval"];
     yield "only toConfig" => ['foo.settings', ['a', 'b'], NULL, "intval"];
diff --git a/core/tests/Drupal/Tests/Core/Form/ConfirmFormHelperTest.php b/core/tests/Drupal/Tests/Core/Form/ConfirmFormHelperTest.php
index cec16f9e06b414f8b832cf1031c367b45fe6b6b5..c6934668b31e5869eece536075f307e7d27a4eab 100644
--- a/core/tests/Drupal/Tests/Core/Form/ConfirmFormHelperTest.php
+++ b/core/tests/Drupal/Tests/Core/Form/ConfirmFormHelperTest.php
@@ -119,7 +119,7 @@ public function testCancelLinkDestination($destination) {
   /**
    * Provides test data for testCancelLinkDestination().
    */
-  public function providerTestCancelLinkDestination() {
+  public static function providerTestCancelLinkDestination() {
     $data = [];
     $data[] = ['baz'];
     $data[] = ['/baz'];
diff --git a/core/tests/Drupal/Tests/Core/Form/FormBuilderTest.php b/core/tests/Drupal/Tests/Core/Form/FormBuilderTest.php
index fe5f2c4d4570f3e65f5fb5ef88ccf7a19e539651..d732a212b8b745b4b030d9150383c7fa03f3d50c 100644
--- a/core/tests/Drupal/Tests/Core/Form/FormBuilderTest.php
+++ b/core/tests/Drupal/Tests/Core/Form/FormBuilderTest.php
@@ -175,7 +175,7 @@ public function testHandleFormStateResponse($class, $form_state_key) {
   /**
    * Provides test data for testHandleFormStateResponse().
    */
-  public function formStateResponseProvider() {
+  public static function formStateResponseProvider() {
     return [
       ['Symfony\Component\HttpFoundation\Response', 'response'],
       ['Symfony\Component\HttpFoundation\RedirectResponse', 'redirect'],
@@ -335,7 +335,7 @@ public function testBuildFormWithTriggeringElement($element_value, $input_value)
   /**
    * Data provider for ::testBuildFormWithTriggeringElement().
    */
-  public function providerTestBuildFormWithTriggeringElement() {
+  public static function providerTestBuildFormWithTriggeringElement() {
     $plain_text = 'Other submit value';
     $markup = 'Other submit <input> value';
     return [
@@ -649,7 +649,7 @@ public function testChildAccessInheritance($element, $access_checks) {
    *
    * @return array
    */
-  public function providerTestChildAccessInheritance() {
+  public static function providerTestChildAccessInheritance() {
     $data = [];
 
     $element = [
@@ -789,7 +789,7 @@ public function testValueCallableIsSafe($callback, $expected) {
     $this->assertSame($expected, $is_safe);
   }
 
-  public function providerTestValueCallableIsSafe() {
+  public static function providerTestValueCallableIsSafe() {
     $data = [];
     $data['string_no_slash'] = [
       'Drupal\Core\Render\Element\Token::valueCallback',
@@ -866,7 +866,7 @@ public function testInvalidToken($expected, $valid_token, $user_is_authenticated
     }
   }
 
-  public function providerTestInvalidToken() {
+  public static function providerTestInvalidToken() {
     $data = [];
     $data['authenticated_invalid'] = [TRUE, FALSE, TRUE];
     $data['authenticated_valid'] = [FALSE, TRUE, TRUE];
@@ -926,7 +926,7 @@ public function testFormTokenCacheability($token, $is_authenticated, $expected_f
    *
    * @return array
    */
-  public function providerTestFormTokenCacheability() {
+  public static function providerTestFormTokenCacheability() {
     return [
       'token:none,authenticated:true' => [NULL, TRUE, ['contexts' => ['user.roles:authenticated']], ['max-age' => 0], 'post'],
       'token:none,authenticated:false' => [NULL, FALSE, ['contexts' => ['user.roles:authenticated']], NULL, 'post'],
diff --git a/core/tests/Drupal/Tests/Core/Form/FormElementHelperTest.php b/core/tests/Drupal/Tests/Core/Form/FormElementHelperTest.php
index 03f09b9041164a446ecd8b63f662cfa213a7138b..7eedb6d440b88418d4c8e1519fb117d60c33f152 100644
--- a/core/tests/Drupal/Tests/Core/Form/FormElementHelperTest.php
+++ b/core/tests/Drupal/Tests/Core/Form/FormElementHelperTest.php
@@ -31,7 +31,7 @@ public function testGetElementByName($name, $form, $expected) {
   /**
    * Provides test data.
    */
-  public function getElementByNameProvider() {
+  public static function getElementByNameProvider() {
     $data = [];
     $data[] = ['id', [], []];
     $data[] = [
@@ -117,7 +117,7 @@ public function testGetElementTitle($name, $form, $expected) {
   /**
    * Provides test data.
    */
-  public function getElementTitleProvider() {
+  public static function getElementTitleProvider() {
     $data = [];
     $data[] = ['id', [], ''];
     $data[] = [
diff --git a/core/tests/Drupal/Tests/Core/Form/FormHelperTest.php b/core/tests/Drupal/Tests/Core/Form/FormHelperTest.php
index c29ebef96e8ea97535bad262cb5f9f61d5e7b80f..e39c3973a32a9caf2eee1b90728372b6109b96b0 100644
--- a/core/tests/Drupal/Tests/Core/Form/FormHelperTest.php
+++ b/core/tests/Drupal/Tests/Core/Form/FormHelperTest.php
@@ -99,7 +99,7 @@ public function testProcessStates($elements, $key) {
   /**
    * Provides a list of elements to test.
    */
-  public function providerElements() {
+  public static function providerElements() {
     return [
       [
         [
diff --git a/core/tests/Drupal/Tests/Core/Form/FormStateDecoratorBaseTest.php b/core/tests/Drupal/Tests/Core/Form/FormStateDecoratorBaseTest.php
index b81d1ea6b4b0ef98fd00f7dfce83bf568ed43038..6c877b5406d175ef7082034ed50d9569024ce48e 100644
--- a/core/tests/Drupal/Tests/Core/Form/FormStateDecoratorBaseTest.php
+++ b/core/tests/Drupal/Tests/Core/Form/FormStateDecoratorBaseTest.php
@@ -48,7 +48,7 @@ protected function setUp(): void {
   /**
    * Provides data to test methods that take a single boolean argument.
    */
-  public function providerSingleBooleanArgument() {
+  public static function providerSingleBooleanArgument() {
     return [
       [TRUE],
       [FALSE],
@@ -283,7 +283,7 @@ public function testGetLimitValidationErrors($limit_validation_errors) {
   /**
    * Provides data to self::testGetLimitValidationErrors() and self::testGetLimitValidationErrors().
    */
-  public function providerLimitValidationErrors() {
+  public static function providerLimitValidationErrors() {
     return [
       [NULL],
       [
@@ -322,7 +322,7 @@ public function testIsMethodType($expected_return_value, $method_type) {
   /**
    * Provides data to self::testIsMethodType().
    */
-  public function providerIsMethodType() {
+  public static function providerIsMethodType() {
     return [
       [TRUE, 'GET'],
       [TRUE, 'POST'],
@@ -346,7 +346,7 @@ public function testSetRequestMethod($method) {
   /**
    * Provides data to self::testSetMethod().
    */
-  public function providerSetRequestMethod() {
+  public static function providerSetRequestMethod() {
     return [
       ['GET'],
       ['POST'],
@@ -662,7 +662,7 @@ public function testSetTemporaryValue($key, $value) {
   /**
    * Provides data to self::testSetTemporaryValue().
    */
-  public function providerSetTemporaryValue() {
+  public static function providerSetTemporaryValue() {
     return [
       ['FOO', 'BAR'],
       ['FOO', NULL],
@@ -700,7 +700,7 @@ public function testGetTemporaryValue($key, $value = NULL) {
   /**
    * Provides data to self::testGetTemporaryValue().
    */
-  public function providerGetTemporaryValue() {
+  public static function providerGetTemporaryValue() {
     return [
       [TRUE, 'FOO', 'BAR'],
       [TRUE, 'FOO', NULL],
@@ -732,7 +732,7 @@ public function testHasTemporaryValue($exists, $key) {
   /**
    * Provides data to self::testHasTemporaryValue().
    */
-  public function providerHasTemporaryValue() {
+  public static function providerHasTemporaryValue() {
     return [
       [TRUE, 'FOO'],
       [FALSE, 'FOO'],
@@ -866,7 +866,7 @@ public function testLoadInclude($expected, $module, $type, $name) {
   /**
    * Provides data to self::testLoadInclude().
    */
-  public function providerLoadInclude() {
+  public static function providerLoadInclude() {
     return [
       // Existing files.
       [__FILE__, 'foo', 'inc', 'foo'],
@@ -1298,7 +1298,7 @@ public function testGetRedirect($expected) {
   /**
    * Provides data to self::testGetRedirect().
    */
-  public function providerGetRedirect() {
+  public static function providerGetRedirect() {
     return [
       [NULL],
       [FALSE],
diff --git a/core/tests/Drupal/Tests/Core/Form/FormStateTest.php b/core/tests/Drupal/Tests/Core/Form/FormStateTest.php
index f8fb239b12e3c412fb6707a99c559359bf2749f9..3aadbc411d4363fd323c68a8a212259e3781f3ce 100644
--- a/core/tests/Drupal/Tests/Core/Form/FormStateTest.php
+++ b/core/tests/Drupal/Tests/Core/Form/FormStateTest.php
@@ -37,7 +37,7 @@ public function testGetRedirect($form_state_additions, $expected) {
    * @return array
    *   Returns some test data.
    */
-  public function providerTestGetRedirect() {
+  public static function providerTestGetRedirect() {
     $data = [];
     $data[] = [[], NULL];
 
@@ -80,7 +80,7 @@ public function testGetError($errors, $parents, $error = NULL) {
     $this->assertSame($error, $form_state->getError($element));
   }
 
-  public function providerTestGetError() {
+  public static function providerTestGetError() {
     return [
       [[], ['foo']],
       [['foo][bar' => 'Fail'], []],
@@ -113,7 +113,7 @@ public function testSetErrorByName($limit_validation_errors, $expected_errors) {
     $this->assertSame($expected_errors, $form_state->getErrors());
   }
 
-  public function providerTestSetErrorByName() {
+  public static function providerTestSetErrorByName() {
     return [
       // Only validate the 'options' element.
       [[['options']], ['options' => '']],
@@ -264,7 +264,7 @@ public function testIsCached($cache_key, $no_cache_key, $expected) {
   /**
    * Provides test data for testIsCached().
    */
-  public function providerTestIsCached() {
+  public static function providerTestIsCached() {
     $data = [];
     $data[] = [
       TRUE,
@@ -335,7 +335,7 @@ public function testIsMethodType($set_method_type, $input, $expected) {
   /**
    * Provides test data for testIsMethodType().
    */
-  public function providerTestIsMethodType() {
+  public static function providerTestIsMethodType() {
     $data = [];
     $data[] = [
       'get',
diff --git a/core/tests/Drupal/Tests/Core/Form/FormStateValuesTraitTest.php b/core/tests/Drupal/Tests/Core/Form/FormStateValuesTraitTest.php
index 389955669382ae6cff1178b968317efd5ee8f58d..1b931f3027d5c76908be263fb33213e9acf0f1d8 100644
--- a/core/tests/Drupal/Tests/Core/Form/FormStateValuesTraitTest.php
+++ b/core/tests/Drupal/Tests/Core/Form/FormStateValuesTraitTest.php
@@ -62,7 +62,7 @@ public function testGetValue($key, $expected, $default = NULL) {
    *   - The expected value (mixed).
    *   - The default value (mixed).
    */
-  public function providerGetValue() {
+  public static function providerGetValue() {
     $data = [];
     $data[] = [
       'foo', 'one',
@@ -130,7 +130,7 @@ public function testSetValue($key, $value, $expected) {
    *   - The new value to set (mixed).
    *   - The expected form state values after setting the new value (mixed[]).
    */
-  public function providerSetValue() {
+  public static function providerSetValue() {
     $data = [];
     $data[] = [
       'foo', 'one', ['bar' => 'wrong', 'foo' => 'one'],
@@ -170,7 +170,7 @@ public function testHasValue($key, $expected) {
    *   - The key to check for in the form state (string)
    *   - Whether the form state has an item with that key (bool).
    */
-  public function providerHasValue() {
+  public static function providerHasValue() {
     $data = [];
     $data[] = [
       'foo', TRUE,
@@ -219,7 +219,7 @@ public function testIsValueEmpty($key, $expected) {
    *   - The key to check for in the form state (string)
    *   - Whether the value is empty or not (bool).
    */
-  public function providerIsValueEmpty() {
+  public static function providerIsValueEmpty() {
     $data = [];
     $data[] = [
       'foo', FALSE,
diff --git a/core/tests/Drupal/Tests/Core/Form/FormSubmitterTest.php b/core/tests/Drupal/Tests/Core/Form/FormSubmitterTest.php
index e5fa53b2d34b0571528a09cdc7dd42de021c3e85..83dbfec7378a400215ddb4b95f03a9cc266fe266 100644
--- a/core/tests/Drupal/Tests/Core/Form/FormSubmitterTest.php
+++ b/core/tests/Drupal/Tests/Core/Form/FormSubmitterTest.php
@@ -105,7 +105,7 @@ public function testHandleFormSubmissionWithResponses($class, $form_state_key) {
     $this->assertInstanceOf('Symfony\Component\HttpFoundation\Response', $return);
   }
 
-  public function providerTestHandleFormSubmissionWithResponses() {
+  public static function providerTestHandleFormSubmissionWithResponses() {
     return [
       ['Symfony\Component\HttpFoundation\Response', 'response'],
       ['Symfony\Component\HttpFoundation\RedirectResponse', 'redirect'],
@@ -178,7 +178,7 @@ public function testRedirectWithUrl(Url $redirect_value, $result, $status = 303)
    * @return array
    *   Returns some test data.
    */
-  public function providerTestRedirectWithUrl() {
+  public static function providerTestRedirectWithUrl() {
     return [
       [new Url('test_route_a', [], ['absolute' => TRUE]), 'test-route'],
       [new Url('test_route_b', ['key' => 'value'], ['absolute' => TRUE]), 'test-route/value'],
diff --git a/core/tests/Drupal/Tests/Core/Form/FormValidatorTest.php b/core/tests/Drupal/Tests/Core/Form/FormValidatorTest.php
index db334a0feef60deeb8da273be753929dda67c81c..ae523863d100036e6b52b32bf9c45ad36b2e4dda 100644
--- a/core/tests/Drupal/Tests/Core/Form/FormValidatorTest.php
+++ b/core/tests/Drupal/Tests/Core/Form/FormValidatorTest.php
@@ -183,7 +183,7 @@ public function testHandleErrorsWithLimitedValidation($sections, $triggering_ele
     $this->assertSame($expected, $form_state->getValues());
   }
 
-  public function providerTestHandleErrorsWithLimitedValidation() {
+  public static function providerTestHandleErrorsWithLimitedValidation() {
     return [
       // Test with a non-existent section.
       [
@@ -319,7 +319,7 @@ public function testRequiredErrorMessage($element, $expected_message) {
     $form_validator->validateForm('test_form_id', $form, $form_state);
   }
 
-  public function providerTestRequiredErrorMessage() {
+  public static function providerTestRequiredErrorMessage() {
     return [
       [
         // Use the default message with a title.
diff --git a/core/tests/Drupal/Tests/Core/Form/OptGroupTest.php b/core/tests/Drupal/Tests/Core/Form/OptGroupTest.php
index dcd20b47b36add4d648e1e9f5cc9954a2bdd20d5..25f6bf5668aa26196eefe384f0aca9fb4d71ef02 100644
--- a/core/tests/Drupal/Tests/Core/Form/OptGroupTest.php
+++ b/core/tests/Drupal/Tests/Core/Form/OptGroupTest.php
@@ -27,7 +27,7 @@ public function testFlattenOptions($options) {
    *
    * @return array
    */
-  public function providerTestFlattenOptions() {
+  public static function providerTestFlattenOptions() {
     $object1 = new \stdClass();
     $object1->option = ['foo' => 'foo'];
     $object2 = new \stdClass();
diff --git a/core/tests/Drupal/Tests/Core/Form/SubformStateTest.php b/core/tests/Drupal/Tests/Core/Form/SubformStateTest.php
index 1f6d3df502f6e20c025d91ae7f6d955e9e7b5df5..016fa6a19719463acf4ac5d1016cfb186a2b2b9f 100644
--- a/core/tests/Drupal/Tests/Core/Form/SubformStateTest.php
+++ b/core/tests/Drupal/Tests/Core/Form/SubformStateTest.php
@@ -152,7 +152,7 @@ public function testGetValue($parents, $key, $expected, $default = NULL) {
   /**
    * Provides data to self::testGetValue().
    */
-  public function providerTestGetValue() {
+  public static function providerTestGetValue() {
     $data = [];
     $data['exist'] = [
       ['dog'],
@@ -176,7 +176,7 @@ public function testGetValueBroken(array $parents, $key, $expected, $default = N
   /**
    * Provides data to self::testGetValueBroken().
    */
-  public function providerTestGetValueBroken() {
+  public static function providerTestGetValueBroken() {
     $data = [];
     $data['nested'] = [
       ['dog', 'name'],
@@ -205,7 +205,7 @@ public function testSetValues($parents, $new_values, $expected) {
   /**
    * Provides data to self::testSetValues().
    */
-  public function providerTestSetValues() {
+  public static function providerTestSetValues() {
     $data = [];
     $data['exist'] = [
       ['dog'],
diff --git a/core/tests/Drupal/Tests/Core/Http/CacheableExceptionTest.php b/core/tests/Drupal/Tests/Core/Http/CacheableExceptionTest.php
index 7dbd3f9fb4057d1f63f18397c22c60bbb25f2cbd..edd771a7408d3b24524212c1d650c7e5ac879e9d 100644
--- a/core/tests/Drupal/Tests/Core/Http/CacheableExceptionTest.php
+++ b/core/tests/Drupal/Tests/Core/Http/CacheableExceptionTest.php
@@ -59,7 +59,7 @@ public function testExceptions($status_code, $class, $argument = NULL, $expected
     $this->assertSame(123, $exception->getCode());
   }
 
-  public function providerTestExceptions() {
+  public static function providerTestExceptions() {
     return [
       [400, CacheableBadRequestHttpException::class],
       [401, CacheableUnauthorizedHttpException::class, 'test challenge', ['WWW-Authenticate' => 'test challenge']],
diff --git a/core/tests/Drupal/Tests/Core/Http/ClientFactoryTest.php b/core/tests/Drupal/Tests/Core/Http/ClientFactoryTest.php
index 94a35cecbaad286d8867fa3df8899c7148ee3530..d880ee1d645267eda787f1da3a5d8c634a32a6d8 100644
--- a/core/tests/Drupal/Tests/Core/Http/ClientFactoryTest.php
+++ b/core/tests/Drupal/Tests/Core/Http/ClientFactoryTest.php
@@ -64,7 +64,7 @@ public function testCreateFromOptions($settings_config, $parameter_config, $expe
    *
    * @return array
    */
-  public function providerTestCreateFromOptions() {
+  public static function providerTestCreateFromOptions() {
     return [
       [[], [], ['verify' => TRUE, 'timeout' => 30]],
       [['timeout' => 40], [], ['verify' => TRUE, 'timeout' => 40]],
diff --git a/core/tests/Drupal/Tests/Core/Http/TrustedHostsRequestFactoryTest.php b/core/tests/Drupal/Tests/Core/Http/TrustedHostsRequestFactoryTest.php
index b9895ee4e8fb7d7c252fef9407ddeb4d8a06de6e..57530376ee2b50166b358f5c5f1c56063bc3fb1a 100644
--- a/core/tests/Drupal/Tests/Core/Http/TrustedHostsRequestFactoryTest.php
+++ b/core/tests/Drupal/Tests/Core/Http/TrustedHostsRequestFactoryTest.php
@@ -46,7 +46,7 @@ public function testCreateRequest($host, $server, $expected) {
    *   TrustedHostsRequestFactory::createRequest().
    *   - A string containing the expected host of the created request.
    */
-  public function providerTestCreateRequest() {
+  public static function providerTestCreateRequest() {
     $tests = [];
     $tests[] = ['example.com', [], 'example.com'];
     $tests[] = ['localhost', [], 'localhost'];
diff --git a/core/tests/Drupal/Tests/Core/Language/LanguageUnitTest.php b/core/tests/Drupal/Tests/Core/Language/LanguageUnitTest.php
index 67e16ab64ec795bc188dc362b857bd9aaaf8e65a..e347ed5fe25c83b8ca1555acb754ff2b465f1271 100644
--- a/core/tests/Drupal/Tests/Core/Language/LanguageUnitTest.php
+++ b/core/tests/Drupal/Tests/Core/Language/LanguageUnitTest.php
@@ -105,7 +105,7 @@ public function testSortArrayOfLanguages(array $languages, array $expected) {
    * @return array
    *   An array of test data.
    */
-  public function providerTestSortArrayOfLanguages() {
+  public static function providerTestSortArrayOfLanguages() {
     $language9A = new Language(['id' => 'dd', 'name' => 'A', 'weight' => 9]);
     $language10A = new Language(['id' => 'ee', 'name' => 'A', 'weight' => 10]);
     $language10B = new Language(['id' => 'ff', 'name' => 'B', 'weight' => 10]);
diff --git a/core/tests/Drupal/Tests/Core/Layout/LayoutDefaultTest.php b/core/tests/Drupal/Tests/Core/Layout/LayoutDefaultTest.php
index 142b31a3d76c0d23690acbe76f92efd18873d9ac..9bb982c9f127372051db8a7c21fc04e98b62da3c 100644
--- a/core/tests/Drupal/Tests/Core/Layout/LayoutDefaultTest.php
+++ b/core/tests/Drupal/Tests/Core/Layout/LayoutDefaultTest.php
@@ -52,7 +52,7 @@ public function testBuild($regions, $expected) {
   /**
    * Provides test data for ::testBuild().
    */
-  public function providerTestBuild() {
+  public static function providerTestBuild() {
     $data = [];
     // Empty regions are not added.
     $data['right_only'] = [
diff --git a/core/tests/Drupal/Tests/Core/Logger/LogMessageParserTest.php b/core/tests/Drupal/Tests/Core/Logger/LogMessageParserTest.php
index 537d727fb6ccf8d7a330d22ec69144c6c51905be..5e88cd9be7cc9ef31c93308cbe0ca97b4fc6b99c 100644
--- a/core/tests/Drupal/Tests/Core/Logger/LogMessageParserTest.php
+++ b/core/tests/Drupal/Tests/Core/Logger/LogMessageParserTest.php
@@ -39,7 +39,7 @@ public function testParseMessagePlaceholders(array $value, array $expected) {
   /**
    * Data provider for testParseMessagePlaceholders().
    */
-  public function providerTestParseMessagePlaceholders() {
+  public static function providerTestParseMessagePlaceholders() {
     return [
       'PSR3-style placeholder' => [
         ['message' => 'User {username} created', 'context' => ['username' => 'Dries']],
diff --git a/core/tests/Drupal/Tests/Core/Menu/LocalTaskDefaultTest.php b/core/tests/Drupal/Tests/Core/Menu/LocalTaskDefaultTest.php
index 7d966e36aaa2a244453ed5d3d3bf3e7bf7be93bc..223fb5a6d6cc0283852eceb49ec94eb857a05c93 100644
--- a/core/tests/Drupal/Tests/Core/Menu/LocalTaskDefaultTest.php
+++ b/core/tests/Drupal/Tests/Core/Menu/LocalTaskDefaultTest.php
@@ -190,7 +190,7 @@ public function testGetRouteParametersForDynamicRouteWithUpcastedParametersEmpty
    * @return array
    *   A list or test plugin definition and expected weight.
    */
-  public function providerTestGetWeight() {
+  public static function providerTestGetWeight() {
     return [
       // Manually specify a weight, so this is used.
       [['weight' => 314], 'test_id', 314],
diff --git a/core/tests/Drupal/Tests/Core/Menu/MenuTreeParametersTest.php b/core/tests/Drupal/Tests/Core/Menu/MenuTreeParametersTest.php
index 8b87382fb920ed26021b726b322ef8d30c7046ee..df19630a04dd3e477c8aafa28109a929a0c01c0d 100644
--- a/core/tests/Drupal/Tests/Core/Menu/MenuTreeParametersTest.php
+++ b/core/tests/Drupal/Tests/Core/Menu/MenuTreeParametersTest.php
@@ -19,7 +19,7 @@ class MenuTreeParametersTest extends UnitTestCase {
   /**
    * Provides test data for testSetMinDepth().
    */
-  public function providerTestSetMinDepth() {
+  public static function providerTestSetMinDepth() {
     $data = [];
 
     // Valid values at the extremes and in the middle.
diff --git a/core/tests/Drupal/Tests/Core/Menu/StaticMenuLinkOverridesTest.php b/core/tests/Drupal/Tests/Core/Menu/StaticMenuLinkOverridesTest.php
index 39983742006e6b5492fb21ef601a8ee31ec8948b..bd6944b62e304d1bcd6a567170be327bdd8d280a 100644
--- a/core/tests/Drupal/Tests/Core/Menu/StaticMenuLinkOverridesTest.php
+++ b/core/tests/Drupal/Tests/Core/Menu/StaticMenuLinkOverridesTest.php
@@ -47,7 +47,7 @@ public function testLoadOverride($overrides, $id, $expected) {
   /**
    * Provides test data for testLoadOverride.
    */
-  public function providerTestLoadOverride() {
+  public static function providerTestLoadOverride() {
     $data = [];
     // Valid ID.
     $data[] = [['test1' => ['parent' => 'test0']], 'test1', ['parent' => 'test0']];
@@ -181,7 +181,7 @@ public function testDeleteOverrides($ids, array $old_definitions, array $new_def
   /**
    * Provides test data for testDeleteOverrides.
    */
-  public function providerTestDeleteOverrides() {
+  public static function providerTestDeleteOverrides() {
     $data = [];
     // Delete a non existing ID.
     $data[] = ['test0', [], []];
diff --git a/core/tests/Drupal/Tests/Core/PageCache/ChainRequestPolicyTest.php b/core/tests/Drupal/Tests/Core/PageCache/ChainRequestPolicyTest.php
index cf612b8f377782f936695c813037185338201a5e..227cfc835332d4c6895582b3a35086b2542fe465 100644
--- a/core/tests/Drupal/Tests/Core/PageCache/ChainRequestPolicyTest.php
+++ b/core/tests/Drupal/Tests/Core/PageCache/ChainRequestPolicyTest.php
@@ -92,7 +92,7 @@ public function testChainExceptionOnInvalidReturnValue($return_value) {
    * @return array
    *   Test input and expected result.
    */
-  public function providerChainExceptionOnInvalidReturnValue() {
+  public static function providerChainExceptionOnInvalidReturnValue() {
     return [
       [FALSE],
       [0],
@@ -130,7 +130,7 @@ public function testAllowIfAnyRuleReturnedAllow($return_values) {
    * @return array
    *   Test input and expected result.
    */
-  public function providerAllowIfAnyRuleReturnedAllow() {
+  public static function providerAllowIfAnyRuleReturnedAllow() {
     return [
       [[RequestPolicyInterface::ALLOW]],
       [[NULL, RequestPolicyInterface::ALLOW]],
diff --git a/core/tests/Drupal/Tests/Core/PageCache/ChainResponsePolicyTest.php b/core/tests/Drupal/Tests/Core/PageCache/ChainResponsePolicyTest.php
index 5daf21b7743dffe7797e82f3b9524330559f687d..377d5a16d5fa1d05324c27da8a4020c6158f7939 100644
--- a/core/tests/Drupal/Tests/Core/PageCache/ChainResponsePolicyTest.php
+++ b/core/tests/Drupal/Tests/Core/PageCache/ChainResponsePolicyTest.php
@@ -101,7 +101,7 @@ public function testChainExceptionOnInvalidReturnValue($return_value) {
    * @return array
    *   Test input and expected result.
    */
-  public function providerChainExceptionOnInvalidReturnValue() {
+  public static function providerChainExceptionOnInvalidReturnValue() {
     return [
       [FALSE],
       [0],
diff --git a/core/tests/Drupal/Tests/Core/PageCache/CommandLineOrUnsafeMethodTest.php b/core/tests/Drupal/Tests/Core/PageCache/CommandLineOrUnsafeMethodTest.php
index fab3ccd2996a952dc9035da5bd2c051158af48ac..99eb53cd7332247e344c378358d61c12723fae3a 100644
--- a/core/tests/Drupal/Tests/Core/PageCache/CommandLineOrUnsafeMethodTest.php
+++ b/core/tests/Drupal/Tests/Core/PageCache/CommandLineOrUnsafeMethodTest.php
@@ -56,7 +56,7 @@ public function testHttpMethod($expected_result, $method) {
    * @return array
    *   Test data and expected results.
    */
-  public function providerTestHttpMethod() {
+  public static function providerTestHttpMethod() {
     return [
       [NULL, 'GET'],
       [NULL, 'HEAD'],
diff --git a/core/tests/Drupal/Tests/Core/ParamConverter/EntityConverterTest.php b/core/tests/Drupal/Tests/Core/ParamConverter/EntityConverterTest.php
index b595fdb74a38370416a10ad44b6e8e845dbe2e4b..3490bd362f08c2fd862dc1f5f56cd4869eac7afd 100644
--- a/core/tests/Drupal/Tests/Core/ParamConverter/EntityConverterTest.php
+++ b/core/tests/Drupal/Tests/Core/ParamConverter/EntityConverterTest.php
@@ -169,7 +169,7 @@ public function testApplies(array $definition, $name, Route $route, $applies) {
   /**
    * Provides test data for testApplies()
    */
-  public function providerTestApplies() {
+  public static function providerTestApplies() {
     $data = [];
     $data[] = [['type' => 'entity:foo'], 'foo', new Route('/test/{foo}/bar'), FALSE];
     $data[] = [['type' => 'entity:entity_test'], 'foo', new Route('/test/{foo}/bar'), TRUE];
@@ -203,7 +203,7 @@ public function testConvert($value, array $definition, array $defaults, $expecte
   /**
    * Provides test data for testConvert.
    */
-  public function providerTestConvert() {
+  public static function providerTestConvert() {
     $data = [];
     // Existing entity type.
     $data[] = ['valid_id', ['type' => 'entity:entity_test'], ['foo' => 'valid_id'], (object) ['id' => 'valid_id']];
diff --git a/core/tests/Drupal/Tests/Core/ParamConverter/EntityRevisionParamConverterTest.php b/core/tests/Drupal/Tests/Core/ParamConverter/EntityRevisionParamConverterTest.php
index 2592562b9e2be358b537702c5a103309efe0bf35..330ab0ff0f3138a40ec0e5f746e8e6c52bb5f05f 100644
--- a/core/tests/Drupal/Tests/Core/ParamConverter/EntityRevisionParamConverterTest.php
+++ b/core/tests/Drupal/Tests/Core/ParamConverter/EntityRevisionParamConverterTest.php
@@ -88,7 +88,7 @@ public function testConvert($value, array $definition, array $defaults, $expecte
   /**
    * Provides test data for testConvert.
    */
-  public function providerTestConvert() {
+  public static function providerTestConvert() {
     $data = [];
     // Existing entity type.
     $data[] = ['valid_id', ['type' => 'entity_revision:entity_test'], ['test_revision' => 'valid_id'], (object) ['revision_id' => 'valid_id']];
diff --git a/core/tests/Drupal/Tests/Core/ParamConverter/ParamConverterManagerTest.php b/core/tests/Drupal/Tests/Core/ParamConverter/ParamConverterManagerTest.php
index 017c50179c9ae7c0b15f07ea37b5ba94e376e6cc..e518f99e6eff0cea8e61b95f428fb4f658a493f4 100644
--- a/core/tests/Drupal/Tests/Core/ParamConverter/ParamConverterManagerTest.php
+++ b/core/tests/Drupal/Tests/Core/ParamConverter/ParamConverterManagerTest.php
@@ -112,7 +112,7 @@ public function providerTestAddConverter() {
    *
    * @see ParamConverterManagerTest::testGetConverter()
    */
-  public function providerTestGetConverter() {
+  public static function providerTestGetConverter() {
     return [
       ['ape', 'ApeConverterClass'],
       ['cat', 'CatConverterClass'],
@@ -159,7 +159,7 @@ public function testSetRouteParameterConverters($path, $parameters = NULL, $expe
   /**
    * Provides data for testSetRouteParameterConverters().
    */
-  public function providerTestSetRouteParameterConverters() {
+  public static function providerTestSetRouteParameterConverters() {
     return [
       ['/test'],
       ['/test/{id}', ['id' => []], 'applied'],
diff --git a/core/tests/Drupal/Tests/Core/Password/PhpPasswordTest.php b/core/tests/Drupal/Tests/Core/Password/PhpPasswordTest.php
index 646df5091637af6029179e3e8ebe1d7895dece32..ec62177e9679a3b550c51dccb404c91c74ca4bd3 100644
--- a/core/tests/Drupal/Tests/Core/Password/PhpPasswordTest.php
+++ b/core/tests/Drupal/Tests/Core/Password/PhpPasswordTest.php
@@ -106,7 +106,7 @@ public function testLongPassword($password, $allowed) {
   /**
    * Provides the test matrix for testLongPassword().
    */
-  public function providerLongPasswords() {
+  public static function providerLongPasswords() {
     // '512 byte long password is allowed.'
     $passwords['allowed'] = [str_repeat('x', PasswordInterface::PASSWORD_MAX_LENGTH), TRUE];
     // 513 byte long password is not allowed.
diff --git a/core/tests/Drupal/Tests/Core/Path/PathMatcherTest.php b/core/tests/Drupal/Tests/Core/Path/PathMatcherTest.php
index d733204fa14d2306fcd87d68fd1d37267c59c129..1213e9e3509563892c29572d1fffeef353e0b9e2 100644
--- a/core/tests/Drupal/Tests/Core/Path/PathMatcherTest.php
+++ b/core/tests/Drupal/Tests/Core/Path/PathMatcherTest.php
@@ -57,7 +57,7 @@ public function testMatchPath($patterns, $paths) {
    * @return array
    *   A nested array of pattern arrays and path arrays.
    */
-  public function getMatchPathData() {
+  public static function getMatchPathData() {
     return [
       [
         // Single absolute paths.
diff --git a/core/tests/Drupal/Tests/Core/PathProcessor/PathProcessorFrontTest.php b/core/tests/Drupal/Tests/Core/PathProcessor/PathProcessorFrontTest.php
index 782fe3b55c9275e0bebab2b3fd4a5f2706b90f16..9cdd35e54e9ae0a6b9f1b9d695daa02cf59f980b 100644
--- a/core/tests/Drupal/Tests/Core/PathProcessor/PathProcessorFrontTest.php
+++ b/core/tests/Drupal/Tests/Core/PathProcessor/PathProcessorFrontTest.php
@@ -41,7 +41,7 @@ public function testProcessInbound($frontpage_path, $path, $expected, array $exp
   /**
    * Inbound paths and expected results.
    */
-  public function providerProcessInbound() {
+  public static function providerProcessInbound() {
     return [
       'accessing frontpage' => ['/node', '/', '/node'],
       'accessing non frontpage' => ['/node', '/user', '/user'],
diff --git a/core/tests/Drupal/Tests/Core/Plugin/Context/ContextDefinitionIsSatisfiedTest.php b/core/tests/Drupal/Tests/Core/Plugin/Context/ContextDefinitionIsSatisfiedTest.php
index 66266bd616ca207400eecc61ea501256f94ce91d..1fd6da4f1ac4c1643ccf1b9ea96fcb641838a79c 100644
--- a/core/tests/Drupal/Tests/Core/Plugin/Context/ContextDefinitionIsSatisfiedTest.php
+++ b/core/tests/Drupal/Tests/Core/Plugin/Context/ContextDefinitionIsSatisfiedTest.php
@@ -82,7 +82,7 @@ public function testIsSatisfiedBy($expected, ContextDefinition $requirement, Con
   /**
    * Provides test data for ::testIsSatisfiedBy().
    */
-  public function providerTestIsSatisfiedBy() {
+  public static function providerTestIsSatisfiedBy() {
     $data = [];
 
     // Simple data types.
diff --git a/core/tests/Drupal/Tests/Core/Plugin/Context/ContextDefinitionTest.php b/core/tests/Drupal/Tests/Core/Plugin/Context/ContextDefinitionTest.php
index 6a54511a545a2b5913fd2f61e83aa0279c78dd02..0ddf0a4178ee9679b438ee9d6ac5474f79e4037e 100644
--- a/core/tests/Drupal/Tests/Core/Plugin/Context/ContextDefinitionTest.php
+++ b/core/tests/Drupal/Tests/Core/Plugin/Context/ContextDefinitionTest.php
@@ -21,7 +21,7 @@ class ContextDefinitionTest extends UnitTestCase {
   /**
    * Very simple data provider.
    */
-  public function providerGetDataDefinition() {
+  public static function providerGetDataDefinition() {
     return [
       [TRUE],
       [FALSE],
@@ -163,7 +163,7 @@ public function testGetDataDefinitionInvalidType($is_multiple) {
   /**
    * Data provider for testGetConstraint.
    */
-  public function providerGetConstraint() {
+  public static function providerGetConstraint() {
     return [
       [NULL, [], 'nonexistent_constraint_name'],
       [
diff --git a/core/tests/Drupal/Tests/Core/Plugin/Context/EntityContextDefinitionIsSatisfiedTest.php b/core/tests/Drupal/Tests/Core/Plugin/Context/EntityContextDefinitionIsSatisfiedTest.php
index 58cc1e1102ab99b039e7dcdba9d211a2170a1a05..5e9c909e4a3a154bfc16ac3192f6b283c3b179ea 100644
--- a/core/tests/Drupal/Tests/Core/Plugin/Context/EntityContextDefinitionIsSatisfiedTest.php
+++ b/core/tests/Drupal/Tests/Core/Plugin/Context/EntityContextDefinitionIsSatisfiedTest.php
@@ -244,7 +244,7 @@ public function testIsSatisfiedByGenerateBundledEntity($expected, array $require
   /**
    * Provides test data for ::testIsSatisfiedByGenerateBundledEntity().
    */
-  public function providerTestIsSatisfiedByGenerateBundledEntity() {
+  public static function providerTestIsSatisfiedByGenerateBundledEntity() {
     $data = [];
     $data['no requirement'] = [
       TRUE,
@@ -322,7 +322,7 @@ public function testIsSatisfiedByPassBundledEntity($expected, $requirement_const
   /**
    * Provides test data for ::testIsSatisfiedByPassBundledEntity().
    */
-  public function providerTestIsSatisfiedByPassBundledEntity() {
+  public static function providerTestIsSatisfiedByPassBundledEntity() {
     $data = [];
     $data[] = [TRUE, []];
     $data[] = [FALSE, ['first_bundle']];
diff --git a/core/tests/Drupal/Tests/Core/Plugin/ContextHandlerTest.php b/core/tests/Drupal/Tests/Core/Plugin/ContextHandlerTest.php
index c3a655eb3837dcb9f7f99876376f4ecc98a6d902..925badd54fadb376687fed699ec00d7d4b38bc52 100644
--- a/core/tests/Drupal/Tests/Core/Plugin/ContextHandlerTest.php
+++ b/core/tests/Drupal/Tests/Core/Plugin/ContextHandlerTest.php
@@ -201,7 +201,7 @@ public function testFilterPluginDefinitionsByContexts($has_context, $definitions
   /**
    * Provides data for testFilterPluginDefinitionsByContexts().
    */
-  public function providerTestFilterPluginDefinitionsByContexts() {
+  public static function providerTestFilterPluginDefinitionsByContexts() {
     $data = [];
 
     $plugins = [];
diff --git a/core/tests/Drupal/Tests/Core/Plugin/DefaultLazyPluginCollectionTest.php b/core/tests/Drupal/Tests/Core/Plugin/DefaultLazyPluginCollectionTest.php
index 5f78e8ac89302bfa8b45b9dd9fca3557e47595ff..70b62410e80230df4d19ea53d99849d05671e5f7 100644
--- a/core/tests/Drupal/Tests/Core/Plugin/DefaultLazyPluginCollectionTest.php
+++ b/core/tests/Drupal/Tests/Core/Plugin/DefaultLazyPluginCollectionTest.php
@@ -64,7 +64,7 @@ public function testGetNotExistingPlugin() {
    * @return array
    *   The test data.
    */
-  public function providerTestSortHelper() {
+  public static function providerTestSortHelper() {
     return [
       ['apple', 'apple', 0],
       ['apple', 'cherry', -1],
diff --git a/core/tests/Drupal/Tests/Core/Plugin/DefaultPluginManagerTest.php b/core/tests/Drupal/Tests/Core/Plugin/DefaultPluginManagerTest.php
index 196598b40f1af48c94d0979ef8e8372665bd7d3c..2f865f65a8697019c24a7c1143780e64d8324f0a 100644
--- a/core/tests/Drupal/Tests/Core/Plugin/DefaultPluginManagerTest.php
+++ b/core/tests/Drupal/Tests/Core/Plugin/DefaultPluginManagerTest.php
@@ -414,7 +414,7 @@ public function testProcessDefinition($definition, $expected) {
     $this->assertEquals($expected, $definition);
   }
 
-  public function providerTestProcessDefinition() {
+  public static function providerTestProcessDefinition() {
     $data = [];
 
     $data['merge'][] = [
diff --git a/core/tests/Drupal/Tests/Core/Plugin/FilteredPluginManagerTraitTest.php b/core/tests/Drupal/Tests/Core/Plugin/FilteredPluginManagerTraitTest.php
index e0a5f141ffba71a0c88101531b175184f1719595..15896ffb7ca4bda9cefe3703fc5965da3fd2d587 100644
--- a/core/tests/Drupal/Tests/Core/Plugin/FilteredPluginManagerTraitTest.php
+++ b/core/tests/Drupal/Tests/Core/Plugin/FilteredPluginManagerTraitTest.php
@@ -56,7 +56,7 @@ public function testGetFilteredDefinitions($contexts, $expected) {
   /**
    * Provides test data for ::testGetFilteredDefinitions().
    */
-  public function providerTestGetFilteredDefinitions() {
+  public static function providerTestGetFilteredDefinitions() {
     $data = [];
     $data['populated context'] = [
       ['context1' => 'fake context'],
diff --git a/core/tests/Drupal/Tests/Core/Plugin/PluginWithFormsTraitTest.php b/core/tests/Drupal/Tests/Core/Plugin/PluginWithFormsTraitTest.php
index 4c1b10ebf6103f3f3f53e8d91db7c3ae0900ed5e..46ede2cb185bfa2ef403db27fc9a7c972ce1691b 100644
--- a/core/tests/Drupal/Tests/Core/Plugin/PluginWithFormsTraitTest.php
+++ b/core/tests/Drupal/Tests/Core/Plugin/PluginWithFormsTraitTest.php
@@ -30,7 +30,7 @@ public function testGetFormClass(PluginWithFormsInterface $block_plugin, $operat
   /**
    * @return array
    */
-  public function providerGetFormClass() {
+  public static function providerGetFormClass() {
     $block_plugin_without_forms = new TestClass([], 'block_plugin_without_forms', [
       'provider' => 'block_test',
     ]);
diff --git a/core/tests/Drupal/Tests/Core/Render/BubbleableMetadataTest.php b/core/tests/Drupal/Tests/Core/Render/BubbleableMetadataTest.php
index c0502152bea5955192a4f7e0672c16b9e8bae58b..5895cf5ef39d8b109d1e1b0519c267bd8a5b7de8 100644
--- a/core/tests/Drupal/Tests/Core/Render/BubbleableMetadataTest.php
+++ b/core/tests/Drupal/Tests/Core/Render/BubbleableMetadataTest.php
@@ -67,7 +67,7 @@ public function testMerge(BubbleableMetadata $a, CacheableMetadata $b, Bubbleabl
    *
    * @return array
    */
-  public function providerTestMerge() {
+  public static function providerTestMerge() {
     return [
       // Second operand is a BubbleableMetadata object.
       // All empty.
@@ -118,7 +118,7 @@ public function testAddAttachments(BubbleableMetadata $initial, $attachments, Bu
   /**
    * Provides test data for testAddAttachments().
    */
-  public function providerTestAddAttachments() {
+  public static function providerTestAddAttachments() {
     return [
       [new BubbleableMetadata(), [], new BubbleableMetadata()],
       [new BubbleableMetadata(), ['library' => ['core/foo']], (new BubbleableMetadata())->setAttachments(['library' => ['core/foo']])],
@@ -140,7 +140,7 @@ public function testApplyTo(BubbleableMetadata $metadata, array $render_array, a
    *
    * @return array
    */
-  public function providerTestApplyTo() {
+  public static function providerTestApplyTo() {
     $data = [];
 
     $empty_metadata = new BubbleableMetadata();
@@ -204,7 +204,7 @@ public function testCreateFromRenderArray(array $render_array, BubbleableMetadat
    *
    * @return array
    */
-  public function providerTestCreateFromRenderArray() {
+  public static function providerTestCreateFromRenderArray() {
     $data = [];
 
     $empty_metadata = new BubbleableMetadata();
@@ -398,7 +398,7 @@ public function testMergeAttachmentsHtmlHeadMerging($a, $b, $expected) {
    *
    * @return array
    */
-  public function providerTestMergeAttachmentsHtmlHeadMerging() {
+  public static function providerTestMergeAttachmentsHtmlHeadMerging() {
     $meta = [
       '#tag' => 'meta',
       '#attributes' => [
@@ -471,7 +471,7 @@ public function testMergeAttachmentsHtmlHeadLinkMerging($a, $b, $expected) {
    *
    * @return array
    */
-  public function providerTestMergeAttachmentsHtmlHeadLinkMerging() {
+  public static function providerTestMergeAttachmentsHtmlHeadLinkMerging() {
     $rel = [
       'rel' => 'rel',
       'href' => 'http://rel.example.com',
@@ -537,7 +537,7 @@ public function testMergeAttachmentsHttpHeaderMerging($a, $b, $expected) {
    *
    * @return array
    */
-  public function providerTestMergeAttachmentsHttpHeaderMerging() {
+  public static function providerTestMergeAttachmentsHttpHeaderMerging() {
     $content_type = [
       'Content-Type',
       'application/rss+xml; charset=utf-8',
diff --git a/core/tests/Drupal/Tests/Core/Render/Element/HtmlTagTest.php b/core/tests/Drupal/Tests/Core/Render/Element/HtmlTagTest.php
index e0f5bceb13f9302007256b1a87d6ef2c46e27db2..104f0fec14031282fcfdc5ed167c519f7062fb38 100644
--- a/core/tests/Drupal/Tests/Core/Render/Element/HtmlTagTest.php
+++ b/core/tests/Drupal/Tests/Core/Render/Element/HtmlTagTest.php
@@ -42,7 +42,7 @@ public function testPreRenderHtmlTag($element, $expected) {
   /**
    * Data provider for preRenderHtmlTag test.
    */
-  public function providerPreRenderHtmlTag() {
+  public static function providerPreRenderHtmlTag() {
     $tags = [];
 
     // Value prefix/suffix.
diff --git a/core/tests/Drupal/Tests/Core/Render/Element/MachineNameTest.php b/core/tests/Drupal/Tests/Core/Render/Element/MachineNameTest.php
index c6ccbc3f3aa2206b55481313dc042890f331b9da..1361a55ee1d60168984d2d6f03d6867ab10e62fd 100644
--- a/core/tests/Drupal/Tests/Core/Render/Element/MachineNameTest.php
+++ b/core/tests/Drupal/Tests/Core/Render/Element/MachineNameTest.php
@@ -34,7 +34,7 @@ public function testValueCallback($expected, $input) {
   /**
    * Data provider for testValueCallback().
    */
-  public function providerTestValueCallback() {
+  public static function providerTestValueCallback() {
     $data = [];
     $data[] = [NULL, FALSE];
     $data[] = [NULL, NULL];
diff --git a/core/tests/Drupal/Tests/Core/Render/Element/PasswordConfirmTest.php b/core/tests/Drupal/Tests/Core/Render/Element/PasswordConfirmTest.php
index 655f8da70ea4f5b1ca2b4db84e1381ce43d4bf60..1862a3a343e3270e38b25ee003f6facf0d1106ea 100644
--- a/core/tests/Drupal/Tests/Core/Render/Element/PasswordConfirmTest.php
+++ b/core/tests/Drupal/Tests/Core/Render/Element/PasswordConfirmTest.php
@@ -27,7 +27,7 @@ public function testValueCallback($expected, $element, $input) {
   /**
    * Data provider for testValueCallback().
    */
-  public function providerTestValueCallback() {
+  public static function providerTestValueCallback() {
     $data = [];
     $data[] = [['pass1' => '', 'pass2' => ''], [], NULL];
     $data[] = [['pass1' => '', 'pass2' => ''], ['#default_value' => ['pass2' => 'value']], NULL];
diff --git a/core/tests/Drupal/Tests/Core/Render/Element/PasswordTest.php b/core/tests/Drupal/Tests/Core/Render/Element/PasswordTest.php
index 35dcea028dbab9b53e4a8a402f729127bb71e869..9085722c3ec30501bf44341f07c36b4037433a29 100644
--- a/core/tests/Drupal/Tests/Core/Render/Element/PasswordTest.php
+++ b/core/tests/Drupal/Tests/Core/Render/Element/PasswordTest.php
@@ -28,7 +28,7 @@ public function testValueCallback($expected, $input) {
   /**
    * Data provider for testValueCallback().
    */
-  public function providerTestValueCallback() {
+  public static function providerTestValueCallback() {
     $data = [];
     $data[] = [NULL, FALSE];
     $data[] = [NULL, NULL];
diff --git a/core/tests/Drupal/Tests/Core/Render/Element/TextareaTest.php b/core/tests/Drupal/Tests/Core/Render/Element/TextareaTest.php
index 3218c61d6d99ee2ecab8f4328074c4e001f62a04..e66a2819a40e1b847bd46537620d854d6d9ff3f6 100644
--- a/core/tests/Drupal/Tests/Core/Render/Element/TextareaTest.php
+++ b/core/tests/Drupal/Tests/Core/Render/Element/TextareaTest.php
@@ -28,7 +28,7 @@ public function testValueCallback($expected, $input) {
   /**
    * Data provider for testValueCallback().
    */
-  public function providerTestValueCallback() {
+  public static function providerTestValueCallback() {
     $data = [];
     $data[] = [NULL, FALSE];
     $data[] = [NULL, NULL];
diff --git a/core/tests/Drupal/Tests/Core/Render/Element/TextfieldTest.php b/core/tests/Drupal/Tests/Core/Render/Element/TextfieldTest.php
index 640bff423eda9d03ee9580af380ff0d329472ea4..5ec874b2d92475fe104320af2109dd3d92278ff3 100644
--- a/core/tests/Drupal/Tests/Core/Render/Element/TextfieldTest.php
+++ b/core/tests/Drupal/Tests/Core/Render/Element/TextfieldTest.php
@@ -28,7 +28,7 @@ public function testValueCallback($expected, $input) {
   /**
    * Data provider for testValueCallback().
    */
-  public function providerTestValueCallback() {
+  public static function providerTestValueCallback() {
     $data = [];
     $data[] = [NULL, FALSE];
     $data[] = [NULL, NULL];
diff --git a/core/tests/Drupal/Tests/Core/Render/Element/TokenTest.php b/core/tests/Drupal/Tests/Core/Render/Element/TokenTest.php
index 1efeb73a88f23721a3387165aa464b03637df1ba..40f1bea21ab6fee1bce3ddcb5b71e95325df79fd 100644
--- a/core/tests/Drupal/Tests/Core/Render/Element/TokenTest.php
+++ b/core/tests/Drupal/Tests/Core/Render/Element/TokenTest.php
@@ -28,7 +28,7 @@ public function testValueCallback($expected, $input) {
   /**
    * Data provider for testValueCallback().
    */
-  public function providerTestValueCallback() {
+  public static function providerTestValueCallback() {
     $data = [];
     $data[] = [NULL, FALSE];
     $data[] = [NULL, NULL];
diff --git a/core/tests/Drupal/Tests/Core/Render/ElementInfoManagerTest.php b/core/tests/Drupal/Tests/Core/Render/ElementInfoManagerTest.php
index d9a970c7c94bd93f5d3a27a736b62c63723831a0..aae2733dbe21b1552dd31951be165335207b6e66 100644
--- a/core/tests/Drupal/Tests/Core/Render/ElementInfoManagerTest.php
+++ b/core/tests/Drupal/Tests/Core/Render/ElementInfoManagerTest.php
@@ -114,7 +114,7 @@ public function testGetInfoElementPlugin($plugin_class, $expected_info) {
    *
    * @return array
    */
-  public function providerTestGetInfoElementPlugin() {
+  public static function providerTestGetInfoElementPlugin() {
     $data = [];
     $data[] = [
       'Drupal\Core\Render\Element\ElementInterface',
diff --git a/core/tests/Drupal/Tests/Core/Render/ElementTest.php b/core/tests/Drupal/Tests/Core/Render/ElementTest.php
index 39e0aae6aeca83468631772f781b36e3896fc78e..31f3a7b8a2c6fc4a9ef8928d157515d98058c4f0 100644
--- a/core/tests/Drupal/Tests/Core/Render/ElementTest.php
+++ b/core/tests/Drupal/Tests/Core/Render/ElementTest.php
@@ -142,7 +142,7 @@ public function testVisibleChildren(array $element, array $expected_keys) {
    *
    * @return array
    */
-  public function providerVisibleChildren() {
+  public static function providerVisibleChildren() {
     return [
       [['#property1' => '', '#property2' => []], []],
       [['#property1' => '', 'child1' => []], ['child1']],
@@ -169,7 +169,7 @@ public function testSetAttributes($element, $map, $expected_element) {
   /**
    * Data provider for testSetAttributes().
    */
-  public function providerTestSetAttributes() {
+  public static function providerTestSetAttributes() {
     $base = ['#id' => 'id', '#class' => []];
     return [
       [$base, [], $base],
@@ -187,7 +187,7 @@ public function testIsEmpty(array $element, $expected) {
     $this->assertSame(Element::isEmpty($element), $expected);
   }
 
-  public function providerTestIsEmpty() {
+  public static function providerTestIsEmpty() {
     return [
       [[], TRUE],
       [['#attached' => []], FALSE],
diff --git a/core/tests/Drupal/Tests/Core/Render/MetadataBubblingUrlGeneratorTest.php b/core/tests/Drupal/Tests/Core/Render/MetadataBubblingUrlGeneratorTest.php
index 2b1e75f32fdc16ea185c0420a7446349027712fd..2c54d6146bce8cb31d9950280fa8878add6934e2 100644
--- a/core/tests/Drupal/Tests/Core/Render/MetadataBubblingUrlGeneratorTest.php
+++ b/core/tests/Drupal/Tests/Core/Render/MetadataBubblingUrlGeneratorTest.php
@@ -69,7 +69,7 @@ public function testUrlBubbleableMetadataBubbling($collect_bubbleable_metadata,
   /**
    * Data provider for ::testUrlBubbleableMetadataBubbling().
    */
-  public function providerUrlBubbleableMetadataBubbling() {
+  public static function providerUrlBubbleableMetadataBubbling() {
     return [
       // No bubbling when bubbleable metadata is collected.
       [TRUE, 0, []],
diff --git a/core/tests/Drupal/Tests/Core/Render/PlaceholderGeneratorTest.php b/core/tests/Drupal/Tests/Core/Render/PlaceholderGeneratorTest.php
index c248c9f78faf8a0cb7646ecc37707958163e5d31..e803b199d1601aeb25133b6ed56683dc77e529f7 100644
--- a/core/tests/Drupal/Tests/Core/Render/PlaceholderGeneratorTest.php
+++ b/core/tests/Drupal/Tests/Core/Render/PlaceholderGeneratorTest.php
@@ -85,7 +85,7 @@ public function testRenderPlaceholdersDifferentSortedContextsTags() {
   /**
    * @return array
    */
-  public function providerCreatePlaceholderGeneratesValidHtmlMarkup() {
+  public static function providerCreatePlaceholderGeneratesValidHtmlMarkup() {
     return [
       'multiple-arguments' => [['#lazy_builder' => ['Drupal\Tests\Core\Render\PlaceholdersTest::callback', ['foo', 'bar']]]],
       'special-character-&' => [['#lazy_builder' => ['Drupal\Tests\Core\Render\PlaceholdersTest::callback', ['foo&bar']]]],
diff --git a/core/tests/Drupal/Tests/Core/Render/RendererBubblingTest.php b/core/tests/Drupal/Tests/Core/Render/RendererBubblingTest.php
index fb6a43c9fb0b7652f3bf423530c31effe639a5a3..514f7fe4a76283e0ba0e5109f711240471655c8c 100644
--- a/core/tests/Drupal/Tests/Core/Render/RendererBubblingTest.php
+++ b/core/tests/Drupal/Tests/Core/Render/RendererBubblingTest.php
@@ -146,7 +146,7 @@ public function testContextBubblingEdgeCases(array $element, array $expected_top
     $this->assertRenderCacheItem($element['#cache']['keys'], $expected_cache_item);
   }
 
-  public function providerTestContextBubblingEdgeCases() {
+  public static function providerTestContextBubblingEdgeCases() {
     $data = [];
 
     // Cache contexts of inaccessible children aren't bubbled (because those
@@ -498,7 +498,7 @@ public function testBubblingWithPrerender($test_element) {
    *
    * @return array
    */
-  public function providerTestBubblingWithPrerender() {
+  public static function providerTestBubblingWithPrerender() {
     $data = [];
 
     // Test element without theme.
diff --git a/core/tests/Drupal/Tests/Core/Render/RendererTest.php b/core/tests/Drupal/Tests/Core/Render/RendererTest.php
index 5096ba4b42ea76c79e0daad8eb8e9a8beef0184d..de0897251cfa9f47511101f63030f6cc4b12268e 100644
--- a/core/tests/Drupal/Tests/Core/Render/RendererTest.php
+++ b/core/tests/Drupal/Tests/Core/Render/RendererTest.php
@@ -666,7 +666,7 @@ public function testRenderTwice($build) {
    *
    * @return array
    */
-  public function providerRenderTwice() {
+  public static function providerRenderTwice() {
     return [
       [
         [
@@ -720,7 +720,7 @@ public function testRenderChildrenAccess() {
    *
    * @return array
    */
-  public function providerAccessValues() {
+  public static function providerAccessValues() {
     return [
       [FALSE],
       [TRUE],
@@ -795,7 +795,7 @@ public function testRenderWithThemeArguments() {
    *
    * @return array
    */
-  public function providerRenderCache() {
+  public static function providerRenderCache() {
     return [
       'full access' => [
         NULL,
@@ -903,7 +903,7 @@ public function testRenderCacheMaxAge($max_age, $is_render_cached, $render_cache
     }
   }
 
-  public function providerTestRenderCacheMaxAge() {
+  public static function providerTestRenderCacheMaxAge() {
     return [
       [0, FALSE, NULL],
       [60, TRUE, (int) $_SERVER['REQUEST_TIME'] + 60],
@@ -973,7 +973,7 @@ public function testRenderCacheProperties(array $expected_results) {
    *   An array of associative arrays of expected results keyed by property
    *   name.
    */
-  public function providerTestRenderCacheProperties() {
+  public static function providerTestRenderCacheProperties() {
     return [
       [[]],
       [['child1' => 0, 'child2' => 0, '#custom_property' => 0, '#custom_property_array' => 0]],
@@ -998,7 +998,7 @@ public function testAddCacheableDependency(array $build, $object, array $expecte
     $this->assertEquals($build, $expected);
   }
 
-  public function providerTestAddCacheableDependency() {
+  public static function providerTestAddCacheableDependency() {
     return [
       // Empty render array, typical default cacheability.
       [
diff --git a/core/tests/Drupal/Tests/Core/Route/RoleAccessCheckTest.php b/core/tests/Drupal/Tests/Core/Route/RoleAccessCheckTest.php
index cd30ec3e1640f98deab26834a63b45d39cb33646..647a1819ef020848d364e1f2ef9c1d38fe4ad368 100644
--- a/core/tests/Drupal/Tests/Core/Route/RoleAccessCheckTest.php
+++ b/core/tests/Drupal/Tests/Core/Route/RoleAccessCheckTest.php
@@ -87,7 +87,7 @@ protected function getTestRouteCollection() {
    *
    * @see \Drupal\Tests\Core\Route\RouterRoleTest::testRoleAccess
    */
-  public function roleAccessProvider() {
+  public static function roleAccessProvider() {
     // Setup two different roles used in the test.
     $rid_1 = 'role_test_1';
     $rid_2 = 'role_test_2';
diff --git a/core/tests/Drupal/Tests/Core/Routing/AcceptHeaderMatcherTest.php b/core/tests/Drupal/Tests/Core/Routing/AcceptHeaderMatcherTest.php
index d05e0fe67446ec282a7023b725f6a4d4a041e715..3b62244155c5c08fd09ae0b0203714f43be49c20 100644
--- a/core/tests/Drupal/Tests/Core/Routing/AcceptHeaderMatcherTest.php
+++ b/core/tests/Drupal/Tests/Core/Routing/AcceptHeaderMatcherTest.php
@@ -45,7 +45,7 @@ protected function setUp(): void {
    *
    * @see Drupal\Tests\Core\Routing\AcceptHeaderMatcherTest::testAcceptFiltering()
    */
-  public function acceptFilterProvider() {
+  public static function acceptFilterProvider() {
     return [
       // Check that JSON routes get filtered and prioritized correctly.
       ['application/json, text/xml;q=0.9', 'json', 'route_c', 'route_e'],
diff --git a/core/tests/Drupal/Tests/Core/Routing/ContentTypeHeaderMatcherTest.php b/core/tests/Drupal/Tests/Core/Routing/ContentTypeHeaderMatcherTest.php
index da8facef8ddae3b79641dd434487ddee8b00d0f0..e3b44e12318dc0fcf63ad020eff70ce9605452ca 100644
--- a/core/tests/Drupal/Tests/Core/Routing/ContentTypeHeaderMatcherTest.php
+++ b/core/tests/Drupal/Tests/Core/Routing/ContentTypeHeaderMatcherTest.php
@@ -57,7 +57,7 @@ public function testSafeRequestFilter($method) {
     $this->assertCount(7, $routes, 'The correct number of routes was found.');
   }
 
-  public function providerTestSafeRequestFilter() {
+  public static function providerTestSafeRequestFilter() {
     return [
       ['GET'],
       ['HEAD'],
diff --git a/core/tests/Drupal/Tests/Core/Routing/RedirectDestinationTest.php b/core/tests/Drupal/Tests/Core/Routing/RedirectDestinationTest.php
index a41e39ef61f7b0ad00b51e32774dccaba1ec6e12..2bf84130126c0228a8f49801d88b80958190899d 100644
--- a/core/tests/Drupal/Tests/Core/Routing/RedirectDestinationTest.php
+++ b/core/tests/Drupal/Tests/Core/Routing/RedirectDestinationTest.php
@@ -96,7 +96,7 @@ public function testGetAsArray(Request $request, $expected_destination) {
     $this->assertEquals(['destination' => $expected_destination], $this->redirectDestination->getAsArray());
   }
 
-  public function providerGet() {
+  public static function providerGet() {
     $data = [];
 
     $request = Request::create('/');
diff --git a/core/tests/Drupal/Tests/Core/Routing/RequestFormatRouteFilterTest.php b/core/tests/Drupal/Tests/Core/Routing/RequestFormatRouteFilterTest.php
index e6ba2b480a7911773b2c8714e65fd82dd1d36a59..af9c6199a8c6f3f5a588e1e85959f868ffcd85e3 100644
--- a/core/tests/Drupal/Tests/Core/Routing/RequestFormatRouteFilterTest.php
+++ b/core/tests/Drupal/Tests/Core/Routing/RequestFormatRouteFilterTest.php
@@ -35,7 +35,7 @@ public function testFilter(RouteCollection $collection, $request_format, array $
     $this->assertSame($expected_filtered_collection, array_keys($collection->all()));
   }
 
-  public function filterProvider() {
+  public static function filterProvider() {
     $route_without_format = new Route('/test');
     $route_with_format = new Route('/test');
     $route_with_format->setRequirement('_format', 'json');
diff --git a/core/tests/Drupal/Tests/Core/Routing/RouteCompilerTest.php b/core/tests/Drupal/Tests/Core/Routing/RouteCompilerTest.php
index 304c1c61cc0da1f72a90896263e736e9e478bd1b..9c282fac1ff0828a199b3809619f8825246e6f28 100644
--- a/core/tests/Drupal/Tests/Core/Routing/RouteCompilerTest.php
+++ b/core/tests/Drupal/Tests/Core/Routing/RouteCompilerTest.php
@@ -39,7 +39,7 @@ public function testGetFit($path, $expected) {
    *   be calculated as the first value and the expected fit as the second
    *   value.
    */
-  public function providerTestGetFit() {
+  public static function providerTestGetFit() {
     return [
       ['test', 1],
       ['/estWithLeadingSlash', 1],
diff --git a/core/tests/Drupal/Tests/Core/Routing/TrustedRedirectResponseTest.php b/core/tests/Drupal/Tests/Core/Routing/TrustedRedirectResponseTest.php
index 53f977d427cfd7d46da1fc3daa799a4c2ba6ca63..440904c014b68b6c7b8f6a4733e1367498ade656 100644
--- a/core/tests/Drupal/Tests/Core/Routing/TrustedRedirectResponseTest.php
+++ b/core/tests/Drupal/Tests/Core/Routing/TrustedRedirectResponseTest.php
@@ -75,7 +75,7 @@ public function testCreateFromRedirectResponse($redirect_response) {
   /**
    * @return array
    */
-  public function providerCreateFromRedirectResponse() {
+  public static function providerCreateFromRedirectResponse() {
     return [
       'cacheable-with-tags' => [(new CacheableRedirectResponse('/example'))->addCacheableDependency((new CacheableMetadata())->addCacheTags(['foo']))],
       'cacheable-with-max-age-0' => [(new CacheableRedirectResponse('/example'))->addCacheableDependency((new CacheableMetadata())->setCacheMaxAge(0))],
diff --git a/core/tests/Drupal/Tests/Core/Routing/UrlGeneratorTest.php b/core/tests/Drupal/Tests/Core/Routing/UrlGeneratorTest.php
index 5d3dc75ad19f5fb9307db007a5264bbaf35fc2c1..a576be6eb3085c44de23844589623d28c5437b73 100644
--- a/core/tests/Drupal/Tests/Core/Routing/UrlGeneratorTest.php
+++ b/core/tests/Drupal/Tests/Core/Routing/UrlGeneratorTest.php
@@ -360,7 +360,7 @@ public function testAliasGenerationWithOptions($route_name, $route_parameters, $
   /**
    * Provides test data for testAliasGenerationWithOptions.
    */
-  public function providerTestAliasGenerationWithOptions() {
+  public static function providerTestAliasGenerationWithOptions() {
     $data = [];
     // Extra parameters should appear in the query string.
     $data[] = [
@@ -517,7 +517,7 @@ public function testNoPath($options, $expected_url) {
   /**
    * Data provider for ::testNoPath().
    */
-  public function providerTestNoPath() {
+  public static function providerTestNoPath() {
     return [
       // Empty options.
       [[], ''],
diff --git a/core/tests/Drupal/Tests/Core/Security/DoTrustedCallbackTraitTest.php b/core/tests/Drupal/Tests/Core/Security/DoTrustedCallbackTraitTest.php
index f16ad55421a0b6b9c3ad3ec1ff093cf7559d8e97..a97a5b6ab68416fe9d7fb0e70ecb6f2211bfd579 100644
--- a/core/tests/Drupal/Tests/Core/Security/DoTrustedCallbackTraitTest.php
+++ b/core/tests/Drupal/Tests/Core/Security/DoTrustedCallbackTraitTest.php
@@ -29,7 +29,7 @@ public function testTrustedCallbacks(callable $callback, $extra_trusted_interfac
   /**
    * Data provider for ::testTrustedCallbacks().
    */
-  public function providerTestTrustedCallbacks() {
+  public static function providerTestTrustedCallbacks() {
     $closure = function () {
       return 'test';
     };
@@ -58,7 +58,7 @@ public function testUntrustedCallbacks(callable $callback, $extra_trusted_interf
   /**
    * Data provider for ::testUntrustedCallbacks().
    */
-  public function providerTestUntrustedCallbacks() {
+  public static function providerTestUntrustedCallbacks() {
     $tests['TrustedCallbackInterface_object'] = [[new TrustedMethods(), 'unTrustedCallback'], TrustedInterface::class];
     $tests['TrustedCallbackInterface_static_string'] = ['\Drupal\Tests\Core\Security\TrustedMethods::unTrustedCallback', TrustedInterface::class];
     $tests['TrustedCallbackInterface_static_array'] = [[TrustedMethods::class, 'unTrustedCallback'], TrustedInterface::class];
@@ -99,7 +99,7 @@ public function testWarning($callback) {
   /**
    * Data provider for tests of ::doTrustedCallback $error_type argument.
    */
-  public function errorTypeProvider() {
+  public static function errorTypeProvider() {
     $tests['untrusted_object'] = [[new UntrustedObject(), 'callback']];
     $tests['untrusted_object_static_string'] = ['Drupal\Tests\Core\Security\UntrustedObject::callback'];
     $tests['untrusted_object_static_array'] = [[UntrustedObject::class, 'callback']];
diff --git a/core/tests/Drupal/Tests/Core/Security/RequestSanitizerTest.php b/core/tests/Drupal/Tests/Core/Security/RequestSanitizerTest.php
index 1892b38e722032d04586e994041d7cab9528ac9e..6e508a1ea62bff6427e3be5565620720a62cd59e 100644
--- a/core/tests/Drupal/Tests/Core/Security/RequestSanitizerTest.php
+++ b/core/tests/Drupal/Tests/Core/Security/RequestSanitizerTest.php
@@ -99,7 +99,7 @@ public function testRequestSanitization(Request $request, array $expected = [],
    *
    * @return array
    */
-  public function providerTestRequestSanitization() {
+  public static function providerTestRequestSanitization() {
     $tests = [];
 
     $request = new Request(['q' => 'index.php']);
@@ -314,7 +314,7 @@ protected function createRequestForTesting(array $query = [], array $request = [
   /**
    * Data provider for testing acceptable destinations.
    */
-  public function providerTestAcceptableDestinations() {
+  public static function providerTestAcceptableDestinations() {
     $data = [];
     // Standard internal example node path is present in the 'destination'
     // parameter.
@@ -331,7 +331,7 @@ public function providerTestAcceptableDestinations() {
   /**
    * Data provider for testing sanitized destinations.
    */
-  public function providerTestSanitizedDestinations() {
+  public static function providerTestSanitizedDestinations() {
     $data = [];
     // External URL without scheme is not allowed.
     $data[] = ['//example.com/test'];
diff --git a/core/tests/Drupal/Tests/Core/Session/AccessPolicyProcessorTest.php b/core/tests/Drupal/Tests/Core/Session/AccessPolicyProcessorTest.php
index be29f17bea977f4ff57bf652ff2e81c2c66091ad..0e0113c5e50c7925a1d9c61dc44b6ce438d181e2 100644
--- a/core/tests/Drupal/Tests/Core/Session/AccessPolicyProcessorTest.php
+++ b/core/tests/Drupal/Tests/Core/Session/AccessPolicyProcessorTest.php
@@ -220,7 +220,7 @@ public function testAccountSwitcher(bool $has_user_context, bool $is_current_use
    * @return array
    *   A list of testAccountSwitcher method arguments.
    */
-  public function accountSwitcherProvider() {
+  public static function accountSwitcherProvider() {
     $cases['no-user-context-no-current-user'] = [
       'has_user_context' => FALSE,
       'is_current_user' => FALSE,
@@ -301,7 +301,7 @@ public function testCaching(bool $db_cache_hit, bool $static_cache_hit) {
    * @return array
    *   A list of testAccountSwitcher method arguments.
    */
-  public function cachingProvider() {
+  public static function cachingProvider() {
     $cases = [
       'no-cache' => [FALSE, FALSE],
       'static-cache-hit' => [FALSE, TRUE],
diff --git a/core/tests/Drupal/Tests/Core/Session/SessionConfigurationTest.php b/core/tests/Drupal/Tests/Core/Session/SessionConfigurationTest.php
index 1e2433a4a8074cbf6ef1a597db8e63daea67a808..2a2cbeee18ba594649706454e55c3f2965919258 100644
--- a/core/tests/Drupal/Tests/Core/Session/SessionConfigurationTest.php
+++ b/core/tests/Drupal/Tests/Core/Session/SessionConfigurationTest.php
@@ -47,7 +47,7 @@ public function testGeneratedCookieDomain($uri, $expected_domain) {
    * @return array
    *   Test data
    */
-  public function providerTestGeneratedCookieDomain() {
+  public static function providerTestGeneratedCookieDomain() {
     return [
       ['http://example.com/path/index.php', '.example.com'],
       ['http://www.example.com/path/index.php', '.www.example.com'],
@@ -86,7 +86,7 @@ public function testEnforcedCookieDomain($uri, $expected_domain) {
    * @return array
    *   Test data
    */
-  public function providerTestEnforcedCookieDomain() {
+  public static function providerTestEnforcedCookieDomain() {
     return [
       ['http://example.com/path/index.php', '.example.com'],
       ['http://www.example.com/path/index.php', '.example.com'],
@@ -152,7 +152,7 @@ public function testCookieSecureNotOverridable($uri, $expected_secure) {
    * @return array
    *   Test data
    */
-  public function providerTestCookieSecure() {
+  public static function providerTestCookieSecure() {
     return [
       ['http://example.com/path/index.php', FALSE],
       ['https://www.example.com/path/index.php', TRUE],
@@ -185,7 +185,7 @@ public function testGeneratedSessionName($uri, $expected_name) {
    * @return array
    *   Test data
    */
-  public function providerTestGeneratedSessionName() {
+  public static function providerTestGeneratedSessionName() {
     $data = [
       ['http://example.com/path/index.php', 'SESS', 'example.com'],
       ['http://www.example.com/path/index.php', 'SESS', 'www.example.com'],
@@ -233,7 +233,7 @@ public function testEnforcedSessionNameViaCookieDomain($uri, $expected_name) {
    * @return array
    *   Test data
    */
-  public function providerTestEnforcedSessionName() {
+  public static function providerTestEnforcedSessionName() {
     $data = [
       ['http://example.com/path/index.php', 'SESS', '.example.com'],
       ['http://www.example.com/path/index.php', 'SESS', '.example.com'],
@@ -279,7 +279,7 @@ public function testConstructorDefaultSettings(array $options, int $expected_sid
    * @return array
    *   Test data
    */
-  public function providerTestConstructorDefaultSettings() {
+  public static function providerTestConstructorDefaultSettings() {
     return [
       [[], 48, 6],
       [['sid_length' => 100], 100, 6],
diff --git a/core/tests/Drupal/Tests/Core/Session/UserSessionTest.php b/core/tests/Drupal/Tests/Core/Session/UserSessionTest.php
index fdf72aea10835eb643872503cc001ea2b8f8154d..b55cc05393ad9821f66506928f2b7d6a71945921 100644
--- a/core/tests/Drupal/Tests/Core/Session/UserSessionTest.php
+++ b/core/tests/Drupal/Tests/Core/Session/UserSessionTest.php
@@ -30,7 +30,7 @@ class UserSessionTest extends UnitTestCase {
    *
    * @return array
    */
-  public function providerTestHasPermission() {
+  public static function providerTestHasPermission() {
     $data = [];
     $data[] = ['example permission', ['user_one', 'user_two'], ['user_last']];
     $data[] = ['another example permission', ['user_two'], ['user_one', 'user_last']];
diff --git a/core/tests/Drupal/Tests/Core/Session/WriteSafeSessionHandlerTest.php b/core/tests/Drupal/Tests/Core/Session/WriteSafeSessionHandlerTest.php
index e44988f5f0c5ed97b9d255aec71a057c16fdccc0..0f2c7498d759ad99e1ae4d6dacd22c74f964ccdd 100644
--- a/core/tests/Drupal/Tests/Core/Session/WriteSafeSessionHandlerTest.php
+++ b/core/tests/Drupal/Tests/Core/Session/WriteSafeSessionHandlerTest.php
@@ -162,7 +162,7 @@ public function testOtherMethods($method, $expected_result, $args) {
    * @return array
    *   Test data.
    */
-  public function providerTestOtherMethods() {
+  public static function providerTestOtherMethods() {
     return [
       ['open', TRUE, ['/some/path', 'some-session-id']],
       ['read', 'some-session-data', ['a-session-id']],
diff --git a/core/tests/Drupal/Tests/Core/Site/SettingsTest.php b/core/tests/Drupal/Tests/Core/Site/SettingsTest.php
index 928a7768607c42b81364513cdfac2ecc3345fc72..483c694fb4d584e7a0bb1396320bc8a128c465d8 100644
--- a/core/tests/Drupal/Tests/Core/Site/SettingsTest.php
+++ b/core/tests/Drupal/Tests/Core/Site/SettingsTest.php
@@ -101,7 +101,7 @@ public function testGetHashSaltEmpty(array $config) {
    *
    * @return array
    */
-  public function providerTestGetHashSaltEmpty() {
+  public static function providerTestGetHashSaltEmpty() {
     return [
       [[]],
       [['hash_salt' => '']],
@@ -220,7 +220,7 @@ public function testFakeDeprecatedSettings(array $settings_config, string $setti
    *
    * @see self::providerTestRealDeprecatedSettings()
    */
-  public function providerTestFakeDeprecatedSettings(): array {
+  public static function providerTestFakeDeprecatedSettings(): array {
 
     $only_legacy = [
       'deprecated_legacy' => 'old',
@@ -306,7 +306,7 @@ public function testRealDeprecatedSettings(string $legacy_setting, string $expec
   /**
    * Provides data for testRealDeprecatedSettings().
    */
-  public function providerTestRealDeprecatedSettings(): array {
+  public static function providerTestRealDeprecatedSettings(): array {
     return [
       [
         'block_interest_cohort',
@@ -368,7 +368,7 @@ public function testDatabaseInfoInitialization(string $driver, ?string $namespac
   /**
    * Provides data for testDatabaseInfoInitialization().
    */
-  public function providerTestDatabaseInfoInitialization(): array {
+  public static function providerTestDatabaseInfoInitialization(): array {
     return [
       ['mysql', NULL, NULL, 'Drupal\\mysql\\Driver\\Database\\mysql', 'core/modules/mysql/src/Driver/Database/mysql/'],
       ['mysql', '', NULL, 'Drupal\\mysql\\Driver\\Database\\mysql', 'core/modules/mysql/src/Driver/Database/mysql/'],
diff --git a/core/tests/Drupal/Tests/Core/StackMiddleware/ContentLengthTest.php b/core/tests/Drupal/Tests/Core/StackMiddleware/ContentLengthTest.php
index 59212d739790bf8d3840cf7e046304c927892cc2..e406d11a02aba2fb0c9736ae8b39d8d8329c9e04 100644
--- a/core/tests/Drupal/Tests/Core/StackMiddleware/ContentLengthTest.php
+++ b/core/tests/Drupal/Tests/Core/StackMiddleware/ContentLengthTest.php
@@ -34,7 +34,7 @@ public function testHandle(false|int $expected_header, Response $response) {
     $this->assertSame((string) $expected_header, $response->headers->get('Content-Length'));
   }
 
-  public function providerTestSetContentLengthHeader() {
+  public static function providerTestSetContentLengthHeader() {
     return [
       'Informational' => [
         FALSE,
diff --git a/core/tests/Drupal/Tests/Core/StackMiddleware/ReverseProxyMiddlewareTest.php b/core/tests/Drupal/Tests/Core/StackMiddleware/ReverseProxyMiddlewareTest.php
index 244d32d617d8db1a4d768095c81bbab1c59d4251..dbc4e54de26f8dae7f3832c8072346289f8f0343 100644
--- a/core/tests/Drupal/Tests/Core/StackMiddleware/ReverseProxyMiddlewareTest.php
+++ b/core/tests/Drupal/Tests/Core/StackMiddleware/ReverseProxyMiddlewareTest.php
@@ -68,7 +68,7 @@ public function testReverseProxyEnabled($provided_settings, $expected_trusted_he
   /**
    * Data provider for testReverseProxyEnabled.
    */
-  public function reverseProxyEnabledProvider() {
+  public static function reverseProxyEnabledProvider() {
     return [
       'Proxy with default trusted headers' => [
         ['reverse_proxy_addresses' => ['127.0.0.2', '127.0.0.3']],
diff --git a/core/tests/Drupal/Tests/Core/StringTranslation/ByteSizeMarkupTest.php b/core/tests/Drupal/Tests/Core/StringTranslation/ByteSizeMarkupTest.php
index 64a54741ea929b94c2f3ca02ff81aa6e7e203da2..a125ef27fb75a4c54dc2d0df661606488212c744 100644
--- a/core/tests/Drupal/Tests/Core/StringTranslation/ByteSizeMarkupTest.php
+++ b/core/tests/Drupal/Tests/Core/StringTranslation/ByteSizeMarkupTest.php
@@ -29,7 +29,7 @@ public function testCommonFormatSize($expected, $input) {
   /**
    * Provides a list of byte size to test.
    */
-  public function providerTestCommonFormatSize() {
+  public static function providerTestCommonFormatSize() {
     $kb = Bytes::KILOBYTE;
     return [
       ['0 bytes', 0],
diff --git a/core/tests/Drupal/Tests/Core/StringTranslation/PluralTranslatableMarkupTest.php b/core/tests/Drupal/Tests/Core/StringTranslation/PluralTranslatableMarkupTest.php
index 738c85f9f1d0f639a57f6835ad643a58966743a9..80ab6d3edae7433015616a8f64418e170be2161b 100644
--- a/core/tests/Drupal/Tests/Core/StringTranslation/PluralTranslatableMarkupTest.php
+++ b/core/tests/Drupal/Tests/Core/StringTranslation/PluralTranslatableMarkupTest.php
@@ -36,7 +36,7 @@ public function testPluralTranslatableMarkupSerialization($count, $expected_text
   /**
    * Data provider for ::testPluralTranslatableMarkupSerialization().
    */
-  public function providerPluralTranslatableMarkupSerialization() {
+  public static function providerPluralTranslatableMarkupSerialization() {
     return [
       [1, 'singular 1'],
       [2, 'plural 2'],
diff --git a/core/tests/Drupal/Tests/Core/StringTranslation/TranslationManagerTest.php b/core/tests/Drupal/Tests/Core/StringTranslation/TranslationManagerTest.php
index 8e821c67ede8df2f6b9307101abacca7c366929e..5d8f7ca9bc8a7ac24f3e9acb8e480b37794d227c 100644
--- a/core/tests/Drupal/Tests/Core/StringTranslation/TranslationManagerTest.php
+++ b/core/tests/Drupal/Tests/Core/StringTranslation/TranslationManagerTest.php
@@ -34,7 +34,7 @@ protected function setUp(): void {
    * Provides some test data for formatPlural()
    * @return array
    */
-  public function providerTestFormatPlural() {
+  public static function providerTestFormatPlural() {
     return [
       [1, 'Singular', '@count plural', [], [], 'Singular'],
       [2, 'Singular', '@count plural', [], [], '2 plural'],
@@ -88,7 +88,7 @@ public function testTranslatePlaceholder($string, array $args, $expected_string)
    *
    * @return array
    */
-  public function providerTestTranslatePlaceholder() {
+  public static function providerTestTranslatePlaceholder() {
     return [
       ['foo @bar', ['@bar' => 'bar'], 'foo bar'],
       ['bar %baz', ['%baz' => 'baz'], 'bar <em class="placeholder">baz</em>'],
diff --git a/core/tests/Drupal/Tests/Core/Template/AttributeHelperTest.php b/core/tests/Drupal/Tests/Core/Template/AttributeHelperTest.php
index c6b5ec39cd510791e0cf1f641f56bd9c5009d2a7..4590a145b44f962545f6885c17c0107a274a3527 100644
--- a/core/tests/Drupal/Tests/Core/Template/AttributeHelperTest.php
+++ b/core/tests/Drupal/Tests/Core/Template/AttributeHelperTest.php
@@ -21,7 +21,7 @@ class AttributeHelperTest extends UnitTestCase {
    *   An array of test data each containing an array of attributes, the name
    *   of the attribute to check existence of, and the expected result.
    */
-  public function providerTestAttributeExists() {
+  public static function providerTestAttributeExists() {
     return [
       [['class' => ['example-class']], 'class', TRUE],
       [[], 'class', FALSE],
@@ -48,7 +48,7 @@ public function testAttributeExists(array $test_data, $test_attribute, $expected
    *   An array of test data each containing an initial attribute collection, an
    *   Attribute object or array to be merged, and the expected result.
    */
-  public function providerTestMergeCollections() {
+  public static function providerTestMergeCollections() {
     return [
       [[], ['class' => ['class1']], ['class' => ['class1']]],
       [[], new Attribute(['class' => ['class1']]), ['class' => ['class1']]],
diff --git a/core/tests/Drupal/Tests/Core/Template/AttributeTest.php b/core/tests/Drupal/Tests/Core/Template/AttributeTest.php
index 6953c5bf25d08cb3c19ee132051c55e6fcedd8fe..4b708c239484715e70537e7ac5a21175d0cb36a1 100644
--- a/core/tests/Drupal/Tests/Core/Template/AttributeTest.php
+++ b/core/tests/Drupal/Tests/Core/Template/AttributeTest.php
@@ -281,7 +281,7 @@ public function testTwigAddRemoveClasses($template, $expected, $seed_attributes
    *   An array of test data each containing of a twig template string,
    *   a resulting string of classes and an optional array of attributes.
    */
-  public function providerTestAttributeClassHelpers() {
+  public static function providerTestAttributeClassHelpers() {
     // cSpell:disable
     return [
       ["{{ attributes.class }}", ''],
@@ -364,7 +364,7 @@ public function testAttributeValues(array $attributes, $expected) {
     $this->assertEquals($expected, (new Attribute($attributes))->__toString());
   }
 
-  public function providerTestAttributeValues() {
+  public static function providerTestAttributeValues() {
     $data = [];
 
     $string = '"> <script>alert(123)</script>"';
@@ -471,7 +471,7 @@ public function testStorage() {
    *   An array of test data each containing an array of attributes, the name
    *   of the attribute to check existence of, and the expected result.
    */
-  public function providerTestHasAttribute() {
+  public static function providerTestHasAttribute() {
     return [
       [['class' => ['example-class']], 'class', TRUE],
       [[], 'class', FALSE],
@@ -497,7 +497,7 @@ public function testHasAttribute(array $test_data, $test_attribute, $expected) {
    *   An array of test data each containing an initial Attribute object, an
    *   Attribute object or array to be merged, and the expected result.
    */
-  public function providerTestMerge() {
+  public static function providerTestMerge() {
     return [
       [new Attribute([]), new Attribute(['class' => ['class1']]), new Attribute(['class' => ['class1']])],
       [new Attribute(['class' => ['example-class']]), new Attribute(['class' => ['class1']]), new Attribute(['class' => ['example-class', 'class1']])],
diff --git a/core/tests/Drupal/Tests/Core/Template/TwigExtensionTest.php b/core/tests/Drupal/Tests/Core/Template/TwigExtensionTest.php
index a86dc826df80ef2780e392e223a0454a0b1cff0e..cfa4c6ba00190b5ea61e638e30132765246ca4bd 100644
--- a/core/tests/Drupal/Tests/Core/Template/TwigExtensionTest.php
+++ b/core/tests/Drupal/Tests/Core/Template/TwigExtensionTest.php
@@ -121,7 +121,7 @@ public function testEscaping($template, $expected) {
    *   An array of test data each containing of a twig template string and
    *   a boolean expecting whether the path will be safe.
    */
-  public function providerTestEscaping() {
+  public static function providerTestEscaping() {
     return [
       ['{{ path("foo") }}', FALSE],
       ['{{ path("foo", {}) }}', FALSE],
@@ -377,7 +377,7 @@ public function testRenderVarEarlyReturn($expected, $input) {
   /**
    * Data provider for ::testRenderVarEarlyReturn().
    */
-  public function providerTestRenderVarEarlyReturn() {
+  public static function providerTestRenderVarEarlyReturn() {
     return [
       'null' => ['', NULL],
       'empty array' => ['', []],
@@ -449,7 +449,7 @@ public function testTwigAddSuggestionFilter($original_render_array, $suggestion,
    *
    * @return \Iterator
    */
-  public function providerTestTwigAddSuggestionFilter(): \Iterator {
+  public static function providerTestTwigAddSuggestionFilter(): \Iterator {
     yield 'suggestion should be added' => [
       [
         '#theme' => 'kitten',
@@ -565,7 +565,7 @@ public function testTwigAddClass($element, $classes, $expected_result) {
    *
    * @return \Iterator
    */
-  public function providerTestTwigAddClass(): \Iterator {
+  public static function providerTestTwigAddClass(): \Iterator {
     yield 'should add a class on element' => [
       ['#type' => 'container'],
       'my-class',
@@ -615,7 +615,7 @@ public function testTwigSetAttribute($element, $key, $value, $expected_result) {
    *
    * @return \Iterator
    */
-  public function providerTestTwigSetAttribute(): \Iterator {
+  public static function providerTestTwigSetAttribute(): \Iterator {
     yield 'should add attributes on element' => [
       ['#theme' => 'image'],
       'title',
diff --git a/core/tests/Drupal/Tests/Core/Template/TwigSandboxTest.php b/core/tests/Drupal/Tests/Core/Template/TwigSandboxTest.php
index bbd239406021e072005e8df429eff5f7cb56e61e..10c81894a4452114470f6e5104fd061fc2803e95 100644
--- a/core/tests/Drupal/Tests/Core/Template/TwigSandboxTest.php
+++ b/core/tests/Drupal/Tests/Core/Template/TwigSandboxTest.php
@@ -57,7 +57,7 @@ public function testEntityDangerousMethods($template) {
    *
    * @return array
    */
-  public function getTwigEntityDangerousMethods() {
+  public static function getTwigEntityDangerousMethods() {
     return [
       ['{{ entity.delete }}'],
       ['{{ entity.save }}'],
diff --git a/core/tests/Drupal/Tests/Core/Test/PhpUnitBridgeRequiresTest.php b/core/tests/Drupal/Tests/Core/Test/PhpUnitBridgeRequiresTest.php
index ccfd4a5d5fc90d429f3de2115bea8ba0620113c6..cf0e731ae8e1321e54541edd76a6149cf60e67c5 100644
--- a/core/tests/Drupal/Tests/Core/Test/PhpUnitBridgeRequiresTest.php
+++ b/core/tests/Drupal/Tests/Core/Test/PhpUnitBridgeRequiresTest.php
@@ -35,7 +35,7 @@ public function testWillNeverRun(): void {
   /**
    * Data provider for ::testWillNeverRun().
    */
-  public function providerTestWillNeverRun(): array {
+  public static function providerTestWillNeverRun(): array {
     return [
       ['this_will_never_run'],
     ];
diff --git a/core/tests/Drupal/Tests/Core/Test/PhpUnitTestRunnerTest.php b/core/tests/Drupal/Tests/Core/Test/PhpUnitTestRunnerTest.php
index a1e6534a05a37d960ec48defcf02bb019901b907..52c6e7980c29ead0666fda1bf067c4fa2363f7aa 100644
--- a/core/tests/Drupal/Tests/Core/Test/PhpUnitTestRunnerTest.php
+++ b/core/tests/Drupal/Tests/Core/Test/PhpUnitTestRunnerTest.php
@@ -99,7 +99,7 @@ public function testXmlLogFilePath() {
     $this->assertStringEndsWith('phpunit-23.xml', $runner->xmlLogFilePath(23));
   }
 
-  public function providerTestSummarizeResults() {
+  public static function providerTestSummarizeResults() {
     return [
       [
         [
diff --git a/core/tests/Drupal/Tests/Core/Test/RunTests/TestFileParserTest.php b/core/tests/Drupal/Tests/Core/Test/RunTests/TestFileParserTest.php
index f4059252c11b068c2cc59722ecd83f6224c38e81..dbcb853143d9de1fa53ec589a04416a67161004a 100644
--- a/core/tests/Drupal/Tests/Core/Test/RunTests/TestFileParserTest.php
+++ b/core/tests/Drupal/Tests/Core/Test/RunTests/TestFileParserTest.php
@@ -14,7 +14,7 @@
  */
 class TestFileParserTest extends UnitTestCase {
 
-  public function provideTestFileContents() {
+  public static function provideTestFileContents() {
     return [
       'empty' => [[], ''],
       'no-namespace' => [['ConcreteClass'],
diff --git a/core/tests/Drupal/Tests/Core/Test/TestDatabaseTest.php b/core/tests/Drupal/Tests/Core/Test/TestDatabaseTest.php
index 8412a33c1d2e0eed464bc97b31f9d9839e46de7d..a96d79e38a6655acf783570f0f65fdab3128472f 100644
--- a/core/tests/Drupal/Tests/Core/Test/TestDatabaseTest.php
+++ b/core/tests/Drupal/Tests/Core/Test/TestDatabaseTest.php
@@ -43,7 +43,7 @@ public function testConstructor($db_prefix, $expected_db_prefix, $expected_site_
   /**
    * Data provider for self::testConstructor()
    */
-  public function providerTestConstructor() {
+  public static function providerTestConstructor() {
     return [
       ['test1234', 'test1234', 'sites/simpletest/1234'],
       ['test123456test234567', 'test123456test234567', 'sites/simpletest/234567'],
diff --git a/core/tests/Drupal/Tests/Core/Test/TestDiscoveryTest.php b/core/tests/Drupal/Tests/Core/Test/TestDiscoveryTest.php
index bff678550fb2c617e579cc849c3f064493193322..9b9053c3ba86c0c978cd5cd90fa3cc7d75f3f8c7 100644
--- a/core/tests/Drupal/Tests/Core/Test/TestDiscoveryTest.php
+++ b/core/tests/Drupal/Tests/Core/Test/TestDiscoveryTest.php
@@ -29,7 +29,7 @@ public function testTestInfoParser($expected, $classname, $doc_comment = NULL) {
     $this->assertEquals($expected, $info);
   }
 
-  public function infoParserProvider() {
+  public static function infoParserProvider() {
     // A module provided unit test.
     $tests[] = [
       // Expected result.
@@ -447,7 +447,7 @@ public function testGetPhpunitTestSuite($classname, $expected) {
     $this->assertEquals($expected, TestDiscovery::getPhpunitTestSuite($classname));
   }
 
-  public function providerTestGetPhpunitTestSuite() {
+  public static function providerTestGetPhpunitTestSuite() {
     $data = [];
     $data['simpletest-web test'] = ['\Drupal\rest\Tests\NodeTest', FALSE];
     $data['module-unittest'] = [static::class, 'Unit'];
diff --git a/core/tests/Drupal/Tests/Core/Test/XdebugRequestTraitTest.php b/core/tests/Drupal/Tests/Core/Test/XdebugRequestTraitTest.php
index d2dc38ba58f446981d67859dc42def7a889a647f..7525b074b532a31436e0f8aca1f92e1bb6237b9b 100644
--- a/core/tests/Drupal/Tests/Core/Test/XdebugRequestTraitTest.php
+++ b/core/tests/Drupal/Tests/Core/Test/XdebugRequestTraitTest.php
@@ -40,7 +40,7 @@ public function testExtractCookiesFromRequest(array $server, array $expected_coo
    * @return iterable
    *   Test scenarios.
    */
-  public function extractCookiesDataProvider() {
+  public static function extractCookiesDataProvider() {
     yield 'no XDEBUG_CONFIG' => [[], []];
     yield 'empty string XDEBUG_CONFIG' => [['XDEBUG_CONFIG' => ''], []];
     yield 'only space string XDEBUG_CONFIG' => [['XDEBUG_CONFIG' => ' '], []];
diff --git a/core/tests/Drupal/Tests/Core/Theme/AjaxBasePageNegotiatorTest.php b/core/tests/Drupal/Tests/Core/Theme/AjaxBasePageNegotiatorTest.php
index 06dea22a55c79e3548dce313196a8cce14300bc5..612dbb107973fe04d619443337bac0d68f017454 100644
--- a/core/tests/Drupal/Tests/Core/Theme/AjaxBasePageNegotiatorTest.php
+++ b/core/tests/Drupal/Tests/Core/Theme/AjaxBasePageNegotiatorTest.php
@@ -68,7 +68,7 @@ public function testApplies($request_data, $expected) {
     $this->assertSame($expected, $result);
   }
 
-  public function providerTestApplies() {
+  public static function providerTestApplies() {
     $data = [];
     $data['empty'] = [[], FALSE];
     $data['no_theme'] = [['ajax_page_state' => ['theme' => '', 'theme_token' => '']], FALSE];
diff --git a/core/tests/Drupal/Tests/Core/Theme/RegistryTest.php b/core/tests/Drupal/Tests/Core/Theme/RegistryTest.php
index abec03963a76356b851c34d736701a9fa8a3fbe4..9a4ecb89b61f963f716efa0e71bcd17e6aac8ca7 100644
--- a/core/tests/Drupal/Tests/Core/Theme/RegistryTest.php
+++ b/core/tests/Drupal/Tests/Core/Theme/RegistryTest.php
@@ -218,7 +218,7 @@ public function testPostProcessExtension($defined_functions, $hooks, $expected)
   /**
    * Provides test data to ::testPostProcessExtension().
    */
-  public function providerTestPostProcessExtension() {
+  public static function providerTestPostProcessExtension() {
     // This is test data for unit testing
     // \Drupal\Core\Theme\Registry::postProcessExtension(), not what happens
     // before it. Therefore, for all test data:
diff --git a/core/tests/Drupal/Tests/Core/Transliteration/PhpTransliterationTest.php b/core/tests/Drupal/Tests/Core/Transliteration/PhpTransliterationTest.php
index a1f39fc1fc2022f1c23c6e79f27d68acd24c3190..b395c49ed9ffe7e6ca78d83432101ca9b6d7b9f5 100644
--- a/core/tests/Drupal/Tests/Core/Transliteration/PhpTransliterationTest.php
+++ b/core/tests/Drupal/Tests/Core/Transliteration/PhpTransliterationTest.php
@@ -63,7 +63,7 @@ public function testPhpTransliterationWithAlter($langcode, $original, $expected,
    *
    * @return array
    */
-  public function providerTestPhpTransliterationWithAlter() {
+  public static function providerTestPhpTransliterationWithAlter() {
     $random_generator = new Random();
     $random = $random_generator->string(10);
     // Make some strings with two, three, and four-byte characters for testing.
diff --git a/core/tests/Drupal/Tests/Core/UnroutedUrlTest.php b/core/tests/Drupal/Tests/Core/UnroutedUrlTest.php
index 6cd4baad895bede77a7a54c93dc479dbf7b7fdb9..c2cda9eaa94b8e2a953141e202b90fcf9fc836a6 100644
--- a/core/tests/Drupal/Tests/Core/UnroutedUrlTest.php
+++ b/core/tests/Drupal/Tests/Core/UnroutedUrlTest.php
@@ -78,7 +78,7 @@ public function testFromUri($uri, $is_external) {
   /**
    * Data provider for testFromUri().
    */
-  public function providerFromUri() {
+  public static function providerFromUri() {
     return [
       // [$uri, $is_external]
       // An external URI.
@@ -112,7 +112,7 @@ public function testFromInvalidUri($uri) {
   /**
    * Data provider for testFromInvalidUri().
    */
-  public function providerFromInvalidUri() {
+  public static function providerFromInvalidUri() {
     return [
       // Schemeless paths.
       ['test'],
diff --git a/core/tests/Drupal/Tests/Core/UrlTest.php b/core/tests/Drupal/Tests/Core/UrlTest.php
index 84115cd8e0df430c76705740ebabad904bce2b5c..b5ba9987532fa6505b42d2b008c1d8a32951f853 100644
--- a/core/tests/Drupal/Tests/Core/UrlTest.php
+++ b/core/tests/Drupal/Tests/Core/UrlTest.php
@@ -543,7 +543,7 @@ public function testFromRouteMatch() {
   /**
    * Data provider for testing entity URIs.
    */
-  public function providerTestEntityUris() {
+  public static function providerTestEntityUris() {
     return [
       [
         'entity:test_entity/1',
@@ -645,7 +645,7 @@ public function testToUriStringForEntity($uri, $options, $uri_string) {
   /**
    * Data provider for testing string entity URIs.
    */
-  public function providerTestToUriStringForEntity() {
+  public static function providerTestToUriStringForEntity() {
     return [
       ['entity:test_entity/1', [], 'route:entity.test_entity.canonical;test_entity=1'],
       ['entity:test_entity/1', ['fragment' => 'top', 'query' => ['page' => '2']], 'route:entity.test_entity.canonical;test_entity=1?page=2#top'],
@@ -676,7 +676,7 @@ public function testToUriStringForInternal($uri, $options, $uri_string) {
   /**
    * Data provider for testing internal URIs.
    */
-  public function providerTestToUriStringForInternal() {
+  public static function providerTestToUriStringForInternal() {
     return [
       // The four permutations of a regular path.
       ['internal:/test-entity/1', [], 'route:entity.test_entity.canonical;test_entity=1'],
@@ -712,7 +712,7 @@ public function testFromValidInternalUri($path) {
   /**
    * Data provider for testFromValidInternalUri().
    */
-  public function providerFromValidInternalUri() {
+  public static function providerFromValidInternalUri() {
     return [
       // Normal paths with a leading slash.
       ['/kittens'],
@@ -752,7 +752,7 @@ public function testFromInvalidInternalUri($path) {
   /**
    * Data provider for testFromInvalidInternalUri().
    */
-  public function providerFromInvalidInternalUri() {
+  public static function providerFromInvalidInternalUri() {
     return [
       // Normal paths without a leading slash.
       'normal_path0' => ['kittens'],
@@ -799,7 +799,7 @@ public function testToUriStringForRoute($uri, $options, $uri_string) {
   /**
    * Data provider for testing route: URIs.
    */
-  public function providerTestToUriStringForRoute() {
+  public static function providerTestToUriStringForRoute() {
     return [
       ['route:entity.test_entity.canonical;test_entity=1', [], 'route:entity.test_entity.canonical;test_entity=1'],
       ['route:entity.test_entity.canonical;test_entity=1', ['fragment' => 'top', 'query' => ['page' => '2']], 'route:entity.test_entity.canonical;test_entity=1?page=2#top'],
@@ -844,7 +844,7 @@ protected function getMockAccessManager($access, $account = NULL) {
   /**
    * Data provider for the access test methods.
    */
-  public function accessProvider() {
+  public static function accessProvider() {
     return [
       [TRUE],
       [FALSE],
diff --git a/core/tests/Drupal/Tests/Core/Utility/CallableResolverTest.php b/core/tests/Drupal/Tests/Core/Utility/CallableResolverTest.php
index 5df85c607362a70b25ddb8f1173c22acd4d30c15..66da0ca7eda6230737cb5a45c6dacb58ce21bcb3 100644
--- a/core/tests/Drupal/Tests/Core/Utility/CallableResolverTest.php
+++ b/core/tests/Drupal/Tests/Core/Utility/CallableResolverTest.php
@@ -128,7 +128,7 @@ public function testCallbackResolverExceptionHandling($definition, $exception_cl
   /**
    * Test cases for ::testCallbackResolverExceptionHandling.
    */
-  public function callableResolverExceptionHandlingTestCases() {
+  public static function callableResolverExceptionHandlingTestCases() {
     return [
       'String function' => [
         'not_a_callable',
diff --git a/core/tests/Drupal/Tests/Core/Utility/LinkGeneratorTest.php b/core/tests/Drupal/Tests/Core/Utility/LinkGeneratorTest.php
index 33981539ddc972cc1070fc1c25ef48b32aeee7d4..46a6ac0d42987f4f2533c73c4e0bb07cd9d5696f 100644
--- a/core/tests/Drupal/Tests/Core/Utility/LinkGeneratorTest.php
+++ b/core/tests/Drupal/Tests/Core/Utility/LinkGeneratorTest.php
@@ -91,7 +91,7 @@ protected function setUp(): void {
    * @return array
    *   Returns some test data.
    */
-  public function providerTestGenerateHrefs() {
+  public static function providerTestGenerateHrefs() {
     return [
       // Test that the URL returned by the URL generator is used.
       ['test_route_1', [], FALSE, '/test-route-1'],
diff --git a/core/tests/Drupal/Tests/Core/Utility/PhpRequirementsTest.php b/core/tests/Drupal/Tests/Core/Utility/PhpRequirementsTest.php
index af857527c2ccc43152ab2f24152f0e033e14fd9a..f91417a7b8f684d0a116077e055bd51d3268f7f6 100644
--- a/core/tests/Drupal/Tests/Core/Utility/PhpRequirementsTest.php
+++ b/core/tests/Drupal/Tests/Core/Utility/PhpRequirementsTest.php
@@ -86,7 +86,7 @@ public function testMinimumSupportedPhp(string $date_string, string $drupal_mini
    * @return \Generator
    *   Test scenarios.
    */
-  public function providerMinimumSupportedPhp(): \Generator {
+  public static function providerMinimumSupportedPhp(): \Generator {
     $eol_lists = [];
 
     // Test against the known valid data from 9.0.0 to 9.3.0.
diff --git a/core/tests/Drupal/Tests/Core/Utility/TokenTest.php b/core/tests/Drupal/Tests/Core/Utility/TokenTest.php
index 7b5864b7b5568d163b063dfce3d0109c7995ce8b..538e13aa27a58dce98f71c944596eb58b36903ce 100644
--- a/core/tests/Drupal/Tests/Core/Utility/TokenTest.php
+++ b/core/tests/Drupal/Tests/Core/Utility/TokenTest.php
@@ -279,7 +279,7 @@ public function testReplaceEscaping($string, array $tokens, $expected) {
     $this->assertEquals($expected, $result);
   }
 
-  public function providerTestReplaceEscaping() {
+  public static function providerTestReplaceEscaping() {
     $data = [];
 
     // No tokens. The first argument to Token::replace() should not be escaped.
diff --git a/core/tests/Drupal/Tests/Core/Utility/UnroutedUrlAssemblerTest.php b/core/tests/Drupal/Tests/Core/Utility/UnroutedUrlAssemblerTest.php
index 9f354d61b58e6ddf2abc81c3a71873869959936f..a1a6aed5c92a9c801d8a38a76d88fdf159bffe83 100644
--- a/core/tests/Drupal/Tests/Core/Utility/UnroutedUrlAssemblerTest.php
+++ b/core/tests/Drupal/Tests/Core/Utility/UnroutedUrlAssemblerTest.php
@@ -89,7 +89,7 @@ public function testAssembleWithExternalUrl($uri, array $options, $expected) {
   /**
    * Provides test data for testAssembleWithExternalUrl.
    */
-  public function providerTestAssembleWithExternalUrl() {
+  public static function providerTestAssembleWithExternalUrl() {
     return [
       ['http://example.com/test', [], 'http://example.com/test'],
       ['http://example.com/test', ['fragment' => 'example'], 'http://example.com/test#example'],
@@ -122,7 +122,7 @@ public function testAssembleWithLocalUri($uri, array $options, $subdir, $expecte
   /**
    * @return array
    */
-  public function providerTestAssembleWithLocalUri() {
+  public static function providerTestAssembleWithLocalUri() {
     return [
       ['base:example', [], FALSE, '/example'],
       ['base:example', ['query' => ['foo' => 'bar']], FALSE, '/example?foo=bar'],