【发布时间】:2013-08-01 07:08:38
【问题描述】:
我有一个 django-project,它的应用程序是这样的:
在应用程序/应用程序中,像往常一样有视图/模型/网址。
"runserver" 与命令配合良好
./manage.py runserver --settings=mysettings 0:8000
但是当我尝试使用下面的命令运行 unittest 时,遇到了 ImportError。
./manage.py test --settings=mysettings
=========================================
Traceback (most recent call last):
File "/Users/lethe/.envs/django/lib/python2.7/site-packages/nose/loader.py", line 413, in loadTestsFromName
addr.filename, addr.module)
File "/Users/lethe/.envs/django/lib/python2.7/site-packages/nose/importer.py", line 47, in importFromPath
return self.importFromDir(dir_path, fqname)
File "/Users/lethe/.envs/django/lib/python2.7/site-packages/nose/importer.py", line 94, in importFromDir
mod = load_module(part_fqname, fh, filename, desc)
File "/Users/lethe/PycharmProjects/phone-buddy-oms/src/apps/downloads/tests/test_downloads_models.py", line 5, in <module>
from apps.models import (AppSource, AppCategory, App, Merchant, Apk)
ImportError: cannot import name Apk
似乎 django unittest frame 无法告诉应用程序或应用程序/应用程序,我尝试使用 django-nose 运行但失败并出现类似错误。
除了更改“应用程序/应用程序”的名称之外,还有其他解决方案吗?谢谢。
【问题讨论】:
-
运行
runserver和运行test时的Python 路径是什么(在sys.path中可用)?我强烈建议重命名您的根应用程序文件夹或“应用程序”应用程序,但我们可以通过确保您的路径设置正确来解决它。 -
看起来好像您正在使用该屏幕截图中的 pycharm。 This page 可能会有所帮助。
-
哪个版本的 django?
-
我正在使用 virtualenv,我的 sys.path 包含我的项目目录:''myproject/src',而所有 python 文件都在 src/apps 下。
标签: python django unit-testing