首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >django文档测试未运行

django文档测试未运行
EN

Stack Overflow用户
提问于 2011-10-15 23:05:10
回答 3查看 1.2K关注 0票数 6

我在运行django doctest和django-nose时遇到了问题。添加到/tests目录的单元测试运行良好,但文档测试运行不正常。

我正在尝试对我的"season“模块运行doctest:

代码语言:javascript
复制
python manage.py test season

并获得以下输出:

代码语言:javascript
复制
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来尝试让它工作,例如:

代码语言:javascript
复制
    """
    >>> 1+1 == 2
    True
    """

这是在我的models.py中。我已经尝试了其他文档测试,实际测试代码,但仍然没有看到任何测试运行。当我运行--verbosity 3时,我发现有一行可能是问题所在:

代码语言:javascript
复制
nose.selector: INFO: <models.py path> is executable; skipped

不过,我找不到更多关于这意味着什么的信息。

来自settings.py的相关代码片段:

代码语言:javascript
复制
INSTALLED_APPS = (
    'south',
    'django_nose',
    'season',
)

# Django-nose configuration
TEST_RUNNER = 'django_nose.NoseTestSuiteRunner'
NOSE_ARGS = ['--with-doctest']

正如django-nose文档中指定的那样,django_nose在INSTALLED_APPS中位于south之后。我使用了这里建议的--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

nose 1.1.2

我觉得我这里缺少一些基本的设置。如果需要任何其他信息,请让我知道。感谢您的帮助,谢谢!

EN

回答 3

Stack Overflow用户

发布于 2014-04-12 07:45:11

我知道OP指定的是1.3,但由于这个答案是在搜索“django doctest do not run”时出现的,所以这是我在Django doctests in views.py中的一个答案中对1.6的答案。在此版本的Django中,doctest不会自动包含在内,因此在$APP/tests.py中,您需要:

代码语言:javascript
复制
import doctest
def load_tests(loader, tests, ignore):
    tests.addTests(doctest.DocTestSuite())
    return tests

这只会在tests.py本身中找到文档测试;要让它在其他模块上运行文档测试,比如myapp/models.py,您需要from myapp import modelstests.addTests(doctest.DocTestSuite(models))

票数 4
EN

Stack Overflow用户

发布于 2013-03-13 08:12:42

详细信息告诉您models.py文件被忽略,因为它是可执行的。这意味着您需要执行以下操作:

代码语言:javascript
复制
chmod -x models.py

除非您有特定的原因将该文件设置为可执行文件,在这种情况下,在NOSE_ARGS中添加--exe就足够了。

票数 2
EN

Stack Overflow用户

发布于 2011-10-17 04:53:10

nosetests --verbosity 1 season --with-doctest

Usage: manage.py test [options] [appname ...]

也许你只需要把season移到end。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7778622

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档