diff --git a/core/modules/migrate_drupal_ui/src/Form/IncrementalForm.php b/core/modules/migrate_drupal_ui/src/Form/IncrementalForm.php
index fa95882cef..c33bcf6b01 100644
--- a/core/modules/migrate_drupal_ui/src/Form/IncrementalForm.php
+++ b/core/modules/migrate_drupal_ui/src/Form/IncrementalForm.php
@@ -17,17 +17,17 @@
  * @internal
  */
 class IncrementalForm extends MigrateUpgradeFormBase {
-  
+
   /**
    * If a migration has previously run, perform an incremental migration.
    */
   const MIGRATE_UPGRADE_INCREMENTAL = 1;
-  
+
   /**
    * If a migration has previously run, roll it back and start fresh.
    */
   const MIGRATE_UPGRADE_ROLLBACK = 2;
-  
+
   /**
    * The state service.
    *
@@ -41,7 +41,7 @@ class IncrementalForm extends MigrateUpgradeFormBase {
    * @var \Drupal\Core\Datetime\DateFormatterInterface
    */
   protected $dateFormatter;
-  
+
   /**
    * The migration plugin manager service.
    *
@@ -152,11 +152,12 @@ public function validateForm(array &$form, FormStateInterface $form_state) {
   public function submitForm(array &$form, FormStateInterface $form_state) {
     switch ($form_state->getValue('upgrade_option')) {
       case static::MIGRATE_UPGRADE_ROLLBACK:
-        self::doRollback($form, $form_state);
+        self::doRollback();
+        $this->store->set('step', 'overview');
         $form_state->setRedirect('migrate_drupal_ui.upgrade');
         $this->state->delete('migrate_drupal_ui.performed');
         break;
-        
+
       default:
         $this->store->set('step', 'credential');
         $form_state->setRedirect('migrate_drupal_ui.upgrade_credential');
@@ -170,8 +171,13 @@ public function submitForm(array &$form, FormStateInterface $form_state) {
   public function getConfirmText() {
     return $this->t('Continue');
   }
-  
-  protected function doRollback(array &$form, FormStateInterface $form_state) {
+
+  /**
+   * Initiates the rollback batch operation.
+   *
+   * @throws \Drupal\Component\Plugin\Exception\PluginException
+   */
+  protected function doRollback() {
     $config['source_base_path'] = $this->store->get('source_base_path');
 
     /** @var \Drupal\migrate\Plugin\MigrationPluginManager $plugin_manager */
diff --git a/core/modules/migrate_drupal_ui/tests/src/Functional/MigrateUpgradeExecuteTestBase.php b/core/modules/migrate_drupal_ui/tests/src/Functional/MigrateUpgradeExecuteTestBase.php
index a459f8a69a..21effe67b9 100644
--- a/core/modules/migrate_drupal_ui/tests/src/Functional/MigrateUpgradeExecuteTestBase.php
+++ b/core/modules/migrate_drupal_ui/tests/src/Functional/MigrateUpgradeExecuteTestBase.php
@@ -163,10 +163,10 @@ public function testMigrateUpgradeExecute() {
     $this->assertMigrationResults($this->getEntityCountsIncremental(), $version);
 
     // Test rollback.
-    $this->drupalGet('/upgrade');
+      $this->drupalGet('/upgrade');
     $session->pageTextContains('An upgrade has already been performed on this site.');
     $session->pageTextContains('Rollback: Remove content and configuration entities (such as fields and node types). Default values of other configuration will not be reverted (such as site name).');
-    $rollback = [
+     $rollback = [
       'upgrade_option' => IncrementalForm::MIGRATE_UPGRADE_ROLLBACK,
     ];
     $rollback_edits = $this->translatePostValues($rollback);
diff --git a/core/modules/migrate_drupal_ui/tests/src/Functional/MigrateUpgradeFormStepsTest.php b/core/modules/migrate_drupal_ui/tests/src/Functional/MigrateUpgradeFormStepsTest.php
index caa60c3438..8dda7cdc3f 100644
--- a/core/modules/migrate_drupal_ui/tests/src/Functional/MigrateUpgradeFormStepsTest.php
+++ b/core/modules/migrate_drupal_ui/tests/src/Functional/MigrateUpgradeFormStepsTest.php
@@ -3,6 +3,7 @@
 namespace Drupal\Tests\migrate_drupal_ui\Functional;
 
 use Drupal\migrate_drupal\MigrationConfigurationTrait;
+use Drupal\migrate_drupal_ui\Form\IncrementalForm;
 use Drupal\Tests\migrate_drupal\Traits\CreateTestContentEntitiesTrait;
 use Drupal\Tests\BrowserTestBase;
 use Drupal\Tests\WebAssert;
@@ -108,8 +109,12 @@ public function testMigrateUpgradeReviewPage() {
     // Test that the credential form is displayed for incremental migrations.
     $store->set('step', 'overview');
     $this->drupalGet('/upgrade');
-    $session->pageTextContains('An upgrade has already been performed on this site. To perform a new migration, create a clean and empty new install of Drupal 8. Rollbacks are not yet supported through the user interface.');
-    $this->drupalPostForm(NULL, [], t('Import new configuration and content from old site'));
+    $session->pageTextContains('An upgrade has already been performed on this site.');
+    $incremental = [
+      'upgrade_option' => IncrementalForm::MIGRATE_UPGRADE_INCREMENTAL,
+    ];
+    $incremental_edits = $this->translatePostValues($incremental);
+    $this->drupalPostForm(NULL, $incremental_edits, t('Continue'));
     $session->pageTextContains('Provide credentials for the database of the Drupal site you want to upgrade.');
   }
 
diff --git a/core/modules/migrate_drupal_ui/tests/src/Functional/MigrateUpgradeReviewPageTestBase.php b/core/modules/migrate_drupal_ui/tests/src/Functional/MigrateUpgradeReviewPageTestBase.php
index 5c97a69070..f490493947 100644
--- a/core/modules/migrate_drupal_ui/tests/src/Functional/MigrateUpgradeReviewPageTestBase.php
+++ b/core/modules/migrate_drupal_ui/tests/src/Functional/MigrateUpgradeReviewPageTestBase.php
@@ -152,4 +152,14 @@ protected function getEntityCountsIncremental() {
     return [];
   }
 
+  /**
+   * Gets expected number of entities per entity after rollback.
+   *
+   * @return int[]
+   *   An array of expected counts keyed by entity type ID.
+   */
+  protected function getEntityCountsRollback() {
+    return [];
+  }
+
 }
diff --git a/core/modules/migrate_drupal_ui/tests/src/Functional/d6/MigrateUpgrade6Test.php b/core/modules/migrate_drupal_ui/tests/src/Functional/d6/MigrateUpgrade6Test.php
index 0911119e1c..4cc70350c0 100644
--- a/core/modules/migrate_drupal_ui/tests/src/Functional/d6/MigrateUpgrade6Test.php
+++ b/core/modules/migrate_drupal_ui/tests/src/Functional/d6/MigrateUpgrade6Test.php
@@ -115,7 +115,7 @@ protected function getEntityCountsIncremental() {
     return $counts;
   }
 
-    /**
+  /**
    * {@inheritdoc}
    */
   protected function getEntityCountsRollback() {
diff --git a/core/modules/migrate_drupal_ui/tests/src/Functional/d7/MigrateUpgrade7Test.php b/core/modules/migrate_drupal_ui/tests/src/Functional/d7/MigrateUpgrade7Test.php
index 05dc35b975..19421ab76b 100644
--- a/core/modules/migrate_drupal_ui/tests/src/Functional/d7/MigrateUpgrade7Test.php
+++ b/core/modules/migrate_drupal_ui/tests/src/Functional/d7/MigrateUpgrade7Test.php
@@ -116,7 +116,7 @@ protected function getEntityCountsIncremental() {
    * {@inheritdoc}
    */
   protected function getEntityCountsRollback() {
-      return [
+    return [
       'aggregator_item' => 11,
       'aggregator_feed' => 1,
       'block' => 25,
@@ -258,7 +258,6 @@ protected function assertFollowUpMigrationResults() {
     $translation = $node->getTranslation('en');
     $this->assertSame('2', $translation->get('field_reference')->target_id);
     $this->assertSame('2', $translation->get('field_reference_2')->target_id);
-
   }
 
 }
