diff --git a/core/modules/simpletest/lib/Drupal/simpletest/Form/SimpletestResultsForm.php b/core/modules/simpletest/lib/Drupal/simpletest/Form/SimpletestResultsForm.php
index 35be854..d11ca58 100644
--- a/core/modules/simpletest/lib/Drupal/simpletest/Form/SimpletestResultsForm.php
+++ b/core/modules/simpletest/lib/Drupal/simpletest/Form/SimpletestResultsForm.php
@@ -111,7 +111,6 @@ public function buildForm(array $form, array &$form_state, $test_id = NULL) {
       '#title' => t('Results'),
     );
     $form['result']['summary'] = $summary = array(
-      '#theme' => 'simpletest_result_summary',
       '#pass' => 0,
       '#fail' => 0,
       '#exception' => 0,
@@ -162,7 +161,7 @@ public function buildForm(array $form, array &$form_state, $test_id = NULL) {
         $form['result']['summary']['#' . $assertion->status]++;
       }
       $form['result']['results'][$group]['table'] = array(
-        '#theme' => 'table',
+        '#type' => 'table',
         '#header' => $header,
         '#rows' => $rows,
       );
@@ -173,11 +172,25 @@ public function buildForm(array $form, array &$form_state, $test_id = NULL) {
 
       // Store test group (class) as for use in filter.
       $filter[$group_summary['#ok'] ? 'pass' : 'fail'][] = $group;
+
+      // Render summary information.
+      $group_summary += array(
+        '#prefix' => '<div class="simpletest-' . ($group_summary['#ok'] ? 'pass' : 'fail') . '">',
+        '#markup' => _simpletest_format_summary_line($group_summary),
+        '#suffix' => '</div>',
+      );
     }
 
     // Overal summary status.
     $form['result']['summary']['#ok'] = $form['result']['summary']['#fail'] + $form['result']['summary']['#exception'] == 0;
 
+    // Render overall summary.
+    $form['result']['summary'] += array(
+      '#prefix' => '<div class="simpletest-' . ($form['result']['summary']['#ok'] ? 'pass' : 'fail') . '">',
+      '#markup' => _simpletest_format_summary_line($form['result']['summary']),
+      '#suffix' => '</div>',
+    );
+
     // Actions.
     $form['#action'] = url('admin/config/development/testing/results/re-run');
     $form['action'] = array(
diff --git a/core/modules/simpletest/simpletest.css b/core/modules/simpletest/simpletest.css
index 86bd04b..0337e62 100644
--- a/core/modules/simpletest/simpletest.css
+++ b/core/modules/simpletest/simpletest.css
@@ -30,8 +30,12 @@ th.simpletest_test {
   background-color: #edf5fa;
   color: #494949;
 }
+.simpletest-test-select .form-item {
+  margin-bottom: 0;
+  margin-top: 0;
+}
 
-table#simpletest-form-table tr.simpletest-group label {
+#simpletest-form-table tr.simpletest-group label {
   display: inline;
 }
 
diff --git a/core/modules/simpletest/simpletest.module b/core/modules/simpletest/simpletest.module
index 97caa11..e1d3df2 100644
--- a/core/modules/simpletest/simpletest.module
+++ b/core/modules/simpletest/simpletest.module
@@ -80,10 +80,7 @@ function simpletest_theme() {
     'simpletest_test_table' => array(
       'render element' => 'table',
       'file' => 'simpletest.pages.inc',
-    ),
-    'simpletest_result_summary' => array(
-      'render element' => 'form',
-      'file' => 'simpletest.pages.inc',
+      'template' => 'simpletest-test-table',
     ),
   );
 }
diff --git a/core/modules/simpletest/simpletest.pages.inc b/core/modules/simpletest/simpletest.pages.inc
index 99f242b..102f992 100644
--- a/core/modules/simpletest/simpletest.pages.inc
+++ b/core/modules/simpletest/simpletest.pages.inc
@@ -58,15 +58,15 @@ function simpletest_test_form($form, &$form_state) {
 }
 
 /**
- * Returns HTML for a test list generated by simpletest_test_form() into a table.
+ * Prepares variables for test list table templates.
  *
- * @param $variables
+ * Default template: simpletest-test-table.html.twig.
+ *
+ * @param array $variables
  *   An associative array containing:
  *   - table: A render element representing the table.
- *
- * @ingroup themeable
  */
-function theme_simpletest_test_table($variables) {
+function template_preprocess_simpletest_test_table(&$variables) {
   $table = $variables['table'];
 
   drupal_add_library('simpletest', 'drupal.simpletest');
@@ -141,7 +141,6 @@ function theme_simpletest_test_table($variables) {
       $description = $test['#description'];
 
       $test['#title_display'] = 'invisible';
-      unset($test['#description']);
 
       // Test name is used to determine what tests to run.
       $test['#name'] = $test_name;
@@ -169,10 +168,10 @@ function theme_simpletest_test_table($variables) {
   drupal_add_js(array('simpleTest' => $js), 'setting');
 
   if (empty($rows)) {
-    return '<strong>' . t('No tests to display.') . '</strong>';
+    $variables['table'] = '<strong>' . t('No tests to display.') . '</strong>';
   }
   else {
-    return theme('table', array('header' => $header, 'rows' => $rows, 'attributes' => array('id' => 'simpletest-form-table')));
+    $variables['table'] = theme('table', array('header' => $header, 'rows' => $rows, 'attributes' => array('id' => 'simpletest-form-table')));
   }
 }
 
@@ -202,17 +201,3 @@ function simpletest_test_form_submit($form, &$form_state) {
     drupal_set_message(t('No test(s) selected.'), 'error');
   }
 }
-
-/**
- * Returns HTML for the summary status of a simpletest result.
- *
- * @param $variables
- *   An associative array containing:
- *   - form: A render element representing the form.
- *
- * @ingroup themeable
- */
-function theme_simpletest_result_summary($variables) {
-  $form = $variables['form'];
-  return '<div class="simpletest-' . ($form['#ok'] ? 'pass' : 'fail') . '">' . _simpletest_format_summary_line($form) . '</div>';
-}
diff --git a/core/modules/simpletest/templates/simpletest-test-table.html.twig b/core/modules/simpletest/templates/simpletest-test-table.html.twig
new file mode 100644
index 0000000..7c920e6
--- /dev/null
+++ b/core/modules/simpletest/templates/simpletest-test-table.html.twig
@@ -0,0 +1,15 @@
+{#
+/**
+ * @file
+ * Default theme implementation for the content of simpletest test table.
+ *
+ * Available variables:
+ * - table: A simpletest table.
+ *
+ * @see template_preprocess()
+ * @see template_preprocess_simpletest_test_table()
+ *
+ * @ingroup themeable
+ */
+#}
+{{ table }}
