pytest执行用例时从conftest.py抛出ModuleNotFoundError:No module named ‘XXX‘异常的解决办法

问题描述

本地运行正常,集成到Jenkins后使用执行 Windows 批处理命令运行测试用例时报错:

bash 复制代码
D:\PycharmProject\ZeppAndroid>pytest -vs  testcase\test_login.py --alluredir=report/allure_json --clean-alluredir 
ImportError while loading conftest 'D:\PycharmProject\ZeppAndroid\testcase\conftest.py'.
testcase\conftest.py:2: in <module>
    from po.prepare import *
E   ModuleNotFoundError: No module named 'po'

解决办法

经排查确认模块导入的方式是正确的,conftest.py却没有成功地引入这个模块,这里就涉及到执行路径的关系,testcase目录在项目根目录下,是pytest的覆盖范围,我们只需要改变conftest.py的执行路径就可以了,在conftest.py模块中添加以下代码

bash 复制代码
import sys, os

sys.path.append((os.path.abspath(os.path.join(os.path.dirname(__file__), '../'))))
相关推荐
qq_433716951 天前
Selenium+Pytest自动化测试框架 ------ 禅道实战
自动化测试·软件测试·selenium·单元测试·pytest·接口测试·压力测试
blues_C2 天前
Pytest-Bdd-Playwright 系列教程(11):场景快捷方式
自动化测试·pytest·bdd·playwright
幸运的星竹2 天前
pytest结合allure做接口自动化
自动化·pytest
blues_C3 天前
Pytest-Bdd-Playwright 系列教程(12):步骤参数 & parsers参数解析
自动化测试·pytest·bdd·playwright
胜天半月子5 天前
pytest | 框架的简单使用
运维·pytest
blues_C5 天前
Pytest-Bdd-Playwright 系列教程(10):配置功能文件路径 & 优化场景定义
自动化测试·软件测试·pytest·bdd·playwright
bigbig猩猩6 天前
pytest中的断言:深入解析与实践
pytest
CSXB996 天前
三十八、Python(pytest框架-上)
python·功能测试·测试工具·单元测试·pytest
漫漫人生路^_^7 天前
unittest和pytest
pytest
_可乐无糖7 天前
使用--log-file保存pytest的运行日志
pytest