title: Python: convention name for a test
body: <p>Is there a convention for naming tests in Python when using the <code>unittest</code> module. I know that each method inside a class which inherits from <code>unittest.TestCase</code> should start with test, but I wonder what is much better:</p>
  
  <p><strong>1. A short descriptive name without docstring</strong></p>
  
  <pre><code>def test_for_a_date_on_a_weekday(self):
          customer_type = "Regular"
          dates = ["16Mar2009(mon)"]
      self.assertEquals(self.hotel_reservation_system.find_cheapest_hotel(customer_type, dates), "Lakewood")
  </code></pre>
  
  <p><strong>2. A number following the word test with a docstring which explains the test.</strong></p>
  
  <pre><code>def test_1(self):
      """Tests the cheapest hotel when the date is on a weekday.
      """
      customer_type = "Regular"
      dates = ["16Mar2009(mon)"]
      self.assertEquals(self.hotel_reservation_system.find_cheapest_hotel(customer_type, dates), "Lakewood")
  </code></pre>
  
  <p>Which option is much preferable, and if any of them what should I use?</p>