diff --git a/core/modules/filter/tests/src/Kernel/Migrate/d6/FilterFormatPermissionTest.php b/core/modules/filter/tests/src/Kernel/Migrate/d6/FilterFormatPermissionTest.php
index 601c8c8427527d59a7ca37008f8fcbdca354a849..85e3bb198e0e4d563d5ad656b3c0f442023ed558 100644
--- a/core/modules/filter/tests/src/Kernel/Migrate/d6/FilterFormatPermissionTest.php
+++ b/core/modules/filter/tests/src/Kernel/Migrate/d6/FilterFormatPermissionTest.php
@@ -23,7 +23,9 @@ class FilterFormatPermissionTest extends MigrateDrupalTestBase {
   public function testConfigurableFilterFormat() {
     $migration = Migration::create($this->container, [], 'custom_migration', []);
     $filterFormatPermissionMigration = FilterFormatPermission::create($this->container, ['migration' => 'custom_filter_format'], 'custom_filter_format', [], $migration);
-    $config = $this->readAttribute($filterFormatPermissionMigration, 'configuration');
+    $reflected_config = new \ReflectionProperty($filterFormatPermissionMigration, 'configuration');
+    $reflected_config->setAccessible(TRUE);
+    $config = $reflected_config->getValue($filterFormatPermissionMigration);
     $this->assertEquals($config['migration'], 'custom_filter_format');
   }
 
diff --git a/core/tests/Drupal/Tests/Core/Extension/ExtensionSerializationTest.php b/core/tests/Drupal/Tests/Core/Extension/ExtensionSerializationTest.php
index 312d58900f541d13462840deb956f6619365c5fc..10a1d5674025f08b78415f19193c5f031fb70bd9 100644
--- a/core/tests/Drupal/Tests/Core/Extension/ExtensionSerializationTest.php
+++ b/core/tests/Drupal/Tests/Core/Extension/ExtensionSerializationTest.php
@@ -53,7 +53,9 @@ public function testServiceAppRouteUsage() {
     // Instantiate an Extension object for testing unserialization.
     $extension = new Extension($container->getParameter('app.root'), 'module', 'core/modules/system/system.info.yml', 'system.module');
     $extension = unserialize(serialize($extension));
-    $this->assertEquals('vfs://dummy_app_root', $this->readAttribute($extension, 'root'));
+    $reflected_root = new \ReflectionProperty($extension, 'root');
+    $reflected_root->setAccessible(TRUE);
+    $this->assertEquals('vfs://dummy_app_root', $reflected_root->getValue($extension));
   }
 
   /**
diff --git a/core/tests/Drupal/Tests/Core/File/MimeTypeGuesserTest.php b/core/tests/Drupal/Tests/Core/File/MimeTypeGuesserTest.php
index f2e9717b6dcc9c71ceb203d15b1e05beabcd5d05..b7222892d8bc6a70060c34bdeffb3e9425173581 100644
--- a/core/tests/Drupal/Tests/Core/File/MimeTypeGuesserTest.php
+++ b/core/tests/Drupal/Tests/Core/File/MimeTypeGuesserTest.php
@@ -25,7 +25,9 @@ public function testSymfonyGuesserRegistration() {
     // Test that the Drupal mime type guess is not being used before the
     // override method is called. It is possible that the test environment does
     // not support the default guessers.
-    $guessers = $this->readAttribute($symfony_guesser, 'guessers');
+    $reflected_guessers = new \ReflectionProperty($symfony_guesser, 'guessers');
+    $reflected_guessers->setAccessible(TRUE);
+    $guessers = $reflected_guessers->getValue($symfony_guesser);
     if (count($guessers)) {
       $this->assertNotInstanceOf('Drupal\Core\File\MimeType\MimeTypeGuesser', $guessers[0]);
     }
@@ -33,7 +35,7 @@ public function testSymfonyGuesserRegistration() {
     $container->set('file.mime_type.guesser', new MimeTypeGuesser(new StreamWrapperManager()));
     MimeTypeGuesser::registerWithSymfonyGuesser($container);
     $symfony_guesser = SymfonyMimeTypeGuesser::getInstance();
-    $guessers = $this->readAttribute($symfony_guesser, 'guessers');
+    $guessers = $reflected_guessers->getValue($symfony_guesser);
     $this->assertSame($container->get('file.mime_type.guesser'), $guessers[0]);
     $this->assertInstanceOf('Drupal\Core\File\MimeType\MimeTypeGuesser', $guessers[0]);
     $count = count($guessers);
@@ -42,7 +44,7 @@ public function testSymfonyGuesserRegistration() {
     $container->set('file.mime_type.guesser', new MimeTypeGuesser(new StreamWrapperManager()));
     MimeTypeGuesser::registerWithSymfonyGuesser($container);
     $symfony_guesser = SymfonyMimeTypeGuesser::getInstance();
-    $guessers = $this->readAttribute($symfony_guesser, 'guessers');
+    $guessers = $reflected_guessers->getValue($symfony_guesser);
     $this->assertSame($container->get('file.mime_type.guesser'), $guessers[0]);
     $this->assertInstanceOf('Drupal\Core\File\MimeType\MimeTypeGuesser', $guessers[0]);
     $new_count = count($guessers);
diff --git a/core/tests/Drupal/Tests/Traits/PHPUnit8Warnings.php b/core/tests/Drupal/Tests/Traits/PHPUnit8Warnings.php
index 7da7b2dd91f4f025a8e3f528e8a6195a6d02e97c..3c63735b41071ba30b087382a82b20d01b5ba09f 100644
--- a/core/tests/Drupal/Tests/Traits/PHPUnit8Warnings.php
+++ b/core/tests/Drupal/Tests/Traits/PHPUnit8Warnings.php
@@ -23,7 +23,6 @@ trait PHPUnit8Warnings {
    * @var string[]
    */
   private static $ignoredWarnings = [
-    'readAttribute() is deprecated and will be removed in PHPUnit 9.',
     'getObjectAttribute() is deprecated and will be removed in PHPUnit 9.',
   ];