title: python unittest.main() does not run the test cases
body: <p>I am trying to run a very basic test case for my flask application, but when I call unittest.main(), there are zero tests run. I enabled the pdb trace and checked that the imports are working fine. I don't see any other errors or syntax issues.</p>
  
  <p>Here is my test.py file:</p>
  
  <pre><code># test.py
  
  import os
  import unittest
  
  from views import app, db
  from config import basedir
  from models import User
  
  TEST_DB='test.db'
  
  class AllTests(unittest.TestCase):
  
     # executed prior to each test
      def setUp(self):
          app.config['TESTING'] = True
          app.config['WTF_CSRF_ENABLED'] = False
          app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///' + \
              os.path.join(basedir, TEST_DB)
          self.app = app.test_client()
          db.create_all()
  
      # executed after each test
      def tearDown(self):
          db.drop_all()
  
      #each test should start with 'test'
      def test_user_setup(self):
          new_user = User("testuer","test@user.com","testpassword")
          db.session.add(new_user)
          db.session.commit()
  
      if __name__ == "__main__":
          # import pdb; pdb.set_trace()
          unittest.main()
  </code></pre>
  
  <p>And here's the result when I call the test script.</p>
  
  <pre><code>&gt; python test.py
  
  ----------------------------------------------------------------------
  Ran 0 tests in 0.000s
  
  OK
  </code></pre>
  
  <p>Any thoughts on what I am doing wrong here?</p>