热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

python报错ModuleNotFoundError:Nomodulenamed‘configs‘

问题:项目根目录执行pytest命令报错,找不到该模块E:\桌面\code\combatpytest-sTestsessionstarts(pla

问题:项目根目录执行pytest命令报错,找不到该模块

E:\桌面\code\combat>pytest -s
Test session starts (platform: win32, Python 3.8.4, pytest 6.2.5, pytest-sugar 0.9.4)
rootdir: E:\桌面\code\combat
plugins: allure-pytest-2.9.45, html-3.1.1, metadata-1.11.0, sugar-0.9.4
collecting ...
―――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――― ERROR collecting test session
――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――
d:\py3.8\lib\importlib\__init__.py:127: in import_modulereturn _bootstrap._gcd_import(name[level:], package, level)
<frozen importlib._bootstrap>:1014: in _gcd_import???
<frozen importlib._bootstrap>:991: in _find_and_load???
<frozen importlib._bootstrap>:975: in _find_and_load_unlocked???
<frozen importlib._bootstrap>:671: in _load_unlocked???
d:\py3.8\lib\site-packages\_pytest\assertion\rewrite.py:170: in exec_moduleexec(co, module.__dict__)
testCase\apiCase\business\conftest.py:5: in <module>from configs.env import NAME_PSW
E ModuleNotFoundError: No module named &#39;configs&#39;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61; short test summary info &#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;
FAILED - ModuleNotFoundError: No module named &#39;configs&#39;
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! Interrupted: 1 error during collection !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!Results (0.62s):

#报错信息
E ModuleNotFoundError: No module named &#39;configs&#39;

问题原因:

  • python寻找包和模块首先根据文件自身为起点指定相对路径&#xff0c;其次根据设定的pythonpath为起点指定相对路径。
  • 而现在的项目由于层级结构复杂&#xff0c;并不统一&#xff0c;因此根据文件自身为起点指定的相对路径不可用


解决办法


设定pythonpath&#xff0c;统一相对路径起点

1.通过python -m pytest -s 运行测试用例&#xff0c;python会把当前目录添加到pythonpath

E:\桌面\code\combat>python -m pytest -s
Test session starts (platform: win32, Python 3.8.4, pytest 6.2.5, pytest-sugar 0.9.4)
rootdir: E:\桌面\code\combat
plugins: allure-pytest-2.9.45, html-3.1.1, metadata-1.11.0, sugar-0.9.4
collecting ... --登录操作初始化--
--开始清楚部门数据--
tc000001部门初始化tc000001testCase/apiCase/business/test_organiz.py ✓ 25% ██▌
--tc000091部门初始化--
--tc000091进行清楚操作--testCase/apiCase/business/test_organiz.py ✓✓ 50% █████
--新增部门的初始化--
--tc000002进行部门初始化操作----tc000002进行部门清除操作--testCase/apiCase/business/D-研发部/test_exist_organiz.py ✓ 75% ███████
--tc000051进行部门初始化操作--
--tc000051进行部门清除操作--
--新增部门的清除--
-清楚部门数据完成--
--登录初始化完成--testCase/apiCase/business/D-研发部/test_exist_organiz.py ✓✓ 100% ███████
███Results (3.15s):4 passed

2.通过项目跟目录创建一个空的conftest.py文件&#xff0c;用pytest可以直接指定当前根目录到pythonpath
在这里插入图片描述

E:\桌面\code\combat>pytest
Test session starts (platform: win32, Python 3.8.4, pytest 6.2.5, pytest-sugar 0.9.4)
rootdir: E:\桌面\code\combat
plugins: allure-pytest-2.9.45, html-3.1.1, metadata-1.11.0, sugar-0.9.4
collecting ... testCase/apiCase/business/test_organiz.py ✓ 25% ██▌testCase/apiCase/business/test_organiz.py ✓✓ 50% █████testCase/apiCase/business/D-研发部/test_exist_organiz.py ✓ 75% ███████testCase/apiCase/business/D-研发部/test_exist_organiz.py ✓✓ 100% ███████
███Results (2.37s):4 passed


推荐阅读
author-avatar
李容怡姿齐芷全
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有