diff --git a/ironic_tempest_plugin/config.py b/ironic_tempest_plugin/config.py
index 5a71b84..8213b61 100644
--- a/ironic_tempest_plugin/config.py
+++ b/ironic_tempest_plugin/config.py
@@ -20,6 +20,10 @@
 from tempest import config  # noqa
 
 
+_DEFAULT_IFACE_HELP = ('Default {0} interface to be used for nodes that '
+                       'do not have {0}_interface field set.')
+
+
 # NOTE(TheJulia): The following options are loaded into a tempest
 # plugin configuration option via plugin.py.
 ironic_service_option = cfg.BoolOpt('ironic',
@@ -203,8 +207,30 @@
     cfg.ListOpt('enabled_power_interfaces',
                 default=['fake', 'ipmitool'],
                 help="List of Ironic enabled power interfaces."),
+    cfg.StrOpt('default_bios_interface',
+               help=_DEFAULT_IFACE_HELP.format('bios')),
+    cfg.StrOpt('default_boot_interface',
+               help=_DEFAULT_IFACE_HELP.format('boot')),
+    cfg.StrOpt('default_console_interface',
+               help=_DEFAULT_IFACE_HELP.format('console')),
+    cfg.StrOpt('default_deploy_interface',
+               help=_DEFAULT_IFACE_HELP.format('deploy')),
+    cfg.StrOpt('default_inspect_interface',
+               help=_DEFAULT_IFACE_HELP.format('inspect')),
+    cfg.StrOpt('default_management_interface',
+               help=_DEFAULT_IFACE_HELP.format('management')),
+    cfg.StrOpt('default_network_interface',
+               help=_DEFAULT_IFACE_HELP.format('network')),
+    cfg.StrOpt('default_power_interface',
+               help=_DEFAULT_IFACE_HELP.format('power')),
+    cfg.StrOpt('default_raid_interface',
+               help=_DEFAULT_IFACE_HELP.format('raid')),
     cfg.StrOpt('default_rescue_interface',
-               help="Ironic default rescue interface."),
+               help=_DEFAULT_IFACE_HELP.format('rescue')),
+    cfg.StrOpt('default_storage_interface',
+               help=_DEFAULT_IFACE_HELP.format('storage')),
+    cfg.StrOpt('default_vendor_interface',
+               help=_DEFAULT_IFACE_HELP.format('vendor')),
     cfg.StrOpt('firmware_image_url',
                help="Image URL of firmware image file supported by "
                     "update_firmware clean step."),
diff --git a/ironic_tempest_plugin/tests/api/admin/test_nodes.py b/ironic_tempest_plugin/tests/api/admin/test_nodes.py
index d6d1833..61dfb9e 100644
--- a/ironic_tempest_plugin/tests/api/admin/test_nodes.py
+++ b/ironic_tempest_plugin/tests/api/admin/test_nodes.py
@@ -649,7 +649,10 @@
                                     [{'path': '/%s' % field,
                                       'op': 'remove'}])
             _, node = self.client.show_node(self.node['uuid'])
-            self.assertEqual('fake', node[field])
+            default_iface_option = getattr(
+                CONF.baremetal, 'default_%s_interface' % iface)
+            expected_value = default_iface_option or 'fake'
+            self.assertEqual(expected_value, node[field])
 
 
 class TestResetInterfaces(TestHardwareInterfaces):
