2

当我使用 Django 1.7.1 进行测试时,它会引发下一个警告:

/usr/local/lib/python2.7/dist-packages/django/test/_doctest.py:59:
RemovedInDjango18Warning: The django.test._doctest module is deprecated;
use the doctest module from the Python standard library instead.
RemovedInDjango18Warning)

我还尝试在 settings.py 文件中添加这一行:

TEST_RUNNER = 'django.test.runner.DiscoverRunner'

但仍然抛出警告。

我从我的测试模型文件中记下代码:

from django.test import TestCase
from myproject import tests, models


class TestModels(TestCase):

    def test_rol(self):
        rol = tests.create_rol()
        rol.save()

        self.assertTrue(isinstance(rol, models.Rol))
        self.assertEqual(rol.name, rol.__unicode__())

我已经阅读了 Django 网页上的文档:https ://docs.djangoproject.com/en/1.7/topics/testing/overview/但仍然无法获得解决方案。

我正在使用 Django 鼻子。

我该如何解决这个问题?

谢谢

4

2 回答 2

4

这是django-nose包中的一个问题(请参阅GitHub 问题 #149)。它已在 master 中修复,但还没有 PyPI 版本。现在,如果您不想看到警告,可以将requirements.txt文件指向固定版本:

-e git://github.com/django-nose/django-nose.git@154b663097e8f3131fe5d1cdd8a8df2e388450ac#egg=django_nose

... 代替 ...

django-nose==1.2

更新:django-nose 1.3 已发布并包含此修复。

于 2014-11-07T15:23:12.057 回答
1

看起来这是一个django-nose问题:请参阅此处

所以,直接忽略吧。大概它会在您实际使用 Django 1.8 之前修复。

于 2014-11-07T15:21:37.860 回答