Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/355.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python ModuleNotFoundError:没有名为';mysite.polls';在django教程中测试时_Python_Django_Testing - Fatal编程技术网

Python ModuleNotFoundError:没有名为';mysite.polls';在django教程中测试时

Python ModuleNotFoundError:没有名为';mysite.polls';在django教程中测试时,python,django,testing,Python,Django,Testing,我正在django文档站点编写教程: 我遇到了以下问题: 尝试在我的应用程序上运行测试时(使用Pycharm commndline中的:py manage.py测试轮询) 我发现以下错误: > ImportError: Failed to import test module: mysite.polls Traceback > (most recent call last): File > "C:\Users\micha\Anaconda3\envs\Django

我正在django文档站点编写教程:

我遇到了以下问题: 尝试在我的应用程序上运行测试时(使用Pycharm commndline中的:
py manage.py测试轮询
) 我发现以下错误:

> ImportError: Failed to import test module: mysite.polls Traceback
> (most recent call last):   File
> "C:\Users\micha\Anaconda3\envs\DjangoTutorial\lib\unittest\loader.py",
> line 470, in _find_test_path
>     package = self._get_module_from_name(name)   File "C:\Users\micha\Anaconda3\envs\DjangoTutorial\lib\unittest\loader.py",
> line 377, in _get_module_from_name
>     __import__(name) ModuleNotFoundError: No module named 'mysite.polls'
我的项目的文件结构如下:

看起来测试单元会自动在“民意测验”前面添加“mysite”

我尝试的是: 我试图在django测试文档中查找答案。 我能找到的唯一解决方案是将命令更改为如下所示:

py manage.py test polls.tests
然后它正确地运行我的测试

就我所了解的django文档而言,django应该自动查找轮询中的每个“test*”文件,但在我的情况下,它找不到“polls”模块


您能告诉我为什么会发生这种情况吗?

您的设置文件中是否包含了您的民意测验应用程序


已安装的应用程序?

来自django文档:“测试发现基于unittest模块的内置测试发现。默认情况下,这将在当前工作目录下名为“Test*.py”的任何文件中发现测试。”

它表示当前工作目录,即manage.py所在的位置,您的测试位于polls文件夹中,这就是为什么需要polls.test


您还可以提供目录的路径,以发现该目录下的测试:./manage.py test polls/

是的,我做了如下操作:
INSTALLED\u APPS=[#'polls',polls.apps.PollsConfig',django.contrib.admin',django.contrib.auth',django.contrib.contenttypes',django.contrib.sessions',django.contrib.messages',django.contrib.staticfiles',
]所以当我在/polls目录下工作时,命令'py../manage.py test polls'确实有效(所以使用double…)但是在/mysite目录下工作,命令“py manage.py test/polls”给出了一个旧错误。并且/polls在当前工作目录(/mysite)下,所以应该可以工作。不是吗?