diff --git a/openstackclient/tests/functional/object/v1/common.py b/openstackclient/tests/functional/object/v1/common.py
new file mode 100644
index 0000000000..44771aaabe
--- /dev/null
+++ b/openstackclient/tests/functional/object/v1/common.py
@@ -0,0 +1,22 @@
+#    Licensed under the Apache License, Version 2.0 (the "License"); you may
+#    not use this file except in compliance with the License. You may obtain
+#    a copy of the License at
+#
+#         http://www.apache.org/licenses/LICENSE-2.0
+#
+#    Unless required by applicable law or agreed to in writing, software
+#    distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+#    WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+#    License for the specific language governing permissions and limitations
+#    under the License.
+
+from openstackclient.tests.functional import base
+
+
+class ObjectStoreTests(base.TestCase):
+    """Functional tests for Object Store commands"""
+
+    @classmethod
+    def setUpClass(cls):
+        super(ObjectStoreTests, cls).setUpClass()
+        cls.haz_object_store = base.is_service_enabled('object-store')
diff --git a/openstackclient/tests/functional/object/v1/test_container.py b/openstackclient/tests/functional/object/v1/test_container.py
index acfbab11de..d66aa842b0 100644
--- a/openstackclient/tests/functional/object/v1/test_container.py
+++ b/openstackclient/tests/functional/object/v1/test_container.py
@@ -12,28 +12,37 @@
 
 import uuid
 
-from openstackclient.tests.functional import base
+# from openstackclient.tests.functional import base
+from openstackclient.tests.functional.object.v1 import common
 
 
-class ContainerTests(base.TestCase):
-    """Functional tests for object containers. """
+class ContainerTests(common.ObjectStoreTests):
+    """Functional tests for Object Store container commands"""
     NAME = uuid.uuid4().hex
 
     @classmethod
     def setUpClass(cls):
         super(ContainerTests, cls).setUpClass()
-        opts = cls.get_opts(['container'])
-        raw_output = cls.openstack('container create ' + cls.NAME + opts)
-        cls.assertOutput(cls.NAME + '\n', raw_output)
+        if cls.haz_object_store:
+            opts = cls.get_opts(['container'])
+            raw_output = cls.openstack('container create ' + cls.NAME + opts)
+            cls.assertOutput(cls.NAME + '\n', raw_output)
 
     @classmethod
     def tearDownClass(cls):
         try:
-            raw_output = cls.openstack('container delete ' + cls.NAME)
-            cls.assertOutput('', raw_output)
+            if cls.haz_object_store:
+                raw_output = cls.openstack('container delete ' + cls.NAME)
+                cls.assertOutput('', raw_output)
         finally:
             super(ContainerTests, cls).tearDownClass()
 
+    def setUp(self):
+        super(ContainerTests, self).setUp()
+        # Skip tests if no object-store is present
+        if not self.haz_object_store:
+            self.skipTest("No object-store service present")
+
     def test_container_list(self):
         opts = self.get_opts(['Name'])
         raw_output = self.openstack('container list' + opts)
diff --git a/openstackclient/tests/functional/object/v1/test_object.py b/openstackclient/tests/functional/object/v1/test_object.py
index 0927d706dc..d1a73c54db 100644
--- a/openstackclient/tests/functional/object/v1/test_object.py
+++ b/openstackclient/tests/functional/object/v1/test_object.py
@@ -14,18 +14,24 @@ import os
 import tempfile
 import uuid
 
-from openstackclient.tests.functional import base
+from openstackclient.tests.functional.object.v1 import common
 
 BASIC_LIST_HEADERS = ['Name']
 CONTAINER_FIELDS = ['account', 'container', 'x-trans-id']
 OBJECT_FIELDS = ['object', 'container', 'etag']
 
 
-class ObjectTests(base.TestCase):
-    """Functional tests for Object commands. """
+class ObjectTests(common.ObjectStoreTests):
+    """Functional tests for Object Store object commands"""
 
     CONTAINER_NAME = uuid.uuid4().hex
 
+    def setUp(self):
+        super(ObjectTests, self).setUp()
+        # Skip tests if no object-store is present
+        if not self.haz_object_store:
+            self.skipTest("No object-store service present")
+
     def test_object(self):
         with tempfile.NamedTemporaryFile() as f:
             f.write('test content')