如何解决为什么我在使用 Django 的覆盖工具时出现“KeyError”错误
我正在开发一个 django API。现在我在端点上做了一些测试,当我执行“python manage.py test”时一切顺利。但是当我使用标志 '--with-coverage' 或 'coverage run --source='.' manage.py 测试应用程序&&覆盖率报告'我收到错误'KeyError:'BREAK_LOOP'。有人可以帮我吗?
from django.test import TestCase
import requests
class Teste(TestCase):
url = "localhost://endpoint/"
def test(self):
token = self.token
headers={
'content-type' : 'application/json','Authorization' : token
}
response = requests.get(self.url,headers=headers)
self.assertEqual(response.status_code,403)
nosetests --with-coverage --verbosity=1
Traceback (most recent call last):
File "manage.py",line 21,in <module>
main()
File "manage.py",line 17,in main
execute_from_command_line(sys.argv)
File "/home/user/.virtualenvs/env/lib/python3.8/site-packages/django/core/management/__init__.py",line 401,in execute_from_command_line
utility.execute()
File "/home/user/.virtualenvs/env/lib/python3.8/site-packages/django/core/management/__init__.py",line 395,in execute
self.fetch_command(subcommand).run_from_argv(self.argv)
File "/home/user/.virtualenvs/env/lib/python3.8/site-packages/django/core/management/commands/test.py",line 23,in run_from_argv
super().run_from_argv(argv)
File "/home/user/.virtualenvs/env/lib/python3.8/site-packages/django/core/management/base.py",line 328,in run_from_argv
self.execute(*args,**cmd_options)
File "/home/user/.virtualenvs/env/lib/python3.8/site-packages/django/core/management/base.py",line 369,in execute
output = self.handle(*args,**options)
File "/home/user/.virtualenvs/env/lib/python3.8/site-packages/django/core/management/commands/test.py",line 53,in handle
failures = test_runner.run_tests(test_labels)
File "/home/user/.virtualenvs/env/lib/python3.8/site-packages/django_nose/runner.py",line 308,in run_tests
result = self.run_suite(nose_argv)
File "/home/user/.virtualenvs/env/lib/python3.8/site-packages/django_nose/runner.py",line 244,in run_suite
nose.core.TestProgram(argv=nose_argv,exit=False,File "/home/user/.virtualenvs/env/lib/python3.8/site-packages/nose/core.py",line 118,in __init__
unittest.TestProgram.__init__(
File "/usr/lib/python3.8/unittest/main.py",line 100,in __init__
self.parseArgs(argv)
File "/home/user/.virtualenvs/env/lib/python3.8/site-packages/nose/core.py",line 145,in parseArgs
self.config.configure(argv,doc=self.usage())
File "/home/user/.virtualenvs/env/lib/python3.8/site-packages/nose/config.py",line 346,in configure
self.plugins.configure(options,self)
File "/home/user/.virtualenvs/env/lib/python3.8/site-packages/nose/plugins/manager.py",line 284,in configure
cfg(options,config)
File "/home/user/.virtualenvs/env/lib/python3.8/site-packages/nose/plugins/manager.py",line 99,in __call__
return self.call(*arg,**kw)
File "/home/user/.virtualenvs/env/lib/python3.8/site-packages/nose/plugins/manager.py",line 167,in simple
result = meth(*arg,**kw)
File "/home/user/.virtualenvs/env/lib/python3.8/site-packages/nose/plugins/cover.py",line 104,in configure
import coverage
File "/home/user/.virtualenvs/env/lib/python3.8/site-packages/coverage/__init__.py",line 10,in <module>
from coverage.control import coverage,process_startup
File "/home/user/.virtualenvs/env/lib/python3.8/site-packages/coverage/control.py",line 13,in <module>
from coverage.html import HtmlReporter
File "/home/user/.virtualenvs/env/lib/python3.8/site-packages/coverage/html.py",in <module>
from coverage.results import Numbers
File "/home/user/.virtualenvs/env/lib/python3.8/site-packages/coverage/results.py",line 7,in <module>
from coverage.parser import CodeParser
File "/home/user/.virtualenvs/env/lib/python3.8/site-packages/coverage/parser.py",line 315,in <module>
OP_BREAK_LOOP = _opcode('BREAK_LOOP')
File "/home/user/.virtualenvs/env/lib/python3.8/site-packages/coverage/parser.py",line 274,in _opcode
return opcode.opmap[name]
KeyError: 'BREAK_LOOP'
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。