python - 突然在运行测试时我得到 "TypeError: ' NoneType' object is not iterable

标签 python django python-3.x django-1.7

这对我来说非常奇怪,直到今天早上一切都运行良好。

当我尝试使用以下命令运行我的单元测试时(我将 Python3 软链接(soft link)到 python)

clear; python manage.py test list tests/  

我现在收到以下错误消息:

Traceback (most recent call last):
  File "manage.py", line 10, in <module>
    execute_from_command_line(sys.argv)
  File "/usr/lib/python3.4/site-packages/django/core/management        /__init__.py", line 385, in execute_from_command_line
    utility.execute()
  File "/usr/lib/python3.4/site-packages/django/core/management        /__init__.py", line 377, in execute
    self.fetch_command(subcommand).run_from_argv(self.argv)
  File "/usr/lib/python3.4/site-packages/django/core/management/commands    /test.py", line 50, in run_from_argv
    super(Command, self).run_from_argv(argv)
  File "/usr/lib/python3.4/site-packages/django/core/management    /base.py", line 288, in run_from_argv
    self.execute(*args, **options.__dict__)
  File "/usr/lib/python3.4/site-packages/django/core/management/commands    /test.py", line 71, in execute
    super(Command, self).execute(*args, **options)
  File "/usr/lib/python3.4/site-packages/django/core/management    /base.py", line 338, in execute
    output = self.handle(*args, **options)
  File "/usr/lib/python3.4/site-packages/django/core/management/commands    /test.py", line 88, in handle
    failures = test_runner.run_tests(test_labels)
  File "/usr/lib/python3.4/site-packages/django/test/runner.py", line     146, in run_tests
    suite = self.build_suite(test_labels, extra_tests)
  File "/usr/lib/python3.4/site-packages/django/test/runner.py", line     101, in build_suite
    suite.addTests(tests)
  File "/usr/lib64/python3.4/unittest/suite.py", line 60, in addTests
    for test in tests:
TypeError: 'NoneType' object is not iterable

我最初认为我写的东西完全搞砸了一切,所以我将其保存为一个分支,在主分支中恢复到我确定有效的提交,但我得到了完全相同的错误消息。

我想不出我做了什么让事情像这样失败,事实上,上面没有指向任何写的东西(在我的例子中,我是相对较新的 Python/Django)让我很难调试错误。

我能想到的唯一改变的是我安装的 The Silver Searcher (我使用 vim)我删除了它,但仍然发生同样的错误。

我已经重新安装了django,但仍然无济于事。

这是在:

  • OpenSuse 13.2
  • Django 1.7
  • python 3.4.1

谁能帮帮我

  • 调试这个错误的原因(这样我就不会再掉进去了)
  • 如何解决这个问题?

谢谢

最佳答案

刚刚遇到这个错误,是我几个月前解决的一个问题引起的,不小心再次短暂地遇到了这个问题。

问题是,当您为 django 测试指定目录时,您应该为该目录使用 python 表示法,而不是标准的 shell 表示法。例如

正确 - project.tests.test_module

不正确 - project/tests/test_module.py

关于python - 突然在运行测试时我得到 "TypeError: ' NoneType' object is not iterable,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29855100/

相关文章:

python - 为什么我的代码在函数中连接服务器时不起作用,但当我使用 __init__ 调用连接时却工作正常?

python - 我用Python编写了一段代码,即使我使用break语句并继续,它仍然会进入Python :的无限循环

django - 有没有办法在管理搜索中搜索多个术语? Django

python - 在Python字符串中打印撇号

python - 单选按钮在 python 中无法正常工作

Python的多线程代码比单线程慢

python - __init__() 采用 1 个位置参数,但 2 个被赋予登录页面

python - 获取这些表格并将适当的团队关联在一起

linux - 如何将 pandas 从 0.17.1 版本升级到更高版本?

python - 我如何在 TensorFlow 中使用我自己的图像?