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__), '../'))))
相关推荐
慌糖1 天前
[特殊字符]️ 基于Pytest的自动化测试框架架构解析
pytest
旦莫2 天前
Pytest教程:为什么Pytest要用插件模式?
python·单元测试·自动化·pytest
三次握手四次挥手3 天前
基于Python+Pytest实现自动化测试(全栈实战指南)
开发语言·python·自动化·k8s·apache·pytest·代码规范
世界的尽头在哪里4 天前
python测试框架之pytest
开发语言·python·测试工具·单元测试·pytest
胆大的5 天前
怎样才能设计好的自动化测试用例
自动化·测试用例·pytest
雨中夜归人8 天前
自动化测试工具playwright中文文档-------14.Chrome 插件
python·测试工具·自动化·pytest·playwright
小马哥编程12 天前
【软件测试】自动化测试框架Pytest + Selenium的使用
selenium·测试工具·pytest
明月与玄武15 天前
Pytest多环境切换实战:测试框架配置的最佳实践!
pytest·pytest框架环境切换