diff --git a/core/modules/block/src/Tests/BlockMultipleInstanceTest.php b/core/modules/block/src/Tests/BlockMultipleInstanceTest.php
new file mode 100644
index 0000000..b2a70c1
--- /dev/null
+++ b/core/modules/block/src/Tests/BlockMultipleInstanceTest.php
@@ -0,0 +1,83 @@
+<?php
+
+/**
+ * @file
+ * Contains \Drupal\block\Tests\BlockMultipleInstanceTest.
+ */
+
+namespace Drupal\block\Tests;
+
+/**
+ * Tests placing multiple instances of various blocks.
+ *
+ * @group block
+ */
+class BlockMultipleInstanceTest extends BlockTestBase {
+
+  /**
+   * Tests placing the same block plugin twice.
+   */
+  public function testPlaceBlockTwice() {
+    $plugin_id = 'system_powered_by_block';
+    $block1 = $this->drupalPlaceBlock($plugin_id);
+    $block2 = $this->drupalPlaceBlock($plugin_id);
+
+    $this->drupalGet('<front>');
+    $this->assertBlockAppears($block1);
+    $this->assertBlockAppears($block2);
+  }
+
+  /**
+   * Tests placing the same block twice with different settings.
+   */
+  public function testPlaceBlockTwiceVarious() {
+    \Drupal::service('module_installer')->install(['views']);
+
+    // Create 4 additional users so we end up with 5 users including the admin
+    // user created in \Drupal\block\Tests\BlockTestBase::setUp().
+    for ($i = 1; $i <= 4; $i++) {
+      $user = $this->drupalCreateUser();
+      // Update access time so that the users display in the "Who's New" block.
+      $this->updateAccess($user->id());
+    }
+
+    // Place two different "Who's New" blocks. One is configured to show 2
+    // users, the second is configured to show 10 users.
+    $plugin_id = 'views_block:who_s_new-block_1';
+    $block1 = $this->drupalPlaceBlock($plugin_id, array('items_per_page' => 2));
+    $block2 = $this->drupalPlaceBlock($plugin_id, array('items_per_page' => 10));
+
+    // Verify that the differently configured blocks display a different amount
+    // of users.
+    $this->drupalGet('<front>');
+    $result = $this->xpath('//div[@id = :id]//li[contains(@class, views-row)]//span[contains(@class, field-content)]//span', array(':id' => 'block-' . $block1->id()));
+    $this->assertEqual(count($result), 2, '2 users found in the first "Who\'s New" block.');
+
+    $result = $this->xpath('//div[@id = :id]//li[contains(@class, views-row)]//span[contains(@class, field-content)]//span', array(':id' => 'block-' . $block2->id()));
+    $this->assertEqual(count($result), 5, '5 users found in the second "Who\'s New" block.');
+  }
+
+  /**
+   * Tests placing the same menu block twice.
+   */
+  public function testPlaceMenuBlockTwice() {
+    $plugin_id = 'system_menu_block:account';
+    $block1 = $this->drupalPlaceBlock($plugin_id);
+    $block2 = $this->drupalPlaceBlock($plugin_id);
+
+    $this->drupalGet('<front>');
+    $this->assertBlockAppears($block1);
+    $this->assertBlockAppears($block2);
+  }
+
+  /**
+   * Updates the access column for a user.
+   */
+  private function updateAccess($uid, $access = REQUEST_TIME) {
+    db_update('users_field_data')
+      ->condition('uid', $uid)
+      ->fields(array('access' => $access))
+      ->execute();
+  }
+
+}
diff --git a/core/modules/block_content/src/Tests/BlockContentInstanceTest.php b/core/modules/block_content/src/Tests/BlockContentInstanceTest.php
new file mode 100644
index 0000000..882c7e4
--- /dev/null
+++ b/core/modules/block_content/src/Tests/BlockContentInstanceTest.php
@@ -0,0 +1,41 @@
+<?php
+
+/**
+ * @file
+ * Contains \Drupal\block_content\Tests\BlockContentInstanceTest.
+ */
+
+namespace Drupal\block_content\Tests;
+
+/**
+ * Tests placing multiple instances of a custom block.
+ *
+ * @group block_content
+ */
+class BlockContentInstanceTest extends BlockContentTestBase {
+
+  /**
+   * Tests creating two instances of the same custom block.
+   */
+  public function testPlaceBlockTwice() {
+    $block_content = $this->createBlockContent();
+    $block_content->body = $this->randomMachineName();
+    $block_content->save();
+
+    $block1 = $this->drupalPlaceBlock('block_content:' . $block_content->uuid());
+    $block2 = $this->drupalPlaceBlock('block_content:' . $block_content->uuid());
+
+    $this->drupalGet('<front>');
+    $this->assertBlockAppears($block1);
+    $this->assertBlockAppears($block2);
+
+    // Make sure the same custom block entity is displayed in both blocks by
+    // checking the body field.
+    $block_body = $block_content->get('body')->value;
+    $block1_contents = $this->xpath('//div[@id = :id]//div[contains(@class, field-item)]/p', array(':id' => 'block-' . $block1->id()));
+    $block2_contents = $this->xpath('//div[@id = :id]//div[contains(@class, field-item)]/p', array(':id' => 'block-' . $block2->id()));
+    $this->assertEqual((string) $block1_contents[0], $block_body, 'Block 1 contains the custom block body.');
+    $this->assertEqual((string) $block2_contents[0], $block_body, 'Block 2 contains the custom block body.');
+  }
+
+}
diff --git a/core/modules/simpletest/src/WebTestBase.php b/core/modules/simpletest/src/WebTestBase.php
index 401a35e..47cb872 100644
--- a/core/modules/simpletest/src/WebTestBase.php
+++ b/core/modules/simpletest/src/WebTestBase.php
@@ -445,7 +445,7 @@ protected function assertNoBlockAppears(Block $block) {
    *   The result from the xpath query.
    */
   protected function findBlockInstance(Block $block) {
-    return $this->xpath('//div[@id = :id]', array(':id' => 'block-' . $block->id()));
+    return $this->xpath('//*[@id = :id]', array(':id' => 'block-' . $block->id()));
   }
 
   /**
