Django文档(http://docs.djangoproject.com/en/1.3/topics/testing/#running-tests)表示您可以通过指定它们来运行单个测试用例:
$ ./manage.py test animals.AnimalTestCase
Run Code Online (Sandbox Code Playgroud)
这假设您在Django应用程序的tests.py文件中进行了测试.如果这是真的,那么这个命令就像预期的那样工作.
我在测试目录中测试了Django应用程序:
my_project/apps/my_app/
??? __init__.py
??? tests
? ??? __init__.py
? ??? field_tests.py
? ??? storage_tests.py
??? urls.py
??? utils.py
??? views.py
Run Code Online (Sandbox Code Playgroud)
该tests/__init__.py文件有一个suite()函数:
import unittest
from my_project.apps.my_app.tests import field_tests, storage_tests
def suite():
tests_loader = unittest.TestLoader().loadTestsFromModule
test_suites = []
test_suites.append(tests_loader(field_tests))
test_suites.append(tests_loader(storage_tests))
return unittest.TestSuite(test_suites)
Run Code Online (Sandbox Code Playgroud)
要运行测试我做:
$ ./manage.py test my_app
Run Code Online (Sandbox Code Playgroud)
尝试指定单个测试用例会引发异常:
$ ./manage.py test my_app.tests.storage_tests.StorageTestCase
...
ValueError: Test label 'my_app.tests.storage_tests.StorageTestCase' should be of the form app.TestCase or app.TestCase.test_method
Run Code Online (Sandbox Code Playgroud)
我试着做异常消息说的话:
$ ./manage.py test my_app.StorageTestCase
... …Run Code Online (Sandbox Code Playgroud) 现在我有我的Django单元测试生活在mcif/tests.py.我希望有更多的东西一样mcif/tests/foo_test.py,mcif/tests/bar_test.py等等,但如果我安排我的测试,这样,Django的翻转出来.
有没有办法做我正在尝试做的事情,或者我必须在一个文件中进行所有测试?
我正在开发一个django 1.2应用程序,我是一个框架的初学者,我想将我的测试分成几个文件的应用程序https://github.com/vkhemlan/BolsaTrabajo/tree/master/bolsa_trabajo,我怎么能这样做?我必须做什么配置?
问候