为运行测试与从命令行运行程序获取不同的 ModuleNotFound 错误

制作

我用下面的确切树做了一个项目。

/ project
   / logic
     - app.py
     - utils.py
     - exceptions.py
   / tests
     - tests.py
   - README
   - requirements.txt

该代码旨在从命令行运行。app.py包含主要逻辑。

在 中app.py,我像这样导入 utils:from utils import validate_args

所以当我运行时python app.py,一切都按预期进行。

但是当我运行时nosetests,它立即失败,引用utilsinapp.py的原因是:

File ".../project/app.py", line 4, in <module>
  ModuleNotFoundError: No module named 'utils'

这可以通过将导入更改为 来解决.utils,但随后命令行命令失败:

ModuleNotFoundError: No module named '__main__.utils'; '__main__' is not a package

我曾尝试将__init__.py文件以各种组合添加/project,/logic/tests目录中,但无济于事 - 但老实说,我只是在猜测。我在导入逻辑中遗漏了什么?

制作

我通过使用 -m 标志运行程序来解决这个问题......天啊!

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

在python中使用flask获取ModuleNotFound错误

Python嵌套导入'ModuleNotFound'错误

命令行运行错误

从命令行运行空手道测试会返回surefire-plugin错误

从命令行运行mfp时在Mac上找不到命令错误

Django中的ModuleNotFound错误。无法解决错误

从命令行运行“ takeown”时,为什么会出现特权错误?

如何从命令行运行IPython脚本-魔术函数的语法错误,%

Python 脚本不会从命令行运行。它显示没有错误

ModuleNotFound错误Django和Heroku部署

如何解决IDLE中的ModuleNotFound错误?

gunicorn ModuleNotFound错误,以前可以正常工作

带有 CherryPy 的 Django - ModuleNotFound 错误

Jupyter中导入熊猫的ModuleNotFound错误

Azure函数ModuleNotFound错误'azure.keyvault'

如何从命令行运行程序?

从命令行运行相同的脚本时,从 scala 执行 python 脚本给出错误不会

使用“mvn test”从命令行运行会在找不到依赖 jar 的情况下出现错误

获取从命令行运行程序时输入的参数?

ModuleNotFound错误-Windows 10中的Anaconda Navigator 1.9.6上的Tensorflow

尝试导入嵌套模块时ModuleNotFound错误在Python

尝试导入python模块会返回ModuleNotFound错误

通过可执行文件(.exe)运行程序时出现错误时如何保持命令行打开

应用程序在本地运行,使用ModuleNotFound在PyPi中失败

在本地运行Web应用程序时使用ModuleNotFound

在尝试运行C pthread程序的命令行中获取权限被拒绝的错误

wix-错误CNDL0004:从命令行运行时,文件元素包含意外的属性“ src”

通过命令行运行时出现Maven编译错误 - Cucumber Maven Project

从Linux命令行运行Matlab函数-语法错误?