有几次,在浏览各种tests应用程序的Django目录时,我偶然发现了models.py和settings.py文件(例如,在django-tagging中)。
但是没有代码可以同步测试模型或应用自定义测试设置--但是测试使用它们就像django会自动神奇地加载它们一样。但是,如果我尝试运行django-tagging的测试:manage.py test tagging,它甚至不会执行任何测试。
这正是我现在测试我的应用程序所需要的,但我真的不知道怎么做。
那么,它是如何工作的呢?
发布于 2009-08-16 03:29:27
如果你想在django-tagging中运行测试,你可以尝试:
django-admin.py测试--设置=tagging.tests.settings
基本上,它使用tests包/目录内的tests.py文件中的文档测试。测试使用同一目录中的设置文件(并在django-admin的命令行中指定)。有关更多信息,请参阅writing doctests上的django文档。
发布于 2009-08-14 17:26:25
您的意思是,“我如何在Django中编写单元测试?”检查documentation on testing。
完成后,我在test/子目录中编写了单元测试。确保目录中有一个空的__init__.py文件。您可能还需要一个models.py文件。添加从unittest.TestCase派生的单元测试(在模块单元测试中)。将模块'xxxx.test‘添加到settings.py中的INSTALLED_APPS中(其中'xxxx’是应用程序的基本名称)。
下面是我的一些示例代码,可以帮助您入门:
#!/usr/bin/env python
# http://docs.djangoproject.com/en/dev/topics/testing/
from sys import stderr
import unittest
from django.test.client import Client
from expenses.etl.loader import load_all, load_init
class TestCase(unittest.TestCase):
def setUp(self):
print "setUp"
def testLoading(self):
print "Calling load_init()"
load_init()
print "Calling load_all()"
load_all()
print "Done"
if __name__ == '__main__':
unittest.main()如果您的意思是“如何将数据加载到单元测试中?”,那么请使用同一文档页面中描述的fixture。
https://stackoverflow.com/questions/1279032
复制相似问题