diff --git a/core/modules/simpletest/lib/Drupal/simpletest/WebTestBase.php b/core/modules/simpletest/lib/Drupal/simpletest/WebTestBase.php
index 24bf1f2..61469f2 100644
--- a/core/modules/simpletest/lib/Drupal/simpletest/WebTestBase.php
+++ b/core/modules/simpletest/lib/Drupal/simpletest/WebTestBase.php
@@ -684,6 +684,7 @@ protected function setUp() {
     // Execute the non-interactive installer.
     require_once DRUPAL_ROOT . '/core/includes/install.core.inc';
     install_drupal($settings);
+    $this->rebuildContainer();
 
     // Restore the original Simpletest batch.
     $batch = &batch_get();
@@ -717,22 +718,7 @@ protected function setUp() {
       $success = module_enable($modules, TRUE);
       $this->assertTrue($success, t('Enabled modules: %modules', array('%modules' => implode(', ', $modules))));
     }
-
-    // Create a new DrupalKernel for testing purposes, now that all required
-    // modules have been enabled. This also stores a new dependency injection
-    // container in drupal_container(). Drupal\simpletest\TestBase::tearDown()
-    // restores the original container.
-    // @see Drupal\Core\DrupalKernel::initializeContainer()
-    $this->kernel = new DrupalKernel('testing', FALSE);
-    // Booting the kernel is necessary to initialize the new DIC. While
-    // normally the kernel gets booted on demand in
-    // Symfony\Component\HttpKernel\handle(), this kernel needs manual booting
-    // as it is not used to handle a request.
-    $this->kernel->boot();
-    // The DrupalKernel does not update the container in drupal_container(), but
-    // replaces it with a new object. We therefore need to replace the minimal
-    // boostrap container that has been set up by TestBase::prepareEnvironment().
-    $this->container = drupal_container();
+    $this->rebuildContainer();
 
     // Reset/rebuild all data structures after enabling the modules.
     $this->resetAll();
@@ -779,6 +765,35 @@ protected function refreshVariables() {
   }
 
   /**
+   * Rebuild drupal_container().
+   *
+   * @todo Fix http://drupal.org/node/1708692 so that module enable/disable
+   *   changes are immediately reflected in drupal_container(). Until then,
+   *   tests can invoke this workaround when requiring services from newly
+   *   enabled modules to be immediately available in the same request.
+   */
+  protected function rebuildContainer() {
+    // DrupalKernel expects to merge a fresh bootstrap container, not remerge
+    // what is left over from a prior container build.
+    drupal_container(NULL, TRUE);
+    // Create a new DrupalKernel for testing purposes, now that all required
+    // modules have been enabled. This also stores a new dependency injection
+    // container in drupal_container(). Drupal\simpletest\TestBase::tearDown()
+    // restores the original container.
+    // @see Drupal\Core\DrupalKernel::initializeContainer()
+    $this->kernel = new DrupalKernel('testing', FALSE);
+    // Booting the kernel is necessary to initialize the new DIC. While
+    // normally the kernel gets booted on demand in
+    // Symfony\Component\HttpKernel\handle(), this kernel needs manual booting
+    // as it is not used to handle a request.
+    $this->kernel->boot();
+    // The DrupalKernel does not update the container in drupal_container(), but
+    // replaces it with a new object. We therefore need to replace the minimal
+    // boostrap container that has been set up by TestBase::prepareEnvironment().
+    $this->container = drupal_container();
+  }
+
+  /**
    * Delete created files and temporary files directory, delete the tables created by setUp(),
    * and reset the database prefix.
    */
diff --git a/core/modules/views/lib/Drupal/views/ViewsBundle.php b/core/modules/views/lib/Drupal/views/ViewsBundle.php
new file mode 100644
index 0000000..3229240
--- /dev/null
+++ b/core/modules/views/lib/Drupal/views/ViewsBundle.php
@@ -0,0 +1,27 @@
+<?php
+
+/**
+ * @file
+ * Definition of Drupal\views\ViewsBundle.
+ */
+
+namespace Drupal\views;
+
+use Symfony\Component\DependencyInjection\ContainerBuilder;
+use Symfony\Component\HttpKernel\Bundle\Bundle;
+
+/**
+ * Views dependency injection container.
+ */
+class ViewsBundle extends Bundle {
+
+  /**
+   * Overrides Symfony\Component\HttpKernel\Bundle\Bundle::build().
+   */
+  public function build(ContainerBuilder $container) {
+    // It's pointless to make the bundle itself into a service. Just using this
+    // as a test.
+    $container->register("views.bundle", 'Drupal\views\ViewsBundle');
+  }
+
+}
diff --git a/core/modules/views/views.info b/core/modules/views/views.info
new file mode 100644
index 0000000..edd7390
--- /dev/null
+++ b/core/modules/views/views.info
@@ -0,0 +1,5 @@
+name = Views
+description = Create customized lists and queries from your database.
+package = Core
+version = VERSION
+core = 8.x
diff --git a/core/modules/views/views.module b/core/modules/views/views.module
new file mode 100644
index 0000000..71aa845
--- /dev/null
+++ b/core/modules/views/views.module
@@ -0,0 +1,7 @@
+<?php
+
+function views_theme() {
+  drupal_container()->get('views.bundle');
+  return array();
+}
+
diff --git a/core/profiles/standard/standard.info b/core/profiles/standard/standard.info
index 8b8a33b..551a159 100644
--- a/core/profiles/standard/standard.info
+++ b/core/profiles/standard/standard.info
@@ -22,3 +22,4 @@ dependencies[] = overlay
 dependencies[] = field_ui
 dependencies[] = file
 dependencies[] = rdf
+dependencies[] = views
