我在使用django-nose运行django doctests时遇到问题.添加到/ tests目录的单元测试运行正常,但doctests不是.
我试图在我的“季节”模块上运行doctests:
python manage.py test season
得到这个输出:
nosetests --verbosity 1 season --with-doctest
Creating test database for alias 'default'...
----------------------------------------------------------------------
Ran 0 tests in 0.001s
OK
Destroying test database for alias 'default'...
我只是尝试一个基本的doctest试图让它工作,例如:
"""
>>> 1+1 == 2
True
"""
这是在我的models.py中.我已经尝试过其他doctests实际测试代码,但仍然没有看到任何测试运行.当我使用–verbosity 3运行时,我看到一行可能是问题:
nose.selector: INFO: <models.py path> is executable; skipped
我找不到更多关于这意味着什么的信息.
来自settings.py的相关代码段:
INSTALLED_APPS = (
'south',
'django_nose',
'season',
)
# Django-nose configuration
TEST_RUNNER = 'django_nose.NoseTestSuiteRunner'
NOSE_ARGS = ['--with-doctest']
django_nose是在django-nose文档中指定的INSTALLED_APPS之后的南部.我正在使用这里建议的–with-doctest参数:Nose not running Django doctests,并将我的django-nose更新为最新的,如下所示:Why isn’t django-nose running the doctests in my models?
这些是我使用的版本:
django 1.3
python 2.7.1
django-nose 0.1.3
鼻子1.1.2
我觉得我在这里缺少一些基本设置.如果需要任何其他信息,请与我们联系.任何帮助表示赞赏,谢谢!
解决方法:
详细信息告诉您您的models.py文件被忽略,因为它是可执行文件.这意味着你需要做:
chmod -x models.py
除非您有特定原因要将该文件设置为可执行文件,否则在您的NOSE_ARGS中添加–exe应该就足够了.