diff --git a/core/modules/simpletest/css/simpletest.module.css b/core/modules/simpletest/css/simpletest.module.css
index 611cc4a..0a1b776 100644
--- a/core/modules/simpletest/css/simpletest.module.css
+++ b/core/modules/simpletest/css/simpletest.module.css
@@ -39,6 +39,10 @@ div.message > div.item-list {
   font-weight: normal;
 }
 
+details > summary div[class*="simpletest-"] {
+  display: inline-block;
+  margin: 0 .6em;
+}
 div.simpletest-pass {
   color: #33a333;
 }
diff --git a/core/modules/simpletest/lib/Drupal/simpletest/Form/SimpletestResultsForm.php b/core/modules/simpletest/lib/Drupal/simpletest/Form/SimpletestResultsForm.php
index 8b74dc5..2be957d 100644
--- a/core/modules/simpletest/lib/Drupal/simpletest/Form/SimpletestResultsForm.php
+++ b/core/modules/simpletest/lib/Drupal/simpletest/Form/SimpletestResultsForm.php
@@ -115,17 +115,16 @@ public function buildForm(array $form, array &$form_state, $test_id = NULL) {
     );
 
     // Summary result widget.
-    $form['result'] = array(
-      '#type' => 'fieldset',
-      '#title' => $this->t('Results'),
-    );
-    $form['result']['summary'] = $summary = array(
+    $summary = array(
       '#theme' => 'simpletest_result_summary',
       '#pass' => 0,
       '#fail' => 0,
       '#exception' => 0,
       '#debug' => 0,
     );
+    $form['summary'] = $summary + array(
+      '#weight' => -110,
+    );
 
     simpletest_classloader_register();
 
@@ -148,8 +147,7 @@ public function buildForm(array $form, array &$form_state, $test_id = NULL) {
         '#open' => TRUE,
         '#description' => $info['description'],
       );
-      $form['result']['results'][$group]['summary'] = $summary;
-      $group_summary =& $form['result']['results'][$group]['summary'];
+      $group_summary = $summary;
 
       // Create table of assertions for the group.
       $rows = array();
@@ -169,7 +167,7 @@ public function buildForm(array $form, array &$form_state, $test_id = NULL) {
         $rows[] = array('data' => $row, 'class' => array($class));
 
         $group_summary['#' . $assertion->status]++;
-        $form['result']['summary']['#' . $assertion->status]++;
+        $form['summary']['#' . $assertion->status]++;
       }
       $form['result']['results'][$group]['table'] = array(
         '#theme' => 'table',
@@ -179,6 +177,8 @@ public function buildForm(array $form, array &$form_state, $test_id = NULL) {
 
       // Set summary information.
       $group_summary['#ok'] = $group_summary['#fail'] + $group_summary['#exception'] == 0;
+
+      $form['result']['results'][$group]['#title'] .= drupal_render($group_summary);
       $form['result']['results'][$group]['#open'] = !$group_summary['#ok'];
 
       // Store test group (class) as for use in filter.
@@ -186,18 +186,17 @@ public function buildForm(array $form, array &$form_state, $test_id = NULL) {
     }
 
     // Overall summary status.
-    $form['result']['summary']['#ok'] = $form['result']['summary']['#fail'] + $form['result']['summary']['#exception'] == 0;
+    $form['summary']['#ok'] = $form['summary']['#fail'] + $form['summary']['#exception'] == 0;
 
     // Actions.
     $form['#action'] = url('admin/config/development/testing/results/re-run');
-    $form['action'] = array(
-      '#type' => 'fieldset',
-      '#title' => $this->t('Actions'),
+    $form['actions'] = array(
+      '#type' => 'actions',
       '#attributes' => array('class' => array('container-inline')),
-      '#weight' => -11,
+      '#weight' => -100,
     );
 
-    $form['action']['filter'] = array(
+    $form['actions']['filter'] = array(
       '#type' => 'select',
       '#title' => 'Filter',
       '#options' => array(
@@ -206,28 +205,34 @@ public function buildForm(array $form, array &$form_state, $test_id = NULL) {
         'fail' => $this->t('Fail (@count)', array('@count' => count($filter['fail']))),
       ),
     );
-    $form['action']['filter']['#default_value'] = ($filter['fail'] ? 'fail' : 'all');
+    $form['actions']['filter']['#default_value'] = ($filter['fail'] ? 'fail' : 'all');
 
     // Categorized test classes for to be used with selected filter value.
-    $form['action']['filter_pass'] = array(
+    $form['actions']['filter_pass'] = array(
       '#type' => 'hidden',
       '#default_value' => implode(',', $filter['pass']),
     );
-    $form['action']['filter_fail'] = array(
+    $form['actions']['filter_fail'] = array(
       '#type' => 'hidden',
       '#default_value' => implode(',', $filter['fail']),
     );
 
-    $form['action']['op'] = array(
+    $form['actions']['run'] = array(
       '#type' => 'submit',
       '#value' => $this->t('Run tests'),
     );
-
-    $form['action']['return'] = array(
+    $form['actions']['return'] = array(
       '#type' => 'link',
       '#title' => $this->t('Return to list'),
       '#href' => 'admin/config/development/testing',
+      '#attributes' => array('class' => array('button')),
     );
+    if ($filter['fail']) {
+      $form['actions']['run']['#button_type'] = 'primary';
+    }
+    else {
+      $form['actions']['return']['#attributes']['class'][] = 'button--primary';
+    }
 
     if (is_numeric($test_id)) {
       simpletest_clean_results_table($test_id);
diff --git a/core/modules/simpletest/lib/Drupal/simpletest/Tests/SimpleTestTest.php b/core/modules/simpletest/lib/Drupal/simpletest/Tests/SimpleTestTest.php
index 488b9a7..e5ac1f7 100644
--- a/core/modules/simpletest/lib/Drupal/simpletest/Tests/SimpleTestTest.php
+++ b/core/modules/simpletest/lib/Drupal/simpletest/Tests/SimpleTestTest.php
@@ -233,7 +233,7 @@ function confirmStubTestResults() {
 
     $this->assertAssertion("Debug: 'Foo'", 'Debug', 'Fail', 'SimpleTestTest.php', 'Drupal\simpletest\Tests\SimpleTestTest->stubTest()');
 
-    $this->assertEqual('6 passes, 5 fails, 2 exceptions, 1 debug message', $this->childTestResults['summary'], 'Stub test summary is correct');
+    $this->assertEqual('6 passes, 5 fails, 2 exceptions, 1 debug message', $this->childTestResults['summary']);
 
     $this->test_ids[] = $test_id = $this->getTestIdFromResults();
     $this->assertTrue($test_id, 'Found test ID in results.');
@@ -286,8 +286,8 @@ function getTestResults() {
     if ($this->parse()) {
       if ($details = $this->getResultFieldSet()) {
         // Code assumes this is the only test in group.
-        $results['summary'] = $this->asText($details->div->div[1]);
-        $results['name'] = $this->asText($details->summary);
+        $results['summary'] = trim((string) $details->summary->div);
+        $results['name'] = trim((string) $details->summary);
 
         $results['assertions'] = array();
         $tbody = $details->div->table->tbody;
@@ -314,7 +314,7 @@ function getResultFieldSet() {
     $all_details = $this->xpath('//details');
     $info = $this->getInfo();
     foreach ($all_details as $details) {
-      if ($this->asText($details->summary) == $info['name']) {
+      if ($info['name'] == trim((string) $details->summary)) {
         return $details;
       }
     }
