diff --git a/stress/README.rst b/stress/README.rst
index e9df3a3..00e3b90 100644
--- a/stress/README.rst
+++ b/stress/README.rst
@@ -3,17 +3,17 @@
 
 Nova is a distributed, asynchronous system that is prone to race condition
 bugs. These bugs will not be easily found during
-functional testing but will be encountered by users in large deployments in a 
+functional testing but will be encountered by users in large deployments in a
 way that is hard to debug. The stress test tries to cause these bugs to happen
 in a more controlled environment.
 
-The basic idea of the test is that there are a number of actions, roughly 
+The basic idea of the test is that there are a number of actions, roughly
 corresponding to the Compute API, that are fired pseudo-randomly at a nova 
 cluster as fast as possible. These actions consist of what to do, how to
 verify success, and a state filter to make sure that the operation makes sense.
 For example, if the action is to reboot a server and none are active, nothing
 should be done. A test case is a set of actions to be performed and the
-probability that each action should be selected. There are also parameters 
+probability that each action should be selected. There are also parameters
 controlling rate of fire and stuff like that.
 
 This test framework is designed to stress test a Nova cluster. Hence,
@@ -24,7 +24,7 @@
 This particular framework assumes your working Nova cluster understands Nova 
 API 2.0. The stress tests can read the logs from the cluster. To enable this
 you have to
-provide the private key and user name for ssh to the cluster in the 
+provide the private key and user name for ssh to the cluster in the
 [stress] section of tempest.conf. You also need to provide the
 value of --logdir in nova.conf:
 
@@ -35,7 +35,7 @@
 The stress test needs the top-level tempest directory to be on PYTHONPATH
 if you are not using nosetests to run.
 
-For real stress, you need to remove "ratelimit" from the pipeline in 
+For real stress, you need to remove "ratelimit" from the pipeline in
 api-paste.ini.
 
 
diff --git a/tempest/tests/image/test_images.py b/tempest/tests/image/test_images.py
index 8567b51..70dec32 100644
--- a/tempest/tests/image/test_images.py
+++ b/tempest/tests/image/test_images.py
@@ -34,7 +34,6 @@
 from tempest import openstack
 
 
-@unittest.skipUnless(GLANCE_INSTALLED, 'Glance not installed')
 class CreateRegisterImagesTest(unittest.TestCase):
 
     """
@@ -43,6 +42,8 @@
 
     @classmethod
     def setUpClass(cls):
+        if not GLANCE_INSTALLED:
+            raise SkipTest('Glance not installed')
         cls.os = openstack.ServiceManager()
         cls.client = cls.os.images.get_client()
         cls.created_images = []
@@ -138,6 +139,8 @@
 
     @classmethod
     def setUpClass(cls):
+        if not GLANCE_INSTALLED:
+            raise SkipTest('Glance not installed')
         raise SkipTest('Skipping until Glance Bug 912897 is fixed')
         cls.os = openstack.ServiceManager()
         cls.client = cls.os.images.get_client()
