diff --git a/tempest/stress/stressaction.py b/tempest/stress/stressaction.py
index a3d0d17..c8bd652 100644
--- a/tempest/stress/stressaction.py
+++ b/tempest/stress/stressaction.py
@@ -40,32 +40,35 @@
 
     @property
     def action(self):
-        """This methods returns the action. Overload this if you
-        create a stress test wrapper.
+        """This methods returns the action.
+
+        Overload this if you create a stress test wrapper.
         """
         return self.__class__.__name__
 
     def setUp(self, **kwargs):
-        """This method is called before the run method
-        to help the test initialize any structures.
-        kwargs contains arguments passed in from the
-        configuration json file.
+        """Initialize test structures/resources
+
+        This method is called before "run" method to help the test
+        initialize any structures. kwargs contains arguments passed
+        in from the configuration json file.
 
         setUp doesn't count against the time duration.
         """
         self.logger.debug("setUp")
 
     def tearDown(self):
-        """This method is called to do any cleanup
-        after the test is complete.
+        """Cleanup test structures/resources
+
+        This method is called to do any cleanup after the test is complete.
         """
         self.logger.debug("tearDown")
 
     def execute(self, shared_statistic):
-        """This is the main execution entry point called
-        by the driver.   We register a signal handler to
-        allow us to tearDown gracefully, and then exit.
-        We also keep track of how many runs we do.
+        """This is the main execution entry point called by the driver.
+
+        We register a signal handler to allow us to tearDown gracefully,
+        and then exit. We also keep track of how many runs we do.
         """
         signal.signal(signal.SIGHUP, self._shutdown_handler)
         signal.signal(signal.SIGTERM, self._shutdown_handler)
