我有一个Django应用程序,myApp。在其中,有一个tests.py文件,它使用django.test.TestCase类定义了许多测试用例。例如,其中一个称为WebViews,并且有一个测试方法check_status_codes。
当我运行./manage.py测试时,数据库是使用我的初始数据构建的,但它告诉我它运行了0次测试。如果我这样做,我得到类似的结果(测试没有运行):
./ manage.py test myApp
甚至是这样:
./ manage.py test myApp.WebViews
但是,如果我执行
./ manage.py test.WebViews.check_status_codes
然后确切的测试方法按预期运行。
我可以像这样将一堆测试方法串起来并让它们运行,但这变得非常繁琐,我感觉我错过了一些东西。
有关该怎么做的任何提示或建议?
谢谢!
答案 0 :(得分:9)
我相信单元测试的惯例是让你的测试方法预先测试。例如:
class FooTest(TestCase):
def setUp(self):
# do setup stuff here
pass
def tearDown(self):
# do teardown here
pass
def test_one_equals_one(self):
self.assertEqual(1, 1, "One did not equal 1")