diff --git a/src/DefaultPluginResolver/EventBasedDefaultPluginResolver.php b/src/DefaultPluginResolver/EventBasedDefaultPluginResolver.php
index 80d37cd..7dbd19d 100644
--- a/src/DefaultPluginResolver/EventBasedDefaultPluginResolver.php
+++ b/src/DefaultPluginResolver/EventBasedDefaultPluginResolver.php
@@ -33,7 +33,7 @@ class EventBasedDefaultPluginResolver implements DefaultPluginResolverInterface
    */
   public function createDefaultPluginInstance(PluginTypeInterface $plugin_type) {
     $event = new ResolveDefaultPlugin($plugin_type);
-    $this->eventDispatcher->dispatch(PluginEvents::RESOLVE_DEFAULT_PLUGIN, $event);
+    $this->eventDispatcher->dispatch($event, PluginEvents::RESOLVE_DEFAULT_PLUGIN);
 
     return $event->getDefaultPluginInstance();
   }
diff --git a/src/Event/ResolveDefaultPlugin.php b/src/Event/ResolveDefaultPlugin.php
index dfbaf90..5e22a20 100644
--- a/src/Event/ResolveDefaultPlugin.php
+++ b/src/Event/ResolveDefaultPlugin.php
@@ -2,9 +2,9 @@
 
 namespace Drupal\plugin\Event;
 
+use Symfony\Contracts\EventDispatcher\Event;
 use Drupal\Component\Plugin\PluginInspectionInterface;
 use Drupal\plugin\PluginType\PluginTypeInterface;
-use Symfony\Component\EventDispatcher\Event;
 
 /**
  * Provides an event that is dispatched when the a default plugin instance is
diff --git a/tests/src/Functional/Plugin/PluginSelector/RadiosTest.php b/tests/src/Functional/Plugin/PluginSelector/RadiosTest.php
index 5e1565c..31e791d 100644
--- a/tests/src/Functional/Plugin/PluginSelector/RadiosTest.php
+++ b/tests/src/Functional/Plugin/PluginSelector/RadiosTest.php
@@ -46,9 +46,9 @@ class RadiosTest extends BrowserTestBase {
     // Test the presence of default elements without available plugins.
     $path = $this->buildFormPath(['none'], $tree);
     $this->drupalGet($path);
-    $this->assertNoFieldByName($name_prefix . '[select][container][container][plugin_id]');
+    $this->assertSession()->fieldValueNotEquals($name_prefix . '[select][container][container][plugin_id]', '');
     $this->assertEmpty($this->getSession()->getDriver()->find(sprintf('//input[@name="%s"]', $change_button_name)));
-    $this->assertText(t('There are no available options.'));
+    $this->assertSession()->pageTextContains(t('There are no available options.'));
 
     // Test that the selector can be configured to show even if there is but a
     // single plugin available to choose from.
@@ -58,34 +58,34 @@ class RadiosTest extends BrowserTestBase {
     // Test the presence of default elements with one available plugin.
     $path = $this->buildFormPath(['plugin_test_helper_configurable_plugin'], $tree);
     $this->drupalGet($path);
-    $this->assertNoFieldByName($name_prefix . '[select][container][plugin_id]');
+    $this->assertSession()->fieldValueNotEquals($name_prefix . '[select][container][plugin_id]', '');
     $this->assertEmpty($this->getSession()->getDriver()->find(sprintf('//input[@name="%s"]', $change_button_name)));
-    $this->assertNoText(t('There are no available options.'));
+    $this->assertSession()->pageTextNotContains(t('There are no available options.'));
 
     // Test the presence of default elements with multiple available plugins.
     $path = $this->buildFormPath(['plugin_test_helper_plugin', 'plugin_test_helper_configurable_plugin'], $tree);
     $this->drupalGet($path);
-    $this->assertFieldByName($name_prefix . '[select][container][plugin_id]');
+    $this->assertSession()->fieldExists($name_prefix . '[select][container][plugin_id]');
     $this->assertNotEmpty($this->getSession()->getDriver()->find(sprintf('//input[@name="%s"]', $change_button_name)));
-    $this->assertNoText(t('There are no available options.'));
+    $this->assertSession()->pageTextNotContains(t('There are no available options.'));
 
     // Choose a plugin.
-    $this->drupalPostForm(NULL, [
+    $this->submitForm([
       $name_prefix . '[select][container][plugin_id]' => 'plugin_test_helper_plugin',
     ], t('Choose'));
-    $this->assertFieldByName($name_prefix . '[select][container][plugin_id]');
+    $this->assertSession()->fieldExists($name_prefix . '[select][container][plugin_id]');
     $this->assertNotEmpty($this->getSession()->getDriver()->find(sprintf('//input[@name="%s"]', $change_button_name)));
 
     // Change the plugin.
-    $this->drupalPostForm(NULL, [
+    $this->submitForm([
       $name_prefix . '[select][container][plugin_id]' => 'plugin_test_helper_configurable_plugin',
     ], t('Choose'));
-    $this->assertFieldByName($name_prefix . '[select][container][plugin_id]');
+    $this->assertSession()->fieldExists($name_prefix . '[select][container][plugin_id]');
     $this->assertNotEmpty($this->getSession()->getDriver()->find(sprintf('//input[@name="%s"]', $change_button_name)));
 
     // Submit the form.
     $foo = $this->randomString();
-    $this->drupalPostForm(NULL, [
+    $this->submitForm([
       $name_prefix . '[select][container][plugin_id]' => 'plugin_test_helper_configurable_plugin',
       $name_prefix . '[plugin_form][foo]' => $foo,
 
@@ -94,8 +94,8 @@ class RadiosTest extends BrowserTestBase {
     $state = \Drupal::state();
     /** @var \Drupal\Component\Plugin\PluginInspectionInterface|\Drupal\Component\Plugin\ConfigurablePluginInterface $selected_plugin */
     $selected_plugin = $state->get('plugin_test_helper_advanced_plugin_selector_base');
-    $this->assertEqual($selected_plugin->getPluginId(), 'plugin_test_helper_configurable_plugin');
-    $this->assertEqual($selected_plugin->getConfiguration(), [
+    $this->assertEquals($selected_plugin->getPluginId(), 'plugin_test_helper_configurable_plugin');
+    $this->assertEquals($selected_plugin->getConfiguration(), [
       'foo' => $foo,
     ]);
   }
diff --git a/tests/src/Functional/Plugin/PluginSelector/SelectListTest.php b/tests/src/Functional/Plugin/PluginSelector/SelectListTest.php
index 2f296b5..1b52ce3 100644
--- a/tests/src/Functional/Plugin/PluginSelector/SelectListTest.php
+++ b/tests/src/Functional/Plugin/PluginSelector/SelectListTest.php
@@ -46,41 +46,41 @@ class SelectListTest extends BrowserTestBase {
     // Test the presence of default elements without available plugins.
     $path = $this->buildFormPath(['none'], $tree);
     $this->drupalGet($path);
-    $this->assertNoFieldByName($name_prefix . '[select][container][container][plugin_id]');
+    $this->assertSession()->fieldValueNotEquals($name_prefix . '[select][container][container][plugin_id]', '');
     $this->assertEmpty($this->getSession()->getDriver()->find(sprintf('//input[@name="%s"]', $change_button_name)));
-    $this->assertText(t('There are no available options.'));
+    $this->assertSession()->pageTextContains(t('There are no available options.'));
 
     // Test the presence of default elements with one available plugin.
     $path = $this->buildFormPath(['plugin_test_helper_configurable_plugin'], $tree);
     $this->drupalGet($path);
-    $this->assertNoFieldByName($name_prefix . '[select][container][plugin_id]');
+    $this->assertSession()->fieldValueNotEquals($name_prefix . '[select][container][plugin_id]', '');
     $this->assertEmpty($this->getSession()->getDriver()->find(sprintf('//input[@name="%s"]', $change_button_name)));
-    $this->assertNoText(t('There are no available options.'));
+    $this->assertSession()->pageTextNotContains(t('There are no available options.'));
 
     // Test the presence of default elements with multiple available plugins.
     $path = $this->buildFormPath(['plugin_test_helper_plugin', 'plugin_test_helper_configurable_plugin'], $tree);
     $this->drupalGet($path);
-    $this->assertFieldByName($name_prefix . '[select][container][plugin_id]');
+    $this->assertSession()->fieldExists($name_prefix . '[select][container][plugin_id]');
     $this->assertNotEmpty($this->getSession()->getDriver()->find(sprintf('//input[@name="%s"]', $change_button_name)));
-    $this->assertNoText(t('There are no available options.'));
+    $this->assertSession()->pageTextNotContains(t('There are no available options.'));
 
     // Choose a plugin.
-    $this->drupalPostForm(NULL, [
+    $this->submitForm([
       $name_prefix . '[select][container][plugin_id]' => 'plugin_test_helper_plugin',
     ], t('Choose'));
-    $this->assertFieldByName($name_prefix . '[select][container][plugin_id]');
+    $this->assertSession()->fieldExists($name_prefix . '[select][container][plugin_id]');
     $this->assertNotEmpty($this->getSession()->getDriver()->find(sprintf('//input[@name="%s"]', $change_button_name)));
 
     // Change the plugin.
-    $this->drupalPostForm(NULL, [
+    $this->submitForm([
       $name_prefix . '[select][container][plugin_id]' => 'plugin_test_helper_configurable_plugin',
     ], t('Choose'));
-    $this->assertFieldByName($name_prefix . '[select][container][plugin_id]');
+    $this->assertSession()->fieldExists($name_prefix . '[select][container][plugin_id]');
     $this->assertNotEmpty($this->getSession()->getDriver()->find(sprintf('//input[@name="%s"]', $change_button_name)));
 
     // Submit the form.
     $foo = $this->randomString();
-    $this->drupalPostForm(NULL, [
+    $this->submitForm([
       $name_prefix . '[select][container][plugin_id]' => 'plugin_test_helper_configurable_plugin',
       $name_prefix . '[plugin_form][foo]' => $foo,
 
@@ -89,8 +89,8 @@ class SelectListTest extends BrowserTestBase {
     $state = \Drupal::state();
     /** @var \Drupal\Component\Plugin\PluginInspectionInterface|\Drupal\Component\Plugin\ConfigurablePluginInterface $selected_plugin */
     $selected_plugin = $state->get('plugin_test_helper_advanced_plugin_selector_base');
-    $this->assertEqual($selected_plugin->getPluginId(), 'plugin_test_helper_configurable_plugin');
-    $this->assertEqual($selected_plugin->getConfiguration(), [
+    $this->assertEquals($selected_plugin->getPluginId(), 'plugin_test_helper_configurable_plugin');
+    $this->assertEquals($selected_plugin->getConfiguration(), [
       'foo' => $foo,
     ]);
   }
diff --git a/tests/src/Functional/PluginSelectorTest.php b/tests/src/Functional/PluginSelectorTest.php
index 6eac4f1..76b43bf 100644
--- a/tests/src/Functional/PluginSelectorTest.php
+++ b/tests/src/Functional/PluginSelectorTest.php
@@ -36,16 +36,17 @@ class PluginSelectorTest extends BrowserTestBase {
     $selectable_plugin_type_id = 'block';
     $field_type = 'plugin:' . $selectable_plugin_type_id;
     $default_selected_plugin_id = 'user_login_block';
-    $this->drupalPostForm('admin/config/people/accounts/fields/add-field', [
+    $this->drupalGet('admin/config/people/accounts/fields/add-field');
+    $this->submitForm([
       'label' => $this->randomString(),
       'field_name' => $field_name,
       'new_storage_type' => $field_type,
     ], t('Save and continue'));
-    $this->drupalPostForm(NULL, [], t('Save field settings'));
-    $this->drupalPostForm(NULL, [
+    $this->submitForm([], t('Save field settings'));
+    $this->submitForm([
       sprintf('default_value_input[field_%s][0][plugin_selector][container][select][container][plugin_id]', $field_name) => $default_selected_plugin_id,
     ], t('Choose'));
-    $this->drupalPostForm(NULL, [], t('Save settings'));
+    $this->submitForm([], t('Save settings'));
     \Drupal::service('entity_field.manager')->clearCachedFieldDefinitions();
     // Get all plugin fields.
     $field_storage_id = 'user.field_' . $field_name;
@@ -55,15 +56,16 @@ class PluginSelectorTest extends BrowserTestBase {
     /** @var \Drupal\field\FieldConfigInterface $field */
     $field = FieldConfig::load($field_id);
     $this->assertNotNull($field);
-    $this->assertEqual($field->getDefaultValueLiteral()[0]['plugin_id'], $default_selected_plugin_id);
+    $this->assertEquals($field->getDefaultValueLiteral()[0]['plugin_id'], $default_selected_plugin_id);
     $this->assertTrue(is_array($field->getDefaultValueLiteral()[0]['plugin_configuration']));
 
     // Test the widget when creating an entity.
     $entity_selected_plugin_id = 'system_breadcrumb_block';
-    $this->drupalPostForm('user/' . $user->id() . '/edit', [
+    $this->drupalGet('user/' . $user->id() . '/edit');
+    $this->submitForm([
       sprintf('field_%s[0][plugin_selector][container][select][container][plugin_id]', $field_name) => $entity_selected_plugin_id,
     ], t('Choose'));
-    $this->drupalPostForm(NULL, [], t('Save'));
+    $this->submitForm([], t('Save'));
 
     // Test whether the widget displays field values.
     /** @var \Drupal\Core\Entity\ContentEntityInterface $user */
diff --git a/tests/src/Unit/Controller/ListPluginTypesTest.php b/tests/src/Unit/Controller/ListPluginTypesTest.php
index e900e76..91ef4d6 100644
--- a/tests/src/Unit/Controller/ListPluginTypesTest.php
+++ b/tests/src/Unit/Controller/ListPluginTypesTest.php
@@ -2,6 +2,7 @@
 
 namespace Drupal\Tests\plugin\Unit\Controller;
 
+use Prophecy\PhpUnit\ProphecyTrait;
 use Drupal\Component\Plugin\PluginManagerInterface;
 use Drupal\Core\Config\TypedConfigManagerInterface;
 use Drupal\Core\DependencyInjection\ClassResolverInterface;
@@ -20,6 +21,7 @@ use Symfony\Component\DependencyInjection\ContainerInterface;
  */
 class ListPluginTypesTest extends UnitTestCase {
 
+  use ProphecyTrait;
   /**
    * The service container.
    *
@@ -37,21 +39,21 @@ class ListPluginTypesTest extends UnitTestCase {
   /**
    * The current user.
    *
-   * @var \Drupal\Core\Session\AccountInterface|\PHPUnit_Framework_MockObject_MockObject
+   * @var \Drupal\Core\Session\AccountInterface|\PHPUnit\Framework\MockObject\MockObject
    */
   protected $currentUser;
 
   /**
    * The module handler.
    *
-   * @var \Drupal\Core\Extension\ModuleHandlerInterface|\PHPUnit_Framework_MockObject_MockObject
+   * @var \Drupal\Core\Extension\ModuleHandlerInterface|\PHPUnit\Framework\MockObject\MockObject
    */
   protected $moduleHandler;
 
   /**
    * The plugin type manager.
    *
-   * @var \Drupal\plugin\PluginType\PluginTypeManagerInterface|\PHPUnit_Framework_MockObject_MockObject
+   * @var \Drupal\plugin\PluginType\PluginTypeManagerInterface|\PHPUnit\Framework\MockObject\MockObject
    */
   protected $pluginTypeManager;
 
diff --git a/tests/src/Unit/Controller/ListPluginsTest.php b/tests/src/Unit/Controller/ListPluginsTest.php
index 6822036..89cb692 100644
--- a/tests/src/Unit/Controller/ListPluginsTest.php
+++ b/tests/src/Unit/Controller/ListPluginsTest.php
@@ -2,6 +2,7 @@
 
 namespace Drupal\Tests\plugin\Unit\Controller;
 
+use Prophecy\PhpUnit\ProphecyTrait;
 use Drupal\Component\Plugin\PluginManagerInterface;
 use Drupal\Core\Config\TypedConfigManagerInterface;
 use Drupal\Core\DependencyInjection\ClassResolverInterface;
@@ -24,6 +25,7 @@ use Symfony\Component\DependencyInjection\ContainerInterface;
  */
 class ListPluginsTest extends UnitTestCase {
 
+  use ProphecyTrait;
   /**
    * The service container.
    *
@@ -41,21 +43,21 @@ class ListPluginsTest extends UnitTestCase {
   /**
    * The class resolver.
    *
-   * @var \Drupal\Core\DependencyInjection\ClassResolverInterface|\PHPUnit_Framework_MockObject_MockObject
+   * @var \Drupal\Core\DependencyInjection\ClassResolverInterface|\PHPUnit\Framework\MockObject\MockObject
    */
   protected $classResolver;
 
   /**
    * The current user.
    *
-   * @var \Drupal\Core\Session\AccountInterface|\PHPUnit_Framework_MockObject_MockObject
+   * @var \Drupal\Core\Session\AccountInterface|\PHPUnit\Framework\MockObject\MockObject
    */
   protected $currentUser;
 
   /**
    * The module handler.
    *
-   * @var \Drupal\Core\Extension\ModuleHandlerInterface|\PHPUnit_Framework_MockObject_MockObject
+   * @var \Drupal\Core\Extension\ModuleHandlerInterface|\PHPUnit\Framework\MockObject\MockObject
    */
   protected $moduleHandler;
 
diff --git a/tests/src/Unit/DefaultPluginResolver/EventBasedDefaultPluginResolverTest.php b/tests/src/Unit/DefaultPluginResolver/EventBasedDefaultPluginResolverTest.php
index 2a44b11..d37bbd2 100644
--- a/tests/src/Unit/DefaultPluginResolver/EventBasedDefaultPluginResolverTest.php
+++ b/tests/src/Unit/DefaultPluginResolver/EventBasedDefaultPluginResolverTest.php
@@ -20,7 +20,7 @@ class EventBasedDefaultPluginResolverTest extends UnitTestCase {
   /**
    * The event dispatcher.
    *
-   * @var \Symfony\Component\EventDispatcher\EventDispatcherInterface|\PHPUnit_Framework_MockObject_MockObject
+   * @var \Symfony\Component\EventDispatcher\EventDispatcherInterface|\PHPUnit\Framework\MockObject\MockObject
    */
   protected $eventDispatcher;
 
diff --git a/tests/src/Unit/Event/ResolveDefaultPluginTest.php b/tests/src/Unit/Event/ResolveDefaultPluginTest.php
index c3422b6..a761cca 100644
--- a/tests/src/Unit/Event/ResolveDefaultPluginTest.php
+++ b/tests/src/Unit/Event/ResolveDefaultPluginTest.php
@@ -17,7 +17,7 @@ class ResolveDefaultPluginTest extends UnitTestCase {
   /**
    * The plugin type.
    *
-   * @var \Drupal\plugin\PluginType\PluginTypeInterface|\PHPUnit_Framework_MockObject_MockObject
+   * @var \Drupal\plugin\PluginType\PluginTypeInterface|\PHPUnit\Framework\MockObject\MockObject
    */
   protected $pluginType;
 
diff --git a/tests/src/Unit/OperationsProviderTestTrait.php b/tests/src/Unit/OperationsProviderTestTrait.php
index b226ce3..66b591d 100644
--- a/tests/src/Unit/OperationsProviderTestTrait.php
+++ b/tests/src/Unit/OperationsProviderTestTrait.php
@@ -1,6 +1,7 @@
 <?php
 
 namespace Drupal\Tests\plugin\Unit;
+use PHPUnit\Framework\Assert;
 use Drupal\Core\Url;
 
 /**
@@ -15,11 +16,11 @@ trait OperationsProviderTestTrait {
    */
   protected function assertOperationsLinks(array $operations_links) {
     foreach ($operations_links as $link) {
-      \PHPUnit\Framework\Assert::assertArrayHasKey('title', $link);
-      \PHPUnit\Framework\Assert::assertNotEmpty($link['title']);
+      Assert::assertArrayHasKey('title', $link);
+      Assert::assertNotEmpty($link['title']);
 
-      \PHPUnit\Framework\Assert::assertArrayHasKey('url', $link);
-      \PHPUnit\Framework\Assert::assertInstanceOf(Url::class, $link['url']);
+      Assert::assertArrayHasKey('url', $link);
+      Assert::assertInstanceOf(Url::class, $link['url']);
     }
   }
 
diff --git a/tests/src/Unit/ParamConverter/PluginDefinitionConverterTest.php b/tests/src/Unit/ParamConverter/PluginDefinitionConverterTest.php
index 7cfe026..f37cf1a 100644
--- a/tests/src/Unit/ParamConverter/PluginDefinitionConverterTest.php
+++ b/tests/src/Unit/ParamConverter/PluginDefinitionConverterTest.php
@@ -2,6 +2,7 @@
 
 namespace Drupal\Tests\plugin\Unit\ParamConverter;
 
+use Prophecy\PhpUnit\ProphecyTrait;
 use Drupal\Component\Plugin\Definition\PluginDefinitionInterface;
 use Drupal\Component\Plugin\Exception\PluginNotFoundException;
 use Drupal\Component\Plugin\PluginManagerInterface;
@@ -18,6 +19,7 @@ use Symfony\Component\Routing\Route;
  */
 class PluginDefinitionConverterTest extends UnitTestCase {
 
+  use ProphecyTrait;
   /**
    * The plugin manager.
    *
diff --git a/tests/src/Unit/ParamConverter/PluginInstanceConverterTest.php b/tests/src/Unit/ParamConverter/PluginInstanceConverterTest.php
index 8ca8d54..eecaf3a 100644
--- a/tests/src/Unit/ParamConverter/PluginInstanceConverterTest.php
+++ b/tests/src/Unit/ParamConverter/PluginInstanceConverterTest.php
@@ -2,6 +2,7 @@
 
 namespace Drupal\Tests\plugin\Unit\ParamConverter;
 
+use Prophecy\PhpUnit\ProphecyTrait;
 use Drupal\Component\Plugin\Exception\PluginNotFoundException;
 use Drupal\Component\Plugin\PluginManagerInterface;
 use Drupal\plugin\ParamConverter\PluginInstanceConverter;
@@ -17,6 +18,7 @@ use Symfony\Component\Routing\Route;
  */
 class PluginInstanceConverterTest extends UnitTestCase {
 
+  use ProphecyTrait;
   /**
    * The plugin manager.
    *
diff --git a/tests/src/Unit/ParamConverter/PluginTypeConverterTest.php b/tests/src/Unit/ParamConverter/PluginTypeConverterTest.php
index 637ef77..37228c8 100644
--- a/tests/src/Unit/ParamConverter/PluginTypeConverterTest.php
+++ b/tests/src/Unit/ParamConverter/PluginTypeConverterTest.php
@@ -2,6 +2,7 @@
 
 namespace Drupal\Tests\plugin\Unit\ParamConverter;
 
+use Prophecy\PhpUnit\ProphecyTrait;
 use Drupal\plugin\ParamConverter\PluginTypeConverter;
 use Drupal\plugin\PluginType\PluginTypeInterface;
 use Drupal\plugin\PluginType\PluginTypeManagerInterface;
@@ -15,6 +16,7 @@ use Symfony\Component\Routing\Route;
  */
 class PluginTypeConverterTest extends UnitTestCase {
 
+  use ProphecyTrait;
   /**
    * The plugin manager.
    *
diff --git a/tests/src/Unit/Plugin/Field/FieldFormatter/PluginLabelTest.php b/tests/src/Unit/Plugin/Field/FieldFormatter/PluginLabelTest.php
index 285b773..213dacf 100644
--- a/tests/src/Unit/Plugin/Field/FieldFormatter/PluginLabelTest.php
+++ b/tests/src/Unit/Plugin/Field/FieldFormatter/PluginLabelTest.php
@@ -22,7 +22,7 @@ class PluginLabelTest extends UnitTestCase {
   /**
    * The field definition.
    *
-   * @var \Drupal\Core\Field\FieldDefinitionInterface|\PHPUnit_Framework_MockObject_MockObject
+   * @var \Drupal\Core\Field\FieldDefinitionInterface|\PHPUnit\Framework\MockObject\MockObject
    */
   protected $fieldDefinition;
 
@@ -78,7 +78,7 @@ class PluginLabelTest extends UnitTestCase {
       ->method('getContainedPluginInstance')
       ->willReturn($plugin_instance_b);
 
-    /** @var \Drupal\plugin\Plugin\Field\FieldType\PluginCollectionItemInterface[]|\PHPUnit_Framework_MockObject_MockObject[] $items */
+    /** @var \Drupal\plugin\Plugin\Field\FieldType\PluginCollectionItemInterface[]|\PHPUnit\Framework\MockObject\MockObject[] $items */
     $items = [$item_a, $item_b];
 
     $plugin_type = $this->createMock(PluginTypeInterface::class);
@@ -93,10 +93,7 @@ class PluginLabelTest extends UnitTestCase {
     }
 
     $iterator = new \ArrayIterator($items);
-    $item_list = $this->getMockBuilder(PluginCollectionItemList::class)
-      ->disableOriginalConstructor()
-      ->setMethods(['getEntity', 'getIterator'])
-      ->getMock();
+    $item_list = $this->createMock(PluginCollectionItemList::class);
     $item_list->expects($this->atLeastOnce())
       ->method('getIterator')
       ->willReturn($iterator);
diff --git a/tests/src/Unit/Plugin/Field/FieldType/PluginCollectionItemDeriverTest.php b/tests/src/Unit/Plugin/Field/FieldType/PluginCollectionItemDeriverTest.php
index 3d41704..a5b4682 100644
--- a/tests/src/Unit/Plugin/Field/FieldType/PluginCollectionItemDeriverTest.php
+++ b/tests/src/Unit/Plugin/Field/FieldType/PluginCollectionItemDeriverTest.php
@@ -2,6 +2,7 @@
 
 namespace Drupal\Tests\plugin\Unit\Plugin\Field\FieldType;
 
+use Prophecy\PhpUnit\ProphecyTrait;
 use Drupal\Component\Plugin\PluginManagerInterface;
 use Drupal\Core\Config\TypedConfigManagerInterface;
 use Drupal\Core\DependencyInjection\ClassResolverInterface;
@@ -18,6 +19,7 @@ use Symfony\Component\DependencyInjection\ContainerInterface;
  */
 class PluginCollectionItemDeriverTest extends UnitTestCase {
 
+  use ProphecyTrait;
   /**
    * The service container.
    *
@@ -28,7 +30,7 @@ class PluginCollectionItemDeriverTest extends UnitTestCase {
   /**
    * The plugin type manager.
    *
-   * @var \Drupal\plugin\PluginType\PluginTypeManagerInterface|\PHPUnit_Framework_MockObject_MockObject
+   * @var \Drupal\plugin\PluginType\PluginTypeManagerInterface|\PHPUnit\Framework\MockObject\MockObject
    */
   protected $pluginTypeManager;
 
diff --git a/tests/src/Unit/Plugin/Field/FieldWidget/PluginSelectorDeriverTest.php b/tests/src/Unit/Plugin/Field/FieldWidget/PluginSelectorDeriverTest.php
index 9086003..25efccd 100644
--- a/tests/src/Unit/Plugin/Field/FieldWidget/PluginSelectorDeriverTest.php
+++ b/tests/src/Unit/Plugin/Field/FieldWidget/PluginSelectorDeriverTest.php
@@ -17,7 +17,7 @@ class PluginSelectorDeriverTest extends UnitTestCase {
   /**
    * The plugin selector manager.
    *
-   * @var \Drupal\plugin\Plugin\Plugin\PluginSelector\PluginSelectorManagerInterface|\PHPUnit_Framework_MockObject_MockObject
+   * @var \Drupal\plugin\Plugin\Plugin\PluginSelector\PluginSelectorManagerInterface|\PHPUnit\Framework\MockObject\MockObject
    */
   protected $pluginSelectorManager;
 
diff --git a/tests/src/Unit/Plugin/Plugin/PluginSelector/AdvancedPluginSelectorBaseTest.php b/tests/src/Unit/Plugin/Plugin/PluginSelector/AdvancedPluginSelectorBaseTest.php
index 7d08325..2aca9a9 100644
--- a/tests/src/Unit/Plugin/Plugin/PluginSelector/AdvancedPluginSelectorBaseTest.php
+++ b/tests/src/Unit/Plugin/Plugin/PluginSelector/AdvancedPluginSelectorBaseTest.php
@@ -24,14 +24,14 @@ class AdvancedPluginSelectorBaseTest extends PluginSelectorBaseTestBase {
   /**
    * The class under test.
    *
-   * @var \Drupal\plugin\Plugin\Plugin\PluginSelector\AdvancedPluginSelectorBase|\PHPUnit_Framework_MockObject_MockObject
+   * @var \Drupal\plugin\Plugin\Plugin\PluginSelector\AdvancedPluginSelectorBase|\PHPUnit\Framework\MockObject\MockObject
    */
   protected $sut;
 
   /**
    * The string translator.
    *
-   * @var \Drupal\Core\StringTranslation\TranslationInterface|\PHPUnit_Framework_MockObject_MockObject
+   * @var \Drupal\Core\StringTranslation\TranslationInterface|\PHPUnit\Framework\MockObject\MockObject
    */
   protected $stringTranslation;
 
@@ -572,7 +572,7 @@ class AdvancedPluginSelectorBaseTest extends PluginSelectorBaseTestBase {
       '#type' => $this->randomMachineName(),
     ];
 
-    /** @var \Drupal\plugin\Plugin\Plugin\PluginSelector\AdvancedPluginSelectorBase|\PHPUnit_Framework_MockObject_MockObject $plugin_selector */
+    /** @var \Drupal\plugin\Plugin\Plugin\PluginSelector\AdvancedPluginSelectorBase|\PHPUnit\Framework\MockObject\MockObject $plugin_selector */
     $plugin_selector = $this->getMockBuilder(AdvancedPluginSelectorBase::class)
       ->setMethods(['buildPluginForm', 'buildSelector'])
       ->setConstructorArgs([
diff --git a/tests/src/Unit/Plugin/Plugin/PluginSelector/PluginSelectorBaseTest.php b/tests/src/Unit/Plugin/Plugin/PluginSelector/PluginSelectorBaseTest.php
index bdd2c60..87e9e5d 100644
--- a/tests/src/Unit/Plugin/Plugin/PluginSelector/PluginSelectorBaseTest.php
+++ b/tests/src/Unit/Plugin/Plugin/PluginSelector/PluginSelectorBaseTest.php
@@ -19,7 +19,7 @@ class PluginSelectorBaseTest extends PluginSelectorBaseTestBase {
   /**
    * The class under test.
    *
-   * @var \Drupal\plugin\Plugin\Plugin\PluginSelector\PluginSelectorBase|\PHPUnit_Framework_MockObject_MockObject
+   * @var \Drupal\plugin\Plugin\Plugin\PluginSelector\PluginSelectorBase|\PHPUnit\Framework\MockObject\MockObject
    */
   protected $sut;
 
diff --git a/tests/src/Unit/Plugin/Plugin/PluginSelector/PluginSelectorBaseTestBase.php b/tests/src/Unit/Plugin/Plugin/PluginSelector/PluginSelectorBaseTestBase.php
index 0e4e577..c6db0b2 100644
--- a/tests/src/Unit/Plugin/Plugin/PluginSelector/PluginSelectorBaseTestBase.php
+++ b/tests/src/Unit/Plugin/Plugin/PluginSelector/PluginSelectorBaseTestBase.php
@@ -17,7 +17,7 @@ abstract class PluginSelectorBaseTestBase extends UnitTestCase {
   /**
    * The default plugin resolver.
    *
-   * @var \Drupal\plugin\DefaultPluginResolver\DefaultPluginResolverInterface|\PHPUnit_Framework_MockObject_MockObject
+   * @var \Drupal\plugin\DefaultPluginResolver\DefaultPluginResolverInterface|\PHPUnit\Framework\MockObject\MockObject
    */
   protected $defaultPluginResolver;
 
@@ -38,28 +38,28 @@ abstract class PluginSelectorBaseTestBase extends UnitTestCase {
   /**
    * The plugin manager through which to select plugins.
    *
-   * @var \Drupal\Component\Plugin\PluginManagerInterface|\PHPUnit_Framework_MockObject_MockObject
+   * @var \Drupal\Component\Plugin\PluginManagerInterface|\PHPUnit\Framework\MockObject\MockObject
    */
   protected $selectablePluginManager;
 
   /**
    * The plugin type of which to select plugins.
    *
-   * @var \Drupal\plugin\PluginType\PluginTypeInterface|\PHPUnit_Framework_MockObject_MockObject
+   * @var \Drupal\plugin\PluginType\PluginTypeInterface|\PHPUnit\Framework\MockObject\MockObject
    */
   protected $selectablePluginType;
 
   /**
    * The selected plugin.
    *
-   * @var \Drupal\Component\Plugin\PluginInspectionInterface|\PHPUnit_Framework_MockObject_MockObject
+   * @var \Drupal\Component\Plugin\PluginInspectionInterface|\PHPUnit\Framework\MockObject\MockObject
    */
   protected $selectedPlugin;
 
   /**
    * The class under test.
    *
-   * @var \Drupal\plugin\Plugin\Plugin\PluginSelector\PluginSelectorBase|\PHPUnit_Framework_MockObject_MockObject
+   * @var \Drupal\plugin\Plugin\Plugin\PluginSelector\PluginSelectorBase|\PHPUnit\Framework\MockObject\MockObject
    */
   protected $sut;
 
diff --git a/tests/src/Unit/Plugin/Plugin/PluginSelector/PluginSelectorManagerTest.php b/tests/src/Unit/Plugin/Plugin/PluginSelector/PluginSelectorManagerTest.php
index 31191f0..8b0c3a9 100644
--- a/tests/src/Unit/Plugin/Plugin/PluginSelector/PluginSelectorManagerTest.php
+++ b/tests/src/Unit/Plugin/Plugin/PluginSelector/PluginSelectorManagerTest.php
@@ -20,28 +20,28 @@ class PluginSelectorManagerTest extends UnitTestCase {
   /**
    * The cache backend.
    *
-   * @var \Drupal\Core\Cache\CacheBackendInterface|\PHPUnit_Framework_MockObject_MockObject
+   * @var \Drupal\Core\Cache\CacheBackendInterface|\PHPUnit\Framework\MockObject\MockObject
    */
   public $cache;
 
   /**
    * The plugin discovery.
    *
-   * @var \Drupal\Component\Plugin\Discovery\DiscoveryInterface|\PHPUnit_Framework_MockObject_MockObject
+   * @var \Drupal\Component\Plugin\Discovery\DiscoveryInterface|\PHPUnit\Framework\MockObject\MockObject
    */
   protected $discovery;
 
   /**
    * The plugin factory.
    *
-   * @var \Drupal\Component\Plugin\Factory\FactoryInterface|\PHPUnit_Framework_MockObject_MockObject
+   * @var \Drupal\Component\Plugin\Factory\FactoryInterface|\PHPUnit\Framework\MockObject\MockObject
    */
   protected $factory;
 
   /**
    * The module handler.
    *
-   * @var \Drupal\Core\Extension\ModuleHandlerInterface|\PHPUnit_Framework_MockObject_MockObject
+   * @var \Drupal\Core\Extension\ModuleHandlerInterface|\PHPUnit\Framework\MockObject\MockObject
    */
   protected $moduleHandler;
 
diff --git a/tests/src/Unit/Plugin/Plugin/PluginSelector/RadiosTest.php b/tests/src/Unit/Plugin/Plugin/PluginSelector/RadiosTest.php
index 8e58754..aa39141 100644
--- a/tests/src/Unit/Plugin/Plugin/PluginSelector/RadiosTest.php
+++ b/tests/src/Unit/Plugin/Plugin/PluginSelector/RadiosTest.php
@@ -26,14 +26,14 @@ class RadiosTest extends PluginSelectorBaseTestBase {
   /**
    * The response policy.
    *
-   * @var \Drupal\Core\PageCache\ResponsePolicyInterface|\PHPUnit_Framework_MockObject_MockObject
+   * @var \Drupal\Core\PageCache\ResponsePolicyInterface|\PHPUnit\Framework\MockObject\MockObject
    */
   protected $responsePolicy;
 
   /**
    * The string translator.
    *
-   * @var \Drupal\Core\StringTranslation\TranslationInterface|\PHPUnit_Framework_MockObject_MockObject
+   * @var \Drupal\Core\StringTranslation\TranslationInterface|\PHPUnit\Framework\MockObject\MockObject
    */
   protected $stringTranslation;
 
@@ -43,9 +43,7 @@ class RadiosTest extends PluginSelectorBaseTestBase {
   protected function setUp(): void {
     parent::setUp();
 
-    $this->responsePolicy = $this->getMockBuilder(KillSwitch::class)
-      ->disableOriginalConstructor()
-      ->getMock();
+    $this->responsePolicy = $this->createMock(KillSwitch::class);
 
     $this->stringTranslation = $this->getStringTranslationStub();
 
diff --git a/tests/src/Unit/Plugin/Plugin/PluginSelector/SelectListTest.php b/tests/src/Unit/Plugin/Plugin/PluginSelector/SelectListTest.php
index e06c501..c801bed 100644
--- a/tests/src/Unit/Plugin/Plugin/PluginSelector/SelectListTest.php
+++ b/tests/src/Unit/Plugin/Plugin/PluginSelector/SelectListTest.php
@@ -27,14 +27,14 @@ class SelectListTest extends PluginSelectorBaseTestBase {
   /**
    * The response policy.
    *
-   * @var \Drupal\Core\PageCache\ResponsePolicyInterface|\PHPUnit_Framework_MockObject_MockObject
+   * @var \Drupal\Core\PageCache\ResponsePolicyInterface|\PHPUnit\Framework\MockObject\MockObject
    */
   protected $responsePolicy;
 
   /**
    * The string translator.
    *
-   * @var \Drupal\Core\StringTranslation\TranslationInterface|\PHPUnit_Framework_MockObject_MockObject
+   * @var \Drupal\Core\StringTranslation\TranslationInterface|\PHPUnit\Framework\MockObject\MockObject
    */
   protected $stringTranslation;
 
@@ -44,9 +44,7 @@ class SelectListTest extends PluginSelectorBaseTestBase {
   protected function setUp(): void {
     parent::setUp();
 
-    $this->responsePolicy = $this->getMockBuilder(KillSwitch::class)
-      ->disableOriginalConstructor()
-      ->getMock();
+    $this->responsePolicy = $this->createMock(KillSwitch::class);
 
     $this->stringTranslation = $this->getStringTranslationStub();
 
diff --git a/tests/src/Unit/Plugin/PluginOperationsProviderPluginManagerTraitTest.php b/tests/src/Unit/Plugin/PluginOperationsProviderPluginManagerTraitTest.php
index 8bb83bc..41a03d9 100644
--- a/tests/src/Unit/Plugin/PluginOperationsProviderPluginManagerTraitTest.php
+++ b/tests/src/Unit/Plugin/PluginOperationsProviderPluginManagerTraitTest.php
@@ -16,7 +16,7 @@ class PluginOperationsProviderPluginManagerTraitTest extends UnitTestCase {
   /**
    * The class resolver.
    *
-   * @var \Drupal\Core\DependencyInjection\ClassResolverInterface|\PHPUnit_Framework_MockObject_MockObject
+   * @var \Drupal\Core\DependencyInjection\ClassResolverInterface|\PHPUnit\Framework\MockObject\MockObject
    */
   protected $classResolver;
 
diff --git a/tests/src/Unit/Plugin/views/filter/PluginIdTest.php b/tests/src/Unit/Plugin/views/filter/PluginIdTest.php
index 0917e54..d5c99b2 100644
--- a/tests/src/Unit/Plugin/views/filter/PluginIdTest.php
+++ b/tests/src/Unit/Plugin/views/filter/PluginIdTest.php
@@ -2,6 +2,7 @@
 
 namespace Drupal\Tests\plugin\Unit\Plugin\views\filter;
 
+use Prophecy\PhpUnit\ProphecyTrait;
 use Drupal\Component\Plugin\PluginManagerInterface;
 use Drupal\Core\Cache\Cache;
 use Drupal\Core\Cache\CacheableDependencyInterface;
@@ -22,6 +23,7 @@ use Symfony\Component\DependencyInjection\ContainerInterface;
  */
 class PluginIdTest extends UnitTestCase {
 
+  use ProphecyTrait;
   /**
    * The plugin type.
    *
diff --git a/tests/src/Unit/PluginDefinition/MergeablePluginDefinitionTraitTest.php b/tests/src/Unit/PluginDefinition/MergeablePluginDefinitionTraitTest.php
index dd880be..1ef3b7e 100644
--- a/tests/src/Unit/PluginDefinition/MergeablePluginDefinitionTraitTest.php
+++ b/tests/src/Unit/PluginDefinition/MergeablePluginDefinitionTraitTest.php
@@ -16,7 +16,7 @@ class MergeablePluginDefinitionTraitTest extends UnitTestCase {
   /**
    * The class under test.
    *
-   * @var \Drupal\plugin\PluginDefinition\MergeablePluginDefinitionTrait|\PHPUnit_Framework_MockObject_MockObject
+   * @var \Drupal\plugin\PluginDefinition\MergeablePluginDefinitionTrait|\PHPUnit\Framework\MockObject\MockObject
    */
   protected $sut;
 
diff --git a/tests/src/Unit/PluginDiscovery/LimitedPluginDiscoveryDecoratorTest.php b/tests/src/Unit/PluginDiscovery/LimitedPluginDiscoveryDecoratorTest.php
index c828ed8..5b82520 100644
--- a/tests/src/Unit/PluginDiscovery/LimitedPluginDiscoveryDecoratorTest.php
+++ b/tests/src/Unit/PluginDiscovery/LimitedPluginDiscoveryDecoratorTest.php
@@ -18,7 +18,7 @@ class LimitedPluginDiscoveryDecoratorTest extends UnitTestCase {
   /**
    * The original plugin manager.
    *
-   * @var \Drupal\Component\Plugin\PluginManagerInterface|\PHPUnit_Framework_MockObject_MockObject
+   * @var \Drupal\Component\Plugin\PluginManagerInterface|\PHPUnit\Framework\MockObject\MockObject
    */
   protected $pluginManager;
 
diff --git a/tests/src/Unit/PluginDiscovery/PluginDiscoveryDecoratorTest.php b/tests/src/Unit/PluginDiscovery/PluginDiscoveryDecoratorTest.php
index 1b512c5..7317349 100644
--- a/tests/src/Unit/PluginDiscovery/PluginDiscoveryDecoratorTest.php
+++ b/tests/src/Unit/PluginDiscovery/PluginDiscoveryDecoratorTest.php
@@ -17,7 +17,7 @@ class PluginDiscoveryDecoratorTest extends UnitTestCase {
   /**
    * The decorated discovery.
    *
-   * @var \Drupal\Component\Plugin\Discovery\DiscoveryInterface|\PHPUnit_Framework_MockObject_MockObject
+   * @var \Drupal\Component\Plugin\Discovery\DiscoveryInterface|\PHPUnit\Framework\MockObject\MockObject
    */
   protected $decoratedDiscovery;
 
diff --git a/tests/src/Unit/PluginDiscovery/TypedDefinitionEnsuringPluginDiscoveryDecoratorTest.php b/tests/src/Unit/PluginDiscovery/TypedDefinitionEnsuringPluginDiscoveryDecoratorTest.php
index 16aab55..2b43488 100644
--- a/tests/src/Unit/PluginDiscovery/TypedDefinitionEnsuringPluginDiscoveryDecoratorTest.php
+++ b/tests/src/Unit/PluginDiscovery/TypedDefinitionEnsuringPluginDiscoveryDecoratorTest.php
@@ -18,14 +18,14 @@ class TypedDefinitionEnsuringPluginDiscoveryDecoratorTest extends UnitTestCase {
   /**
    * The original plugin manager.
    *
-   * @var \Drupal\Component\Plugin\PluginManagerInterface|\PHPUnit_Framework_MockObject_MockObject
+   * @var \Drupal\Component\Plugin\PluginManagerInterface|\PHPUnit\Framework\MockObject\MockObject
    */
   protected $pluginManager;
 
   /**
    * The type of the plugin definitions to decorate.
    *
-   * @var \Drupal\plugin\PluginType\PluginTypeInterface|\PHPUnit_Framework_MockObject_MockObject
+   * @var \Drupal\plugin\PluginType\PluginTypeInterface|\PHPUnit\Framework\MockObject\MockObject
    */
   protected $pluginType;
 
diff --git a/tests/src/Unit/PluginManager/PluginManagerDecoratorTest.php b/tests/src/Unit/PluginManager/PluginManagerDecoratorTest.php
index 041d5fd..3fa5c1e 100644
--- a/tests/src/Unit/PluginManager/PluginManagerDecoratorTest.php
+++ b/tests/src/Unit/PluginManager/PluginManagerDecoratorTest.php
@@ -20,14 +20,14 @@ class PluginManagerDecoratorTest extends UnitTestCase {
   /**
    * The decorated plugin discovery.
    *
-   * @var \Drupal\Component\Plugin\Discovery\DiscoveryInterface|\PHPUnit_Framework_MockObject_MockObject
+   * @var \Drupal\Component\Plugin\Discovery\DiscoveryInterface|\PHPUnit\Framework\MockObject\MockObject
    */
   protected $decoratedDiscovery;
 
   /**
    * The decorated plugin factory.
    *
-   * @var \Drupal\Component\Plugin\Factory\FactoryInterface|\PHPUnit_Framework_MockObject_MockObject
+   * @var \Drupal\Component\Plugin\Factory\FactoryInterface|\PHPUnit\Framework\MockObject\MockObject
    */
   protected $decoratedFactory;
 
diff --git a/tests/src/Unit/PluginType/PluginTypeManagerTest.php b/tests/src/Unit/PluginType/PluginTypeManagerTest.php
index 5e41eb1..902ad03 100644
--- a/tests/src/Unit/PluginType/PluginTypeManagerTest.php
+++ b/tests/src/Unit/PluginType/PluginTypeManagerTest.php
@@ -27,14 +27,14 @@ class PluginTypeManagerTest extends UnitTestCase {
   /**
    * The service container.
    *
-   * @var \Symfony\Component\DependencyInjection\ContainerInterface|\PHPUnit_Framework_MockObject_MockObject
+   * @var \Symfony\Component\DependencyInjection\ContainerInterface|\PHPUnit\Framework\MockObject\MockObject
    */
   protected $container;
 
   /**
    * The module handler.
    *
-   * @var \Drupal\Core\Extension\ModuleHandlerInterface|\PHPUnit_Framework_MockObject_MockObject
+   * @var \Drupal\Core\Extension\ModuleHandlerInterface|\PHPUnit\Framework\MockObject\MockObject
    */
   protected $moduleHandler;
 
@@ -63,7 +63,7 @@ class PluginTypeManagerTest extends UnitTestCase {
   /**
    * The typed configuration manager.
    *
-   * @var \Drupal\Core\Config\TypedConfigManagerInterface|\PHPUnit_Framework_MockObject_MockObject
+   * @var \Drupal\Core\Config\TypedConfigManagerInterface|\PHPUnit\Framework\MockObject\MockObject
    */
   protected $typedConfigurationManager;
 
@@ -161,7 +161,7 @@ EOT;
   public function testHasPluginType($expected, $plugin_type_id, $module_name, $module_exists) {
     $modules = [];
     if ($module_exists) {
-      $extension = $this->getMockBuilder(Extension::class)->disableOriginalConstructor()->getMock();
+      $extension = $this->createMock(Extension::class);
       $extension->expects($this->atLeastOnce())
         ->method('getName')
         ->willReturn($module_name);
@@ -204,7 +204,7 @@ EOT;
   public function testGetPluginType($expected_success, $plugin_type_id, $module_name, $module_exists) {
     $modules = [];
     if ($module_exists) {
-      $extension = $this->getMockBuilder(Extension::class)->disableOriginalConstructor()->getMock();
+      $extension = $this->createMock(Extension::class);
       $extension->expects($this->atLeastOnce())
         ->method('getName')
         ->willReturn($module_name);
@@ -263,7 +263,7 @@ EOT;
    */
   public function testGetPluginTypes() {
     $modules = array_map(function(array $plugin_type_definition) {
-      $extension = $this->getMockBuilder(Extension::class)->disableOriginalConstructor()->getMock();
+      $extension = $this->createMock(Extension::class);
       $extension->expects($this->atLeastOnce())
         ->method('getName')
         ->willReturn($plugin_type_definition['provider']);
diff --git a/tests/src/Unit/PluginType/PluginTypeTest.php b/tests/src/Unit/PluginType/PluginTypeTest.php
index b7c754b..5c3dbda 100644
--- a/tests/src/Unit/PluginType/PluginTypeTest.php
+++ b/tests/src/Unit/PluginType/PluginTypeTest.php
@@ -22,14 +22,14 @@ class PluginTypeTest extends UnitTestCase {
   /**
    * The service container.
    *
-   * @var \Symfony\Component\DependencyInjection\ContainerInterface|\PHPUnit_Framework_MockObject_MockObject
+   * @var \Symfony\Component\DependencyInjection\ContainerInterface|\PHPUnit\Framework\MockObject\MockObject
    */
   protected $container;
 
   /**
    * The plugin manager.
    *
-   * @var \Drupal\Component\Plugin\PluginManagerInterface|\PHPUnit_Framework_MockObject_MockObject
+   * @var \Drupal\Component\Plugin\PluginManagerInterface|\PHPUnit\Framework\MockObject\MockObject
    */
   protected $pluginManager;
 
