Python 使用覆盖率运行Django测试

Python 使用覆盖率运行Django测试,python,django,testing,coverage.py,Python,Django,Testing,Coverage.py,我是Django的初学者,尤其是在测试方面。因为这是一个最好的实践,我希望我能让它运行起来 我刚刚启动了一个项目(称为leden),并制作了第一个测试文件test_initial.py class test_LidViewTests(TestCase): def setUp(self): self.user = User.objects.create_user(username='jacob', email='jacob@pils.com', password='top_

我是Django的初学者,尤其是在测试方面。因为这是一个最好的实践,我希望我能让它运行起来

我刚刚启动了一个项目(称为leden),并制作了第一个测试文件test_initial.py

class test_LidViewTests(TestCase):
    def setUp(self):
        self.user = User.objects.create_user(username='jacob', email='jacob@pils.com', password='top_secret')
        self.client.login(username='jacob', password='top_secret')

def test_view_non_existing_lid(self):
        response = self.client.get(reverse('leden:lid', kwargs={'lid_id': 1}))
        self.assertEqual(response.status_code, 404)
当我使用命令python manage.py test运行测试时,所有测试都会运行。但是,当我尝试在PyCharm中运行测试时(我使用了教程),会出现以下错误:

/home/mathijs/.virtualenvs/ledenbestand/bin/python3.4 /opt/pycharm-3.4/helpers/pycharm/django_test_manage.py test leden.tests /home/mathijs/Development/ledenbestand
Testing started at 17:00 ...
/home/mathijs/.virtualenvs/ledenbestand/lib/python3.4/importlib/_bootstrap.py:321: RemovedInDjango19Warning: django.utils.unittest will be removed in Django 1.9.
  return f(*args, **kwds)

/home/mathijs/.virtualenvs/ledenbestand/lib/python3.4/importlib/_bootstrap.py:321: RemovedInDjango19Warning: django.utils.unittest will be removed in Django 1.9.
  return f(*args, **kwds)

Traceback (most recent call last):
  File "/opt/pycharm-3.4/helpers/pycharm/django_test_manage.py", line 127, in <module>
    utility.execute()
  File "/opt/pycharm-3.4/helpers/pycharm/django_test_manage.py", line 102, in execute
    PycharmTestCommand().run_from_argv(self.argv)
  File "/home/mathijs/.virtualenvs/ledenbestand/lib/python3.4/site-packages/django/core/management/commands/test.py", line 30, in run_from_argv
    super(Command, self).run_from_argv(argv)
  File "/home/mathijs/.virtualenvs/ledenbestand/lib/python3.4/site-packages/django/core/management/base.py", line 390, in run_from_argv
    self.execute(*args, **cmd_options)
  File "/home/mathijs/.virtualenvs/ledenbestand/lib/python3.4/site-packages/django/core/management/commands/test.py", line 74, in execute
    super(Command, self).execute(*args, **options)
  File "/home/mathijs/.virtualenvs/ledenbestand/lib/python3.4/site-packages/django/core/management/base.py", line 441, in execute
    output = self.handle(*args, **options)
  File "/opt/pycharm-3.4/helpers/pycharm/django_test_manage.py", line 89, in handle
    failures = TestRunner(test_labels, verbosity=verbosity, interactive=interactive, failfast=failfast)
  File "/opt/pycharm-3.4/helpers/pycharm/django_test_runner.py", line 228, in run_tests
    extra_tests=extra_tests, **options)
  File "/opt/pycharm-3.4/helpers/pycharm/django_test_runner.py", line 128, in run_tests
    return super(DjangoTeamcityTestRunner, self).run_tests(test_labels, extra_tests, **kwargs)
AttributeError: 'super' object has no attribute 'run_tests'
/home/mathijs/.virtualenvs/ledenbestand/bin/python3.4/opt/pycharm-3.4/helpers/pycharm/django\u test\u manage.py test leden.tests/home/mathijs/Development/ledenbestand
测试在17:00开始。。。
/home/mathijs/.virtualenvs/ledenbestand/lib/python3.4/importlib/_bootstrap.py:321:removedindjango19警告:django.utils.unittest将在django 1.9中删除。
返回f(*args,**kwds)
/home/mathijs/.virtualenvs/ledenbestand/lib/python3.4/importlib/_bootstrap.py:321:removedindjango19警告:django.utils.unittest将在django 1.9中删除。
返回f(*args,**kwds)
回溯(最近一次呼叫最后一次):
文件“/opt/pycharm-3.4/helpers/pycharm/django_test_manage.py”,第127行,在
utility.execute()
文件“/opt/pycharm-3.4/helpers/pycharm/django_test_manage.py”,执行中的第102行
PycharmTestCommand()。从_argv(self.argv)运行_
文件“/home/mathijs/.virtualenvs/ledenbestand/lib/python3.4/site packages/django/core/management/commands/test.py”,第30行,在运行时从
超级(命令,自我)。从_argv(argv)运行_
文件“/home/mathijs/.virtualenvs/ledenbestand/lib/python3.4/site-packages/django/core/management/base.py”,第390行,运行中来自
self.execute(*args,**cmd_选项)
文件“/home/mathijs/.virtualenvs/ledenbestand/lib/python3.4/site packages/django/core/management/commands/test.py”,第74行,在execute中
super(命令,self).execute(*args,**选项)
文件“/home/mathijs/.virtualenvs/ledenbestand/lib/python3.4/site packages/django/core/management/base.py”,第441行,在execute中
输出=self.handle(*args,**选项)
文件“/opt/pycharm-3.4/helpers/pycharm/django_test_manage.py”,第89行,在句柄中
failures=TestRunner(测试标签,详细性=详细性,交互式=交互式,failfast=failfast)
文件“/opt/pycharm-3.4/helpers/pycharm/django_test_runner.py”,第228行,运行中测试
额外测试=额外测试,**选项)
文件“/opt/pycharm-3.4/helpers/pycharm/django_test_runner.py”,第128行,运行测试中
返回super(DjangoTeamcityTestRunner,self)。运行测试(测试标签,额外测试,**kwargs)
AttributeError:“超级”对象没有“运行测试”属性

你们知道我如何解决这个问题吗?

PyCharm v4.0+中似乎存在一些已知问题,这些问题在使用Django v1.8时会导致此错误消息:

问题14401现在在一些内部版本中被标记为已修复,但尚不清楚PyCharm的哪个发布版本将得到修复