diff --git a/core/tests/Drupal/TestTools/PhpUnitCompatibility/PhpUnit6/TestCompatibilityTrait.php b/core/tests/Drupal/TestTools/PhpUnitCompatibility/PhpUnit6/TestCompatibilityTrait.php
index c9c1c4df41..0521d766d4 100644
--- a/core/tests/Drupal/TestTools/PhpUnitCompatibility/PhpUnit6/TestCompatibilityTrait.php
+++ b/core/tests/Drupal/TestTools/PhpUnitCompatibility/PhpUnit6/TestCompatibilityTrait.php
@@ -81,4 +81,158 @@ public static function assertNotEqualsCanonicalizing($expected, $actual, $messag
     static::assertNotEquals($expected, $actual, $message, 0.0, 10, TRUE);
   }
 
+  /**
+   * Forward compatibility for assertIsArray.
+   */
+  public static function assertIsArray($actual, string $message = ''): void {
+    static::assertInternalType('array', $actual, $message);
+  }
+
+  /**
+   * Forward compatibility for assertIsBool.
+   */
+  public static function assertIsBool($actual, string $message = ''): void {
+    static::assertInternalType('bool', $actual, $message);
+  }
+
+  /**
+   * Forward compatibility for assertIsFloat.
+   */
+  public static function assertIsFloat($actual, string $message = ''): void {
+    static::assertInternalType('float', $actual, $message);
+  }
+
+  /**
+   * Forward compatibility for assertIsObject.
+   */
+  public static function assertIsInt($actual, string $message = ''): void {
+    static::assertInternalType('int', $actual, $message);
+  }
+
+  /**
+   * Forward compatibility for assertIsNumeric.
+   */
+  public static function assertIsNumeric($actual, string $message = ''): void {
+    static::assertInternalType('numeric', $actual, $message);
+  }
+
+  /**
+   * Forward compatibility for assertIsObject.
+   */
+  public static function assertIsObject($actual, string $message = ''): void {
+    static::assertInternalType('object', $actual, $message);
+  }
+
+  /**
+   * Forward compatibility for assertIsResource.
+   */
+  public static function assertIsResource($actual, string $message = ''): void {
+    static::assertInternalType('resource', $actual, $message);
+  }
+
+  /**
+   * Forward compatibility for assertIsString.
+   */
+  public static function assertIsString($actual, string $message = ''): void {
+    static::assertInternalType('string', $actual, $message);
+  }
+
+  /**
+   * Forward compatibility for assertIsScalar.
+   */
+  public static function assertIsScalar($actual, string $message = ''): void {
+    static::assertInternalType('scalar', $actual, $message);
+  }
+
+  /**
+   * Forward compatibility for assertIsCallable.
+   */
+  public static function assertIsCallable($actual, string $message = ''): void {
+    static::assertInternalType('callable', $actual, $message);
+  }
+
+  /**
+   * Forward compatibility for assertIsIterable.
+   */
+  public static function assertIsIterable($actual, string $message = ''): void {
+    static::assertTrue(\is_iterable($actual), $message);
+  }
+
+  /**
+   * Forward compatibility for assertIsNotArray.
+   */
+  public static function assertIsNotArray($actual, string $message = ''): void {
+    static::assertNotInternalType('array', $actual, $message);
+  }
+
+  /**
+   * Forward compatibility for assertIsNotBool.
+   */
+  public static function assertIsNotBool($actual, string $message = ''): void {
+    static::assertNotInternalType('bool', $actual, $message);
+  }
+
+  /**
+   * Forward compatibility for assertIsNotFloat.
+   */
+  public static function assertIsNotFloat($actual, string $message = ''): void {
+    static::assertNotInternalType('float', $actual, $message);
+  }
+
+  /**
+   * Forward compatibility for assertIsNotObject.
+   */
+  public static function assertIsNotInt($actual, string $message = ''): void {
+    static::assertNotInternalType('int', $actual, $message);
+  }
+
+  /**
+   * Forward compatibility for assertIsNotNumeric.
+   */
+  public static function assertIsNotNumeric($actual, string $message = ''): void {
+    static::assertNotInternalType('numeric', $actual, $message);
+  }
+
+  /**
+   * Forward compatibility for assertIsNotObject.
+   */
+  public static function assertIsNotObject($actual, string $message = ''): void {
+    static::assertNotInternalType('object', $actual, $message);
+  }
+
+  /**
+   * Forward compatibility for assertIsNotResource.
+   */
+  public static function assertIsNotResource($actual, string $message = ''): void {
+    static::assertNotInternalType('resource', $actual, $message);
+  }
+
+  /**
+   * Forward compatibility for assertIsNotString.
+   */
+  public static function assertIsNotString($actual, string $message = ''): void {
+    static::assertNotInternalType('string', $actual, $message);
+  }
+
+  /**
+   * Forward compatibility for assertIsNotScalar.
+   */
+  public static function assertIsNotScalar($actual, string $message = ''): void {
+    static::assertNotInternalType('scalar', $actual, $message);
+  }
+
+  /**
+   * Forward compatibility for assertIsNotCallable.
+   */
+  public static function assertIsNotCallable($actual, string $message = ''): void {
+    static::assertNotInternalType('callable', $actual, $message);
+  }
+
+  /**
+   * Forward compatibility for assertIsNotIterable.
+   */
+  public static function assertIsNotIterable($actual, string $message = ''): void {
+    static::assertFalse(\is_iterable($actual), $message);
+  }
+
 }
diff --git a/core/tests/Drupal/TestTools/PhpUnitCompatibility/PhpUnit7/TestCompatibilityTrait.php b/core/tests/Drupal/TestTools/PhpUnitCompatibility/PhpUnit7/TestCompatibilityTrait.php
index 1cec9c30ee..cab99335b0 100644
--- a/core/tests/Drupal/TestTools/PhpUnitCompatibility/PhpUnit7/TestCompatibilityTrait.php
+++ b/core/tests/Drupal/TestTools/PhpUnitCompatibility/PhpUnit7/TestCompatibilityTrait.php
@@ -81,4 +81,158 @@ public static function assertNotEqualsCanonicalizing($expected, $actual, string
     static::assertNotEquals($expected, $actual, $message, 0.0, 10, TRUE);
   }
 
+  /**
+   * Forward compatibility for assertIsArray.
+   */
+  public static function assertIsArray($actual, string $message = ''): void {
+    static::assertInternalType('array', $actual, $message);
+  }
+
+  /**
+   * Forward compatibility for assertIsBool.
+   */
+  public static function assertIsBool($actual, string $message = ''): void {
+    static::assertInternalType('bool', $actual, $message);
+  }
+
+  /**
+   * Forward compatibility for assertIsFloat.
+   */
+  public static function assertIsFloat($actual, string $message = ''): void {
+    static::assertInternalType('float', $actual, $message);
+  }
+
+  /**
+   * Forward compatibility for assertIsObject.
+   */
+  public static function assertIsInt($actual, string $message = ''): void {
+    static::assertInternalType('int', $actual, $message);
+  }
+
+  /**
+   * Forward compatibility for assertIsNumeric.
+   */
+  public static function assertIsNumeric($actual, string $message = ''): void {
+    static::assertInternalType('numeric', $actual, $message);
+  }
+
+  /**
+   * Forward compatibility for assertIsObject.
+   */
+  public static function assertIsObject($actual, string $message = ''): void {
+    static::assertInternalType('object', $actual, $message);
+  }
+
+  /**
+   * Forward compatibility for assertIsResource.
+   */
+  public static function assertIsResource($actual, string $message = ''): void {
+    static::assertInternalType('resource', $actual, $message);
+  }
+
+  /**
+   * Forward compatibility for assertIsString.
+   */
+  public static function assertIsString($actual, string $message = ''): void {
+    static::assertInternalType('string', $actual, $message);
+  }
+
+  /**
+   * Forward compatibility for assertIsScalar.
+   */
+  public static function assertIsScalar($actual, string $message = ''): void {
+    static::assertInternalType('scalar', $actual, $message);
+  }
+
+  /**
+   * Forward compatibility for assertIsCallable.
+   */
+  public static function assertIsCallable($actual, string $message = ''): void {
+    static::assertInternalType('callable', $actual, $message);
+  }
+
+  /**
+   * Forward compatibility for assertIsIterable.
+   */
+  public static function assertIsIterable($actual, string $message = ''): void {
+    static::assertTrue(\is_iterable($actual), $message);
+  }
+
+  /**
+   * Forward compatibility for assertIsNotArray.
+   */
+  public static function assertIsNotArray($actual, string $message = ''): void {
+    static::assertNotInternalType('array', $actual, $message);
+  }
+
+  /**
+   * Forward compatibility for assertIsNotBool.
+   */
+  public static function assertIsNotBool($actual, string $message = ''): void {
+    static::assertNotInternalType('bool', $actual, $message);
+  }
+
+  /**
+   * Forward compatibility for assertIsNotFloat.
+   */
+  public static function assertIsNotFloat($actual, string $message = ''): void {
+    static::assertNotInternalType('float', $actual, $message);
+  }
+
+  /**
+   * Forward compatibility for assertIsNotObject.
+   */
+  public static function assertIsNotInt($actual, string $message = ''): void {
+    static::assertNotInternalType('int', $actual, $message);
+  }
+
+  /**
+   * Forward compatibility for assertIsNotNumeric.
+   */
+  public static function assertIsNotNumeric($actual, string $message = ''): void {
+    static::assertNotInternalType('numeric', $actual, $message);
+  }
+
+  /**
+   * Forward compatibility for assertIsNotObject.
+   */
+  public static function assertIsNotObject($actual, string $message = ''): void {
+    static::assertNotInternalType('object', $actual, $message);
+  }
+
+  /**
+   * Forward compatibility for assertIsNotResource.
+   */
+  public static function assertIsNotResource($actual, string $message = ''): void {
+    static::assertNotInternalType('resource', $actual, $message);
+  }
+
+  /**
+   * Forward compatibility for assertIsNotString.
+   */
+  public static function assertIsNotString($actual, string $message = ''): void {
+    static::assertNotInternalType('string', $actual, $message);
+  }
+
+  /**
+   * Forward compatibility for assertIsNotScalar.
+   */
+  public static function assertIsNotScalar($actual, string $message = ''): void {
+    static::assertNotInternalType('scalar', $actual, $message);
+  }
+
+  /**
+   * Forward compatibility for assertIsNotCallable.
+   */
+  public static function assertIsNotCallable($actual, string $message = ''): void {
+    static::assertNotInternalType('callable', $actual, $message);
+  }
+
+  /**
+   * Forward compatibility for assertIsNotIterable.
+   */
+  public static function assertIsNotIterable($actual, string $message = ''): void {
+    static::assertFalse(\is_iterable($actual), $message);
+  }
+
 }
diff --git a/core/tests/Drupal/Tests/PhpunitCompatibilityTraitTest.php b/core/tests/Drupal/Tests/PhpunitCompatibilityTraitTest.php
index 54e8f0431c..ffad0e7777 100644
--- a/core/tests/Drupal/Tests/PhpunitCompatibilityTraitTest.php
+++ b/core/tests/Drupal/Tests/PhpunitCompatibilityTraitTest.php
@@ -61,6 +61,57 @@ public function testAssertEqualsCanonicalizing() {
     $this->assertNotEqualsCanonicalizing([3, 2, 1], [2, 3, 0, 1]);
   }
 
+  /**
+   * Tests that assertIs(Not)* methods are available.
+   *
+   * @covers ::assertIsArray
+   * @covers ::assertIsBool
+   * @covers ::assertIsFloat
+   * @covers ::assertIsInt
+   * @covers ::assertIsNumeric
+   * @covers ::assertIsObject
+   * @covers ::assertIsResource
+   * @covers ::assertIsString
+   * @covers ::assertIsScalar
+   * @covers ::assertIsCallable
+   * @covers ::assertIsIterable
+   * @covers ::assertIsNotArray
+   * @covers ::assertIsNotBool
+   * @covers ::assertIsNotFloat
+   * @covers ::assertIsNotInt
+   * @covers ::assertIsNotNumeric
+   * @covers ::assertIsNotObject
+   * @covers ::assertIsNotResource
+   * @covers ::assertIsNotString
+   * @covers ::assertIsNotScalar
+   * @covers ::assertIsNotCallable
+   * @covers ::assertIsNotIterable
+   */
+  public function testAssertIs() {
+    $this->assertIsArray([]);
+    $this->assertIsBool(TRUE);
+    $this->assertIsFloat(1.0);
+    $this->assertIsInt(1);
+    $this->assertIsNumeric(1);
+    $this->assertIsObject(new class() {});
+    $this->assertIsResource(fopen(__FILE__, 'rb'));
+    $this->assertIsString('');
+    $this->assertIsScalar(1);
+    $this->assertIsCallable(function () {});
+    $this->assertIsIterable([]);
+    $this->assertIsNotArray(1);
+    $this->assertIsNotBool([]);
+    $this->assertIsNotFloat(1);
+    $this->assertIsNotInt(1.0);
+    $this->assertIsNotNumeric('');
+    $this->assertIsNotObject('');
+    $this->assertIsNotResource('');
+    $this->assertIsNotString(1);
+    $this->assertIsNotScalar([]);
+    $this->assertIsNotCallable(1);
+    $this->assertIsNotIterable(1);
+  }
+
 }
 
 interface MockTestClassInterface {
