IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> Python知识库 -> python报错ModuleNotFoundError: No module named ‘configs‘ -> 正文阅读

[Python知识库]python报错ModuleNotFoundError: No module named ‘configs‘

问题:项目根目录执行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_module
    return _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_module
    exec(co, module.__dict__)
testCase\apiCase\business\conftest.py:5: in <module>
    from configs.env import NAME_PSW
E   ModuleNotFoundError: No module named 'configs'

=============================================================================== short test summary info ===============================================================================
FAILED  - ModuleNotFoundError: No module named 'configs'
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! Interrupted: 1 error during collection !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

Results (0.62s):

#报错信息
E   ModuleNotFoundError: No module named 'configs'

问题原因:

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

解决办法

设定pythonpath,统一相对路径起点

1.通过python -m pytest -s 运行测试用例,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部门初始化

tc000001
 testCase/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文件,用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


  Python知识库 最新文章
Python中String模块
【Python】 14-CVS文件操作
python的panda库读写文件
使用Nordic的nrf52840实现蓝牙DFU过程
【Python学习记录】numpy数组用法整理
Python学习笔记
python字符串和列表
python如何从txt文件中解析出有效的数据
Python编程从入门到实践自学/3.1-3.2
python变量
上一篇文章      下一篇文章      查看所有文章
加:2022-03-11 22:09:03  更:2022-03-11 22:10:07 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/15 21:36:54-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码