diff --git a/core/modules/migrate/tests/src/Unit/Exception/RequirementsExceptionTest.php b/core/modules/migrate/tests/src/Unit/Exception/RequirementsExceptionTest.php
new file mode 100644
index 0000000..b6de071
--- /dev/null
+++ b/core/modules/migrate/tests/src/Unit/Exception/RequirementsExceptionTest.php
@@ -0,0 +1,55 @@
+<?php
+
+/**
+ * @file
+ * Contains \Drupal\Tests\migrate\Unit\Exception\RequirementsExceptionTest.
+ */
+
+namespace Drupal\Tests\migrate\Unit\Exception;
+
+use Drupal\migrate\Exception\RequirementsException;
+use Drupal\Tests\UnitTestCase;
+
+/**
+ * @coversDefaultClass \Drupal\migrate\Exception\RequirementsException
+ * @group migration
+ */
+class RequirementsExceptionTest extends UnitTestCase {
+
+  protected $missing_requirements = ['random_jackson_pivot', '51_Eridani_b'];
+
+  /**
+   * @covers ::getRequirements
+   */
+  public function testGetRequirements() {
+    $exception = new RequirementsException('Missing requirements ', ['requirements' => $this->missing_requirements]);
+    $this->assertArrayEquals(['requirements' => $this->missing_requirements], $exception->getRequirements());
+  }
+
+  /**
+   * @covers ::getRequirementsString
+   * @dataProvider getRequirements
+   */
+  public function testGetExceptionString($expected, $message, $requirements) {
+    $exception = new RequirementsException($message, $requirements);
+    $this->assertEquals($expected, $exception->getRequirementsString());
+  }
+
+  /**
+   * Provides a list of requirements to test
+   */
+  public function getRequirements() {
+    return array(
+      array(
+        'requirements: random_jackson_pivot.',
+        'Single Requirement',
+        array('requirements' => $this->missing_requirements[0]),
+      ),
+      array(
+        'requirements: random_jackson_pivot. requirements: 51_Eridani_b.',
+        'Multiple Requirements',
+        array('requirements' => $this->missing_requirements),
+      ),
+    );
+  }
+}
