python - Django 测试异常 : "need more than 1 value to unpack"

标签 python django unit-testing

我正在开发一个 Django 应用程序,但似乎无法运行我的第一个测试,因为与固定装置相关的错误。当我执行“python manage.py test”时,出现此错误:

堆栈跟踪

Creating test database for alias 'default'...
E
======================================================================
ERROR: setUpClass (polladmin.tests.ModelsTestCase)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/Users/username/Documents/ratchit/venv/lib/python2.7/site-packages/django/test/testcases.py", line 956, in setUpClass
    'database': db_name,
  File "/Users/username/Documents/ratchit/venv/lib/python2.7/site-packages/django/core/management/__init__.py", line 120, in call_command
    return command.execute(*args, **defaults)
  File "/Users/username/Documents/ratchit/venv/lib/python2.7/site-packages/django/core/management/base.py", line 444, in execute
    output = self.handle(*args, **options)
  File "/Users/username/Documents/ratchit/venv/lib/python2.7/site-packages/django/core/management/commands/loaddata.py", line 60, in handle
    self.loaddata(fixture_labels)
  File "/Users/username/Documents/ratchit/venv/lib/python2.7/site-packages/django/core/management/commands/loaddata.py", line 90, in loaddata
    self.load_label(fixture_label)
  File "/Users/username/Documents/ratchit/venv/lib/python2.7/site-packages/django/core/management/commands/loaddata.py", line 141, in load_label
    for obj in objects:
  File "/Users/username/Documents/ratchit/venv/lib/python2.7/site-packages/django/core/serializers/json.py", line 85, in Deserializer
    six.reraise(DeserializationError, DeserializationError(e), sys.exc_info()[2])
  File "/Users/username/Documents/ratchit/venv/lib/python2.7/site-packages/django/core/serializers/json.py", line 79, in Deserializer
    for obj in PythonDeserializer(objects, **options):
  File "/Users/username/Documents/ratchit/venv/lib/python2.7/site-packages/django/core/serializers/python.py", line 96, in Deserializer
    Model = _get_model(d["model"])
  File "/Users/username/Documents/ratchit/venv/lib/python2.7/site-packages/django/core/serializers/python.py", line 166, in _get_model
    return apps.get_model(model_identifier)
  File "/Users/username/Documents/ratchit/venv/lib/python2.7/site-packages/django/apps/registry.py", line 201, in get_model
    app_label, model_name = app_label.split('.')
DeserializationError: Problem installing fixture '/Users/username/Documents/ratchit/polladmin/fixtures/models.json': need more than 1 value to unpack

----------------------------------------------------------------------
Ran 0 tests in 0.006s

FAILED (errors=1)
Destroying test database for alias 'default'...

polladmin/tests.py

from django.test import TestCase

from models import *

class ModelsTestCase(TestCase):
    fixtures = ['models.json']

    def test_unique_title_for_polls(self):
        """ Test that new event cannot use the same title as existing """

        self.assertFalse(
            Poll.unique_title("Drinks"),
            "Duplicate event title not detected by Event.unique_title()")

polladmin/fixtures/models.json

[
  {
    "model": "event",
    "fields": {
      "pk": 1,
      "title": "Monty Python at the Hollywood Bowl"
    }
  },
 {
   "model": "poll",
   "fields": {
     "event": 1,
     "title": "Drinks"
   }
 },
 {
   "model": "poll",
   "fields": {
     "event": 1,
     "title": "Food"
   }
 }
]

最佳答案

你应该检查你的灯具,模型值必须是以下格式:

app_name.model_name

例如(考虑包含事件模型的应用程序被命名为事件):

[
  {
    "model": "events.event",
    "fields": {
      "pk": 1,
      "title": "Monty Python at the Hollywood Bowl"
    }
  },
]

希望对你有帮助

关于python - Django 测试异常 : "need more than 1 value to unpack",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32315498/

相关文章:

python - 使用 Google App Engine GQL 查找给定半径内的所有位置

python - 如何在 Keras API 中将数组列表作为输入

c# - xUnit.NET 有什么好的文档/书籍/教程吗?

python - 从包中获取 Python 包分发版本

javascript - Python 和 JS [object HTMLSelectElement] 和 [object HTMLInputElement] 声明问题

python - 将具有外键关系的两个模型数据传递给一个html模板

python - 将原始 SQL 查询转换为具有多个连接的 Django ORM

python - Django:查询集未保存对值的更改?

swift - 如何使用 UI 单元测试获取嵌入式框架的 Xcode 8 代码覆盖率

c# - 如何在 ASP.NET Web API 中对自定义 JsonConverter 进行单元测试?