diff --git a/functional/functional_base.py b/functional/functional_base.py
index 3dff3e4..452e055 100644
--- a/functional/functional_base.py
+++ b/functional/functional_base.py
@@ -17,10 +17,10 @@
 
     def setUp(self):
         super(FunctionalTestsBase, self).setUp()
-        self.check_skip_test()
+        self.check_skip()
         self.client = self.orchestration_client
 
-    def check_skip_test(self):
+    def check_skip(self):
         test_cls_name = self.__class__.__name__
         test_method_name = '.'.join([test_cls_name, self._testMethodName])
         test_skipped = (self.conf.skip_functional_test_list and (
diff --git a/scenario/scenario_base.py b/scenario/scenario_base.py
index 14b8cec..66069ff 100644
--- a/scenario/scenario_base.py
+++ b/scenario/scenario_base.py
@@ -18,7 +18,7 @@
 
     def setUp(self):
         super(ScenarioTestsBase, self).setUp()
-        self.check_skip_test()
+        self.check_skip()
 
         self.client = self.orchestration_client
         self.sub_dir = 'templates'
@@ -58,7 +58,7 @@
 
         return stack_id
 
-    def check_skip_test(self):
+    def check_skip(self):
         test_cls_name = self.__class__.__name__
         test_method_name = '.'.join([test_cls_name, self._testMethodName])
         test_skipped = (self.conf.skip_scenario_test_list and (
