fix sahara base class

1. get client mamager after service available checking
2. checking cls's attribute in tearDownClass to avoid
   exceptions

Change-Id: I596284dceadcb5f0144495bd346d570c6bb35e0f
diff --git a/tempest/api/data_processing/base.py b/tempest/api/data_processing/base.py
index 73ad22b..84d5be6 100644
--- a/tempest/api/data_processing/base.py
+++ b/tempest/api/data_processing/base.py
@@ -26,9 +26,10 @@
     @classmethod
     def setUpClass(cls):
         super(BaseDataProcessingTest, cls).setUpClass()
-        os = cls.get_client_manager()
         if not CONF.service_available.sahara:
             raise cls.skipException("Sahara support is required")
+
+        os = cls.get_client_manager()
         cls.client = os.data_processing_client
 
         # set some constants
@@ -57,7 +58,7 @@
     @classmethod
     def tearDownClass(cls):
         # cleanup node group templates
-        for ngt_id in cls._node_group_templates:
+        for ngt_id in getattr(cls, '_node_group_templates', []):
             try:
                 cls.client.delete_node_group_template(ngt_id)
             except Exception: