diff --git a/_modules/runtest/tempest_sections/heat_plugin.py b/_modules/runtest/tempest_sections/heat_plugin.py
index 945ea39..4feab0f 100644
--- a/_modules/runtest/tempest_sections/heat_plugin.py
+++ b/_modules/runtest/tempest_sections/heat_plugin.py
@@ -235,7 +235,26 @@
 
     @property
     def skip_functional_test_list(self):
-        pass
+        skip_list = []
+
+        # Update of allocation_pools is not allowed in case of Contrail
+        contrail_enabled = conditions.BaseRule('*.opencontrail.control.enabled',
+                                               'eq', True, multiple='any')
+        if contrail_enabled.check(self.pillar):
+            skip_list.append('UpdateSubnetTest')
+
+        # UpdateServerNetworksTest, StackTemplateValidateTest : These tests are
+        # supported since Queens.
+        pike = conditions.BaseRule('*.heat.server.version', 'eq', 'pike')
+        if pike.check(self.pillar):
+            skip_list.extend(['UpdateServerNetworksTest',
+                              'StackTemplateValidateTest'])
+
+        if not skip_list:
+            pass
+        else:
+            skip_tests = ', '.join(skip_list)
+            return skip_tests
 
     @property
     def skip_functional_tests(self):
diff --git a/metadata/service/tempest/init.yml b/metadata/service/tempest/init.yml
index b7e1356..136b897 100644
--- a/metadata/service/tempest/init.yml
+++ b/metadata/service/tempest/init.yml
@@ -16,8 +16,6 @@
     runtest_heat_plugin_skip_scenario_test_list: 'SoftwareConfigIntegrationTest, VolumeBackupRestoreIntegrationTest, AodhAlarmTest'
     # VolumeBackupRestoreIntegrationTest : we don't use volume backup in our default configuration.
     # AodhAlarmTest : we don't have aodh endpoint because of have't telemetry on default configuration.
-    runtest_heat_plugin_skip_functional_test_list: 'UpdateServerNetworksTest, StackTemplateValidateTest'
-    # UpdateServerNetworksTest, StackTemplateValidateTest : These tests support in openstack Queens, but not in Pike.
     runtest_path_to_ca_file: '/etc/ssl/certs/ca-certificates.crt'
     runtest_path_to_boot_config_env_file: '/usr/local/lib/python2.7/dist-packages/heat_tempest_plugin/tests/scenario/templates/boot_config_none_env.yaml'
     runtest_local_image_url: ${_param:glance_image_cirros_location}
@@ -107,7 +105,6 @@
         backup: false
       heat_plugin:
         skip_scenario_test_list: ${_param:runtest_heat_plugin_skip_scenario_test_list}
-        skip_functional_test_list: ${_param:runtest_heat_plugin_skip_functional_test_list}
         project_domain_id: default
         user_domain_id: default
         disable_ssl_certificate_validation: False
