diff --git a/ironic_tempest_plugin/config.py b/ironic_tempest_plugin/config.py
index 3594b5b..c4fb185 100644
--- a/ironic_tempest_plugin/config.py
+++ b/ironic_tempest_plugin/config.py
@@ -129,6 +129,8 @@
     cfg.ListOpt('enabled_rescue_interfaces',
                 default=['no-rescue'],
                 help="List of Ironic enabled rescue interfaces."),
+    cfg.StrOpt('default_rescue_interface',
+               help="Ironic default rescue interface."),
     cfg.IntOpt('adjusted_root_disk_size_gb',
                min=0,
                help="Ironic adjusted disk size to use in the standalone tests "
diff --git a/ironic_tempest_plugin/tests/api/admin/base.py b/ironic_tempest_plugin/tests/api/admin/base.py
index c589461..8850c55 100644
--- a/ironic_tempest_plugin/tests/api/admin/base.py
+++ b/ironic_tempest_plugin/tests/api/admin/base.py
@@ -162,12 +162,12 @@
 
     @classmethod
     @creates('node')
-    def create_node(cls, chassis_id, cpu_arch='x86', cpus=8, local_gb=10,
+    def create_node(cls, chassis_id, cpu_arch='x86_64', cpus=8, local_gb=10,
                     memory_mb=4096, resource_class=None):
         """Wrapper utility for creating test baremetal nodes.
 
         :param chassis_id: The unique identifier of the chassis.
-        :param cpu_arch: CPU architecture of the node. Default: x86.
+        :param cpu_arch: CPU architecture of the node. Default: x86_64.
         :param cpus: Number of CPUs. Default: 8.
         :param local_gb: Disk size. Default: 10.
         :param memory_mb: Available RAM. Default: 4096.
diff --git a/ironic_tempest_plugin/tests/api/admin/test_nodes.py b/ironic_tempest_plugin/tests/api/admin/test_nodes.py
index 1e97954..8c1343f 100644
--- a/ironic_tempest_plugin/tests/api/admin/test_nodes.py
+++ b/ironic_tempest_plugin/tests/api/admin/test_nodes.py
@@ -111,7 +111,7 @@
 
         _, node = self.create_node(self.chassis['uuid'], **props)
 
-        new_p = {'cpu_arch': 'x86',
+        new_p = {'cpu_arch': 'arm64',
                  'cpus': '1',
                  'local_gb': '10000',
                  'memory_mb': '12300'}
diff --git a/ironic_tempest_plugin/tests/scenario/baremetal_manager.py b/ironic_tempest_plugin/tests/scenario/baremetal_manager.py
index c220619..6d7d55b 100644
--- a/ironic_tempest_plugin/tests/scenario/baremetal_manager.py
+++ b/ironic_tempest_plugin/tests/scenario/baremetal_manager.py
@@ -19,6 +19,7 @@
 from tempest.common import waiters
 from tempest import config
 from tempest.lib.common import api_version_utils
+from tempest.lib.common.utils.linux import remote_client
 from tempest.lib import exceptions as lib_exc
 
 from ironic_tempest_plugin import clients
@@ -232,3 +233,44 @@
              BaremetalProvisionStates.AVAILABLE],
             timeout=CONF.baremetal.unprovision_timeout,
             interval=30)
+
+    def rescue_instance(self, instance, node, server_ip,
+                        servers_client=None):
+        """Rescue the instance, verify we can ping and SSH."""
+        if servers_client is None:
+            servers_client = self.servers_client
+
+        rescuing_instance = servers_client.rescue_server(instance['id'])
+        rescue_password = rescuing_instance['adminPass']
+
+        self.wait_provisioning_state(
+            node['uuid'],
+            BaremetalProvisionStates.RESCUE,
+            timeout=CONF.baremetal.rescue_timeout)
+        waiters.wait_for_server_status(servers_client,
+                                       instance['id'], 'RESCUE')
+        # Ping server ip
+        self.assertTrue(self.ping_ip_address(server_ip))
+        # Open ssh connection to server
+        linux_client = remote_client.RemoteClient(
+            server_ip,
+            'rescue',
+            password=rescue_password,
+            server=self.instance,
+            servers_client=servers_client,
+            ssh_timeout=CONF.baremetal.rescue_timeout)
+        linux_client.validate_authentication()
+
+    def unrescue_instance(self, instance, node, server_ip,
+                          servers_client=None):
+        if servers_client is None:
+            servers_client = self.servers_client
+        self.servers_client.unrescue_server(instance['id'])
+        self.wait_provisioning_state(
+            node['uuid'],
+            BaremetalProvisionStates.ACTIVE,
+            timeout=CONF.baremetal.unrescue_timeout)
+        waiters.wait_for_server_status(servers_client,
+                                       instance['id'], 'ACTIVE')
+        # Verify server connection
+        self.get_remote_client(server_ip)
diff --git a/ironic_tempest_plugin/tests/scenario/ironic_standalone/test_cleaning.py b/ironic_tempest_plugin/tests/scenario/ironic_standalone/test_cleaning.py
index 5ea83b1..e30b9ef 100644
--- a/ironic_tempest_plugin/tests/scenario/ironic_standalone/test_cleaning.py
+++ b/ironic_tempest_plugin/tests/scenario/ironic_standalone/test_cleaning.py
@@ -18,7 +18,6 @@
 from tempest import config
 from tempest.lib import decorators
 
-from ironic_tempest_plugin.services.baremetal import base
 from ironic_tempest_plugin.tests.scenario import \
     baremetal_standalone_manager as bsm
 
@@ -33,11 +32,11 @@
     image_ref = CONF.baremetal.whole_disk_image_ref
     wholedisk_image = True
     delete_node = False
+    api_microversion = '1.28'
 
     @decorators.idempotent_id('0d82cedd-9697-4cf7-8e4a-80d510f53615')
     @utils.services('image', 'network')
     def test_manual_cleaning(self):
-        base.set_baremetal_api_microversion('1.28')
         self.check_manual_partition_cleaning(self.node)
 
 
@@ -48,11 +47,11 @@
     image_ref = CONF.baremetal.whole_disk_image_ref
     wholedisk_image = True
     delete_node = False
+    api_microversion = '1.28'
 
     @decorators.idempotent_id('fb03abfa-cdfc-41ec-aaa8-c70402786a85')
     @utils.services('image', 'network')
     def test_manual_cleaning(self):
-        base.set_baremetal_api_microversion('1.28')
         self.check_manual_partition_cleaning(self.node)
 
 
@@ -63,9 +62,10 @@
     image_ref = CONF.baremetal.whole_disk_image_ref
     wholedisk_image = True
     delete_node = False
+    deploy_interface = 'iscsi'
+    api_microversion = '1.31'
 
     @decorators.idempotent_id('065238db-1b6d-4d75-a9da-c240f8cbd956')
     @utils.services('image', 'network')
     def test_manual_cleaning(self):
-        base.set_baremetal_api_microversion('1.28')
         self.check_manual_partition_cleaning(self.node)
diff --git a/ironic_tempest_plugin/tests/scenario/test_baremetal_basic_ops.py b/ironic_tempest_plugin/tests/scenario/test_baremetal_basic_ops.py
index f78155d..61e5323 100644
--- a/ironic_tempest_plugin/tests/scenario/test_baremetal_basic_ops.py
+++ b/ironic_tempest_plugin/tests/scenario/test_baremetal_basic_ops.py
@@ -45,6 +45,26 @@
           expected state transitions
     """
 
+    TEST_RESCUE_MODE = False
+
+    @classmethod
+    def skip_checks(cls):
+        super(BaremetalBasicOps, cls).skip_checks()
+
+        # If default rescue interface is configured to test the rescue
+        # feature, then skips this test and let the test derived class
+        # to be executed.
+        rescue_if = CONF.baremetal.default_rescue_interface
+        if cls.TEST_RESCUE_MODE:
+            if not rescue_if or rescue_if == 'no-rescue':
+                msg = 'Node rescue interface is not enabled.'
+                raise cls.skipException(msg)
+        else:
+            if rescue_if and rescue_if != 'no-rescue':
+                msg = ('Node rescue interface is enabled, but %s class '
+                       'cannot test rescue operations.' % cls.__name__)
+                raise cls.skipException(msg)
+
     @staticmethod
     def _is_version_supported(version):
         """Return whether an API microversion is supported."""
@@ -193,7 +213,6 @@
         self.validate_ports()
         self.validate_scheduling()
         ip_address = self.get_server_ip(self.instance)
-        self.get_remote_client(ip_address).validate_authentication()
         vm_client = self.get_remote_client(ip_address)
 
         # We expect the ephemeral partition to be mounted on /mnt and to have
@@ -205,4 +224,15 @@
             self.create_timestamp(
                 ip_address, private_key=self.keypair['private_key'])
 
+        # Test rescue mode
+        if self.TEST_RESCUE_MODE:
+            self.rescue_instance(self.instance, self.node, ip_address)
+            self.unrescue_instance(self.instance, self.node, ip_address)
+
         self.terminate_instance(self.instance)
+
+
+class BaremetalBasicOpsAndRescue(BaremetalBasicOps):
+    """This test includes rescue/unrescue ops."""
+
+    TEST_RESCUE_MODE = True
diff --git a/tox.ini b/tox.ini
index d7cf22d..6b0e1ae 100644
--- a/tox.ini
+++ b/tox.ini
@@ -1,6 +1,6 @@
 [tox]
 minversion = 2.0
-envlist = py34,py27,pypy,pep8
+envlist = py3,py27,pep8
 skipsdist = True
 
 [testenv]
