diff --git a/core/modules/config/src/Tests/ConfigImportRecreateTest.php b/core/modules/config/src/Tests/ConfigImportRecreateTest.php
index 4dcf90c..b4619a4 100644
--- a/core/modules/config/src/Tests/ConfigImportRecreateTest.php
+++ b/core/modules/config/src/Tests/ConfigImportRecreateTest.php
@@ -11,6 +11,7 @@
 use Drupal\Core\Config\ConfigImporter;
 use Drupal\Core\Config\StorageComparer;
 use Drupal\simpletest\DrupalUnitTestBase;
+use Drupal\node\Entity\NodeType;
 
 /**
  * Tests importing recreated configuration entities.
@@ -98,7 +99,7 @@ public function testRecreateEntity() {
 
     // Verify that there is nothing more to import.
     $this->assertFalse($this->configImporter->reset()->hasUnprocessedConfigurationChanges());
-    $content_type = entity_load('node_type', $type_name);
+    $content_type = NodeType::load($type_name);
     $this->assertEqual('Node type one', $content_type->label());
   }
 
diff --git a/core/modules/entity/src/Tests/EntityDisplayTest.php b/core/modules/entity/src/Tests/EntityDisplayTest.php
index 1efa671..321ffe6 100644
--- a/core/modules/entity/src/Tests/EntityDisplayTest.php
+++ b/core/modules/entity/src/Tests/EntityDisplayTest.php
@@ -8,6 +8,7 @@
 namespace Drupal\entity\Tests;
 
 use Drupal\simpletest\DrupalUnitTestBase;
+use Drupal\node\Entity\NodeType;
 
 /**
  * Tests the entity display configuration entities.
@@ -270,7 +271,7 @@ public function testRenameDeleteBundle() {
     entity_get_form_display('node', 'article', 'default')->save();
 
     // Rename the article bundle and assert the entity display is renamed.
-    $type = node_type_load('article');
+    $type = NodeType::load('article');
     $type->old_type = 'article';
     $type->type = 'article_rename';
     $type->save();
diff --git a/core/modules/file/src/Tests/FilePrivateTest.php b/core/modules/file/src/Tests/FilePrivateTest.php
index 5599667..608ade8 100644
--- a/core/modules/file/src/Tests/FilePrivateTest.php
+++ b/core/modules/file/src/Tests/FilePrivateTest.php
@@ -6,8 +6,10 @@
  */
 
 namespace Drupal\file\Tests;
+
 use Drupal\file\Entity\File;
 use Drupal\node\Entity\Node;
+use Drupal\node\Entity\NodeType;
 
 /**
  * Uploads a test to a private node and checks access.
@@ -25,7 +27,7 @@ class FilePrivateTest extends FileFieldTestBase {
 
   public function setUp() {
     parent::setUp();
-    node_access_test_add_field(entity_load('node_type', 'article'));
+    node_access_test_add_field(NodeType::load('article'));
     node_access_rebuild();
     \Drupal::state()->set('node_access_test.private', TRUE);
   }
diff --git a/core/modules/forum/forum.module b/core/modules/forum/forum.module
index d30c85b..4d86ebd 100644
--- a/core/modules/forum/forum.module
+++ b/core/modules/forum/forum.module
@@ -12,6 +12,7 @@
 use Drupal\Component\Utility\String;
 use Drupal\Core\Form\FormStateInterface;
 use Drupal\Core\Routing\RouteMatchInterface;
+use Drupal\node\Entity\NodeType;
 
 /**
  * Implements hook_help().
@@ -118,7 +119,7 @@ function forum_menu_local_tasks(&$data, $route_name) {
         $links[$type] = array(
           '#theme' => 'menu_local_action',
           '#link' => array(
-            'title' => t('Add new @node_type', array('@node_type' => entity_load('node_type', $type)->label())),
+            'title' => t('Add new @node_type', array('@node_type' => NodeType::load($type)->label())),
             'href' => 'node/add/' . $type,
           ),
         );
diff --git a/core/modules/forum/src/Tests/ForumNodeAccessTest.php b/core/modules/forum/src/Tests/ForumNodeAccessTest.php
index 30fbfcd..1a85a31 100644
--- a/core/modules/forum/src/Tests/ForumNodeAccessTest.php
+++ b/core/modules/forum/src/Tests/ForumNodeAccessTest.php
@@ -8,6 +8,7 @@
 namespace Drupal\forum\Tests;
 
 use Drupal\simpletest\WebTestBase;
+use Drupal\node\Entity\NodeType;
 
 /**
  * Tests forum block view for private node access.
@@ -26,7 +27,7 @@ class ForumNodeAccessTest extends WebTestBase {
   function setUp() {
     parent::setUp();
     node_access_rebuild();
-    node_access_test_add_field(entity_load('node_type', 'forum'));
+    node_access_test_add_field(NodeType::load('forum'));
     \Drupal::state()->set('node_access_test.private', TRUE);
   }
 
diff --git a/core/modules/migrate_drupal/src/Tests/d6/MigrateNodeTypeTest.php b/core/modules/migrate_drupal/src/Tests/d6/MigrateNodeTypeTest.php
index b497e87..3a89746 100644
--- a/core/modules/migrate_drupal/src/Tests/d6/MigrateNodeTypeTest.php
+++ b/core/modules/migrate_drupal/src/Tests/d6/MigrateNodeTypeTest.php
@@ -10,6 +10,7 @@
 use Drupal\field\Entity\FieldInstanceConfig;
 use Drupal\migrate\MigrateExecutable;
 use Drupal\migrate_drupal\Tests\MigrateDrupalTestBase;
+use Drupal\node\Entity\NodeType;
 
 /**
  * Upgrade node types to node.type.*.yml.
@@ -45,7 +46,7 @@ public function setUp() {
   public function testNodeType() {
     $migration = entity_load('migration', 'd6_node_type');
     // Test the test_page content type.
-    $node_type_page = entity_load('node_type', 'test_page');
+    $node_type_page = NodeType::load('test_page');
     $this->assertEqual($node_type_page->id(), 'test_page', 'Node type test_page loaded');
     $expected = array(
       'options' => array(
@@ -66,7 +67,7 @@ public function testNodeType() {
     $this->assertEqual($instance->getLabel(), 'This is the body field label', 'Body field was found.');
 
     // Test the test_story content type.
-    $node_type_story = entity_load('node_type', 'test_story');
+    $node_type_story = NodeType::load('test_story');
     $this->assertEqual($node_type_story->id(), 'test_story', 'Node type test_story loaded');
     $expected = array(
       'options' => array(
@@ -86,7 +87,7 @@ public function testNodeType() {
     $this->assertEqual($instance, NULL, 'No body field found');
 
     // Test the test_event content type.
-    $node_type_event = entity_load('node_type', 'test_event');
+    $node_type_event = NodeType::load('test_event');
     $this->assertEqual($node_type_event->id(), 'test_event', 'Node type test_event loaded');
     $expected = array(
       'options' => array(
diff --git a/core/modules/node/node.module b/core/modules/node/node.module
index fefd6d5..3249001 100644
--- a/core/modules/node/node.module
+++ b/core/modules/node/node.module
@@ -207,7 +207,7 @@ function node_entity_view_display_alter(EntityViewDisplayInterface $display, $co
  */
 function node_entity_form_display_alter(EntityFormDisplayInterface $form_display, $context) {
   if ($context['entity_type'] == 'node') {
-    $node_type = node_type_load($context['bundle']);
+    $node_type = NodeType::load($context['bundle']);
   }
 }
 
@@ -312,7 +312,7 @@ function node_type_get_names() {
  *   entity bundles.
  */
 function node_get_type_label(NodeInterface $node) {
-  $type = entity_load('node_type', $node->bundle());
+  $type = NodeType::load($node->bundle());
   return $type ? $type->label() : FALSE;
 }
 
diff --git a/core/modules/node/src/Entity/Node.php b/core/modules/node/src/Entity/Node.php
index fcfb8de..1a4c359 100644
--- a/core/modules/node/src/Entity/Node.php
+++ b/core/modules/node/src/Entity/Node.php
@@ -433,7 +433,7 @@ public static function baseFieldDefinitions(EntityTypeInterface $entity_type) {
    * {@inheritdoc}
    */
   public static function bundleFieldDefinitions(EntityTypeInterface $entity_type, $bundle, array $base_field_definitions) {
-    $node_type = node_type_load($bundle);
+    $node_type = NodeType::load($bundle);
     $fields = array();
 
     // When deleting a node type the corresponding node displays are deleted as
diff --git a/core/modules/node/src/NodeForm.php b/core/modules/node/src/NodeForm.php
index a2ec826..2d8bfe0 100644
--- a/core/modules/node/src/NodeForm.php
+++ b/core/modules/node/src/NodeForm.php
@@ -13,6 +13,7 @@
 use Drupal\Core\Form\FormStateInterface;
 use Drupal\Core\Language\LanguageInterface;
 use Drupal\Component\Utility\String;
+use Drupal\node\Entity\NodeType;
 
 /**
  * Form controller for the node edit forms.
@@ -33,7 +34,7 @@ protected function prepareEntity() {
     /** @var \Drupal\node\NodeInterface $node */
     $node = $this->entity;
     // Set up default values, if required.
-    $type = entity_load('node_type', $node->bundle());
+    $type = NodeType::load($node->bundle());
     $this->settings = $type->getModuleSettings('node');
 
     if (!$node->isNew()) {
diff --git a/core/modules/node/src/Plugin/views/argument/Type.php b/core/modules/node/src/Plugin/views/argument/Type.php
index 42a14a6..ad8aec2 100644
--- a/core/modules/node/src/Plugin/views/argument/Type.php
+++ b/core/modules/node/src/Plugin/views/argument/Type.php
@@ -9,6 +9,7 @@
 
 use Drupal\Component\Utility\String as UtilityString;
 use Drupal\views\Plugin\views\argument\String;
+use Drupal\node\Entity\NodeType;
 
 /**
  * Argument handler to accept a node type.
@@ -34,7 +35,7 @@ function title() {
   }
 
   function node_type($type_name) {
-    $type = entity_load('node_type', $type_name);
+    $type = NodeType::load($type_name);
     $output = $type ? $type->label() : t('Unknown content type');
     return UtilityString::checkPlain($output);
   }
diff --git a/core/modules/node/src/Plugin/views/field/Type.php b/core/modules/node/src/Plugin/views/field/Type.php
index 4824227..fbefec5 100644
--- a/core/modules/node/src/Plugin/views/field/Type.php
+++ b/core/modules/node/src/Plugin/views/field/Type.php
@@ -10,6 +10,7 @@
 use Drupal\Core\Form\FormStateInterface;
 use Drupal\node\Plugin\views\field\Node;
 use Drupal\views\ResultRow;
+use Drupal\node\Entity\NodeType;
 
 /**
  * Field handler to translate a node type into its readable form.
@@ -46,7 +47,7 @@ public function buildOptionsForm(&$form, FormStateInterface $form_state) {
    */
   function render_name($data, $values) {
     if ($this->options['machine_name'] != 1 && $data !== NULL && $data !== '') {
-      $type = entity_load('node_type', $data);
+      $type = NodeType::load($data);
       return $type ? t($this->sanitizeValue($type->label())) : '';
     }
     return $this->sanitizeValue($data);
diff --git a/core/modules/node/src/Tests/Config/NodeImportChangeTest.php b/core/modules/node/src/Tests/Config/NodeImportChangeTest.php
index addc0cb..b2e7448 100644
--- a/core/modules/node/src/Tests/Config/NodeImportChangeTest.php
+++ b/core/modules/node/src/Tests/Config/NodeImportChangeTest.php
@@ -8,6 +8,7 @@
 namespace Drupal\node\Tests\Config;
 
 use Drupal\simpletest\DrupalUnitTestBase;
+use Drupal\node\Entity\NodeType;
 
 /**
  * Change content types during config create method invocation.
@@ -56,7 +57,7 @@ public function testImportChange() {
     $this->configImporter()->import();
 
     // Check that the updated config was correctly imported.
-    $node_type = entity_load('node_type', $node_type_id);
+    $node_type = NodeType::load($node_type_id);
     $this->assertEqual($node_type->label(), $new_label, 'Node type name has been updated.');
   }
 
diff --git a/core/modules/node/src/Tests/Config/NodeImportCreateTest.php b/core/modules/node/src/Tests/Config/NodeImportCreateTest.php
index c0d5bc7..1ae7a93 100644
--- a/core/modules/node/src/Tests/Config/NodeImportCreateTest.php
+++ b/core/modules/node/src/Tests/Config/NodeImportCreateTest.php
@@ -9,6 +9,7 @@
 
 use Drupal\field\Entity\FieldInstanceConfig;
 use Drupal\simpletest\DrupalUnitTestBase;
+use Drupal\node\Entity\NodeType;
 
 /**
  * Create content types during config create method invocation.
@@ -42,12 +43,12 @@ public function testImportCreateDefault() {
     $node_type_id = 'default';
 
     // Check that the content type does not exist yet.
-    $this->assertFalse(entity_load('node_type', $node_type_id));
+    $this->assertFalse(NodeType::load($node_type_id));
 
     // Enable node_test_config module and check that the content type
     // shipped in the module's default config is created.
     $this->container->get('module_handler')->install(array('node_test_config'));
-    $node_type = entity_load('node_type', $node_type_id);
+    $node_type = NodeType::load($node_type_id);
     $this->assertTrue($node_type, 'The default content type was created.');
   }
 
@@ -71,7 +72,7 @@ public function testImportCreate() {
     $this->configImporter()->import();
 
     // Check that the content type was created.
-    $node_type = entity_load('node_type', $node_type_id);
+    $node_type = NodeType::load($node_type_id);
     $this->assertTrue($node_type, 'Import node type from staging was created.');
     $this->assertFalse(FieldInstanceConfig::loadByName('node', $node_type_id, 'body'));
   }
diff --git a/core/modules/node/src/Tests/NodeAccessBaseTableTest.php b/core/modules/node/src/Tests/NodeAccessBaseTableTest.php
index 5452a00..0afb330 100644
--- a/core/modules/node/src/Tests/NodeAccessBaseTableTest.php
+++ b/core/modules/node/src/Tests/NodeAccessBaseTableTest.php
@@ -7,6 +7,8 @@
 
 namespace Drupal\node\Tests;
 
+use Drupal\node\Entity\NodeType;
+
 /**
  * Tests behavior of the node access subsystem if the base table is not node.
  *
@@ -33,7 +35,7 @@ class NodeAccessBaseTableTest extends NodeTestBase {
   public function setUp() {
     parent::setUp();
 
-    node_access_test_add_field(entity_load('node_type', 'article'));
+    node_access_test_add_field(NodeType::load('article'));
 
     node_access_rebuild();
     \Drupal::state()->set('node_access_test.private', TRUE);
diff --git a/core/modules/node/src/Tests/NodeAccessLanguageAwareCombinationTest.php b/core/modules/node/src/Tests/NodeAccessLanguageAwareCombinationTest.php
index cd78a80..8004f12 100644
--- a/core/modules/node/src/Tests/NodeAccessLanguageAwareCombinationTest.php
+++ b/core/modules/node/src/Tests/NodeAccessLanguageAwareCombinationTest.php
@@ -8,6 +8,7 @@
 namespace Drupal\node\Tests;
 
 use Drupal\Core\Language\Language;
+use Drupal\node\Entity\NodeType;
 
 /**
  * Tests node access functionality with multiple languages and two node access
@@ -48,7 +49,7 @@ class NodeAccessLanguageAwareCombinationTest extends NodeTestBase {
   public function setUp() {
     parent::setUp();
 
-    node_access_test_add_field(entity_load('node_type', 'page'));
+    node_access_test_add_field(NodeType::load('page'));
 
     // Create the 'private' field, which allows the node to be marked as private
     // (restricted access) in a given translation.
diff --git a/core/modules/node/src/Tests/NodeAccessLanguageTest.php b/core/modules/node/src/Tests/NodeAccessLanguageTest.php
index 29ef472..ec54801 100644
--- a/core/modules/node/src/Tests/NodeAccessLanguageTest.php
+++ b/core/modules/node/src/Tests/NodeAccessLanguageTest.php
@@ -9,6 +9,7 @@
 
 use Drupal\Core\Language\Language;
 use Drupal\Core\Language\LanguageInterface;
+use Drupal\node\Entity\NodeType;
 
 /**
  * Tests node_access and db_select() with node_access tag functionality with
@@ -28,7 +29,7 @@ class NodeAccessLanguageTest extends NodeTestBase {
   function setUp() {
     parent::setUp();
 
-    node_access_test_add_field(entity_load('node_type', 'page'));
+    node_access_test_add_field(NodeType::load('page'));
 
     // After enabling a node access module, the access table has to be rebuild.
     node_access_rebuild();
diff --git a/core/modules/node/src/Tests/NodeCreationTest.php b/core/modules/node/src/Tests/NodeCreationTest.php
index 72a8ef2..2d5a067 100644
--- a/core/modules/node/src/Tests/NodeCreationTest.php
+++ b/core/modules/node/src/Tests/NodeCreationTest.php
@@ -9,6 +9,7 @@
 
 use Drupal\Core\Database\Database;
 use Drupal\Core\Language\LanguageInterface;
+use Drupal\node\Entity\NodeType;
 
 /**
  * Create a node and test saving it.
@@ -39,7 +40,7 @@ function setUp() {
    */
   function testNodeCreation() {
     // Test /node/add page with only one content type.
-    entity_load('node_type', 'article')->delete();
+    NodeType::load('article')->delete();
     $this->drupalGet('node/add');
     $this->assertResponse(200);
     $this->assertUrl('node/add/page');
@@ -62,7 +63,7 @@ function testNodeCreation() {
     $this->assertNoText($submitted_by);
 
     // Change the node type setting to show submitted by information.
-    $node_type = entity_load('node_type', 'page');
+    $node_type = NodeType::load('page');
     $node_type->settings['node']['submitted'] = TRUE;
     $node_type->save();
 
diff --git a/core/modules/node/src/Tests/NodeRevisionsUiTest.php b/core/modules/node/src/Tests/NodeRevisionsUiTest.php
index d0a2bc7..5633447 100644
--- a/core/modules/node/src/Tests/NodeRevisionsUiTest.php
+++ b/core/modules/node/src/Tests/NodeRevisionsUiTest.php
@@ -7,6 +7,8 @@
 
 namespace Drupal\node\Tests;
 
+use Drupal\node\Entity\NodeType;
+
 /**
  * Tests the UI for controlling node revision behavior.
  *
@@ -38,7 +40,7 @@ function testNodeFormSaveWithoutRevision() {
 
     // Set page revision setting 'create new revision'. This will mean new
     // revisions are created by default when the node is edited.
-    $type = entity_load('node_type', 'page');
+    $type = NodeType::load('page');
     $type->settings['node']['options']['revision'] = TRUE;
     $type->save();
 
diff --git a/core/modules/node/src/Tests/NodeTypePersistenceTest.php b/core/modules/node/src/Tests/NodeTypePersistenceTest.php
index 62c2783..7001583 100644
--- a/core/modules/node/src/Tests/NodeTypePersistenceTest.php
+++ b/core/modules/node/src/Tests/NodeTypePersistenceTest.php
@@ -7,6 +7,8 @@
 
 namespace Drupal\node\Tests;
 
+use Drupal\node\Entity\NodeType;
+
 /**
  * Ensures that node type customization survives module enabling and disabling.
  *
@@ -26,7 +28,7 @@ function testNodeTypeCustomizationPersistence() {
 
     // Enable forum and verify that the node type exists and is not disabled.
     $this->drupalPostForm('admin/modules', $forum_enable, t('Save configuration'));
-    $forum = entity_load('node_type', 'forum');
+    $forum = NodeType::load('forum');
     $this->assertTrue($forum->id(), 'Forum node type found.');
     $this->assertTrue($forum->isLocked(), 'Forum node type is locked');
 
@@ -47,7 +49,7 @@ function testNodeTypeCustomizationPersistence() {
     $edit = array('uninstall[forum]' => 'forum');
     $this->drupalPostForm('admin/modules/uninstall', $edit, t('Uninstall'));
     $this->drupalPostForm(NULL, array(), t('Uninstall'));
-    $forum = entity_load('node_type', 'forum');
+    $forum = NodeType::load('forum');
     $this->assertFalse($forum->isLocked(), 'Forum node type is not locked');
     $this->drupalGet('node/add');
     $this->assertNoText('forum', 'forum type is no longer found on node/add');
diff --git a/core/modules/node/src/Tests/NodeTypeRenameConfigImportTest.php b/core/modules/node/src/Tests/NodeTypeRenameConfigImportTest.php
index ca6e476..4081dbf 100644
--- a/core/modules/node/src/Tests/NodeTypeRenameConfigImportTest.php
+++ b/core/modules/node/src/Tests/NodeTypeRenameConfigImportTest.php
@@ -11,6 +11,7 @@
 use Drupal\Component\Utility\Unicode;
 use Drupal\Core\Config\Entity\ConfigEntityStorage;
 use Drupal\simpletest\WebTestBase;
+use Drupal\node\Entity\NodeType;
 
 /**
  * Tests importing renamed node type via configuration synchronisation.
@@ -111,8 +112,8 @@ public function testConfigurationRename() {
     $this->drupalPostForm('admin/config/development/configuration', array(), t('Import all'));
     $this->assertText(t('There are no configuration changes.'));
 
-    $this->assertFalse(entity_load('node_type', $active_type), 'The content no longer exists with the old name.');
-    $content_type = entity_load('node_type', $staged_type);
+    $this->assertFalse(NodeType::load($active_type), 'The content no longer exists with the old name.');
+    $content_type = NodeType::load($staged_type);
     $this->assertIdentical($staged_type, $content_type->type);
   }
 
diff --git a/core/modules/node/src/Tests/NodeTypeTest.php b/core/modules/node/src/Tests/NodeTypeTest.php
index 10bfbb9..5fc2b61 100644
--- a/core/modules/node/src/Tests/NodeTypeTest.php
+++ b/core/modules/node/src/Tests/NodeTypeTest.php
@@ -6,7 +6,9 @@
  */
 
 namespace Drupal\node\Tests;
+
 use Drupal\field\Entity\FieldInstanceConfig;
+use Drupal\node\Entity\NodeType;
 
 /**
  * Ensures that node type functions work correctly.
@@ -36,7 +38,7 @@ function testNodeTypeGetFunctions() {
 
     $this->assertEqual($node_types['article']->name, $node_names['article'], 'Correct node type base has been returned.');
 
-    $article = entity_load('node_type', 'article');
+    $article = NodeType::load('article');
     $this->assertEqual($node_types['article'], $article, 'Correct node type has been returned.');
     $this->assertEqual($node_types['article']->name, $article->label(), 'Correct node type name has been returned.');
   }
@@ -48,7 +50,7 @@ function testNodeTypeCreation() {
     // Create a content type programmaticaly.
     $type = $this->drupalCreateContentType();
 
-    $type_exists = (bool) entity_load('node_type', $type->type);
+    $type_exists = (bool) NodeType::load($type->type);
     $this->assertTrue($type_exists, 'The new content type has been created in the database.');
 
     // Login a test user.
@@ -67,7 +69,7 @@ function testNodeTypeCreation() {
       'type' => 'foo',
     );
     $this->drupalPostForm('admin/structure/types/add', $edit, t('Save and manage fields'));
-    $type_exists = (bool) entity_load('node_type', 'foo');
+    $type_exists = (bool) NodeType::load('foo');
     $this->assertTrue($type_exists, 'The new content type has been created in the database.');
   }
 
diff --git a/core/modules/quickedit/src/Tests/QuickEditLoadingTest.php b/core/modules/quickedit/src/Tests/QuickEditLoadingTest.php
index 1f39842..e3d8040 100644
--- a/core/modules/quickedit/src/Tests/QuickEditLoadingTest.php
+++ b/core/modules/quickedit/src/Tests/QuickEditLoadingTest.php
@@ -12,6 +12,7 @@
 use Drupal\quickedit\Ajax\MetadataCommand;
 use Drupal\Core\Ajax\AppendCommand;
 use Drupal\Component\Utility\Unicode;
+use Drupal\node\Entity\NodeType;
 
 /**
  * Tests loading of in-place editing functionality and lazy loading of its
@@ -241,7 +242,7 @@ public function testUserWithPermission() {
       // then again retrieve the field form, fill it, submit it (so it ends up
       // in TempStore) and then save the entity. Now there should be two
       // revisions.
-      $node_type = entity_load('node_type', 'article');
+      $node_type = NodeType::load('article');
       $node_type->settings['node']['options']['revision'] = TRUE;
       $node_type->save();
 
diff --git a/core/modules/rdf/src/Tests/StandardProfileTest.php b/core/modules/rdf/src/Tests/StandardProfileTest.php
index 52f241d..ba6402a 100644
--- a/core/modules/rdf/src/Tests/StandardProfileTest.php
+++ b/core/modules/rdf/src/Tests/StandardProfileTest.php
@@ -9,6 +9,7 @@
 
 use Drupal\node\NodeInterface;
 use Drupal\simpletest\WebTestBase;
+use Drupal\node\Entity\NodeType;
 
 /**
  * Tests the RDF mappings and RDFa markup of the standard profile.
@@ -272,7 +273,7 @@ protected function doPageRdfaTests() {
     // The standard profile hides the created date on pages. Revert display to
     // true for testing.
     // @todo Clean-up standard profile defaults.
-    $node_type = entity_load('node_type', 'page');
+    $node_type = NodeType::load('page');
     $node_type->settings['node']['submitted'] = TRUE;
     $node_type->save();
 
diff --git a/core/modules/simpletest/simpletest.module b/core/modules/simpletest/simpletest.module
index 1144e9d..b814dbf 100644
--- a/core/modules/simpletest/simpletest.module
+++ b/core/modules/simpletest/simpletest.module
@@ -140,7 +140,7 @@ function simpletest_run_tests($test_list) {
     ->execute();
 
   if (!empty($test_list['phpunit'])) {
-    $phpunit_results = simpletest_run_phpunit_tests($test_id, $phpunit_tests);
+    $phpunit_results = simpletest_run_phpunit_tests($test_id, $test_list['phpunit']);
     simpletest_process_phpunit_results($phpunit_results);
   }
 
diff --git a/core/modules/simpletest/src/WebTestBase.php b/core/modules/simpletest/src/WebTestBase.php
index 89ff9db..df6d0bb 100644
--- a/core/modules/simpletest/src/WebTestBase.php
+++ b/core/modules/simpletest/src/WebTestBase.php
@@ -24,6 +24,7 @@
 use Drupal\Core\Datetime\DrupalDateTime;
 use Drupal\block\Entity\Block;
 use Symfony\Component\HttpFoundation\Request;
+use Drupal\node\Entity\NodeType;
 
 /**
  * Test case for typical Drupal tests.
@@ -296,7 +297,7 @@ protected function drupalCreateContentType(array $values = array()) {
     if (!isset($values['type'])) {
       do {
         $id = strtolower($this->randomMachineName(8));
-      } while (node_type_load($id));
+      } while (NodeType::load($id));
     }
     else {
       $id = $values['type'];
diff --git a/core/modules/tracker/src/Tests/TrackerNodeAccessTest.php b/core/modules/tracker/src/Tests/TrackerNodeAccessTest.php
index 337e7e1..42048a1 100644
--- a/core/modules/tracker/src/Tests/TrackerNodeAccessTest.php
+++ b/core/modules/tracker/src/Tests/TrackerNodeAccessTest.php
@@ -9,6 +9,7 @@
 
 use Drupal\comment\Plugin\Field\FieldType\CommentItemInterface;
 use Drupal\simpletest\WebTestBase;
+use Drupal\node\Entity\NodeType;
 
 /**
  * Tests for private node access on /tracker.
@@ -28,7 +29,7 @@ public function setUp() {
     parent::setUp();
     node_access_rebuild();
     $this->drupalCreateContentType(array('type' => 'page'));
-    node_access_test_add_field(entity_load('node_type', 'page'));
+    node_access_test_add_field(NodeType::load('page'));
     $this->container->get('comment.manager')->addDefaultField('node', 'page', 'comment', CommentItemInterface::OPEN);
     \Drupal::state()->set('node_access_test.private', TRUE);
   }
