我刚刚意识到我将我的django应用myproject.sites
命名为与内置django应用'django.contrib.sites'
相同的名称。 (两者都在INSTALLED_APPS
)
我刚刚为它编写了测试用例,发现当我尝试运行测试时它们不会运行:
manage.py test sites
而是似乎运行'django.contrib.sites'
,而不是myproject.sites
。
我是否一直在重命名我的应用并重构我的所有代码,或者我是否可以运行为myproject.sites
创建的测试?
(如果我只是运行所有测试,它可能会运行吗?Haven还没试过,因为我的应用程序运行完整套件需要很长时间......)
答案 0 :(得分:2)
作为快速解决方法,只需将myproject.sites
放在INSTALLED_APPS
列表中,而不是django.contrib.sites
。默认测试运行器将选择与INSTALLED_APPS
匹配的第一个应用名称。
对于较大的项目,我更喜欢使用django-nose的额外功能,这将允许对运行哪些测试进行细粒度控制。