python - Python 测试在 ubuntu 上本地运行,但在通过 Jenkins 运行时失败,出现错误“导入测试模块'/var/lib/jenkins/workspace”时出现错误“ImportError”
问题描述
Jenkins 设置在 Ubuntu 上。
本地:使用 python 3.6 创建了一个虚拟环境,使用 pythom -m pytest - ./{test.py} 通过命令行运行测试,成功
詹金斯工作:
在 Build > Shell 脚本中,以与本地相同的方式创建虚拟环境并运行命令。
python3.6 -m venv jenkins-venv
源 ${WORKSPACE}/jenkins-venv/bin/activate
pip install --no-cache-dir -r ${WORKSPACE}/project/requirements.txt
python -m pytest -v ${WORKSPACE}/project/test_day1.py
错误:在导入测试模块“/var/lib/jenkins/workspace/job_name/project/test_Login.py”时收集脚本/ ImportError 错误。
提示:确保您的测试模块/包具有有效的 Python 名称。
ModuleNotFoundError:没有命名的模块
解决方案
如果您的 PATH 变量在您的机器上包含该模块的目录但不在 Jenkins 上,则会发生这种情况。
推荐阅读
- javascript - 事件委托无法与 if else 语句一起正常工作
- javascript - jQuery 动画延迟在 Chrome 中不起作用
- c++ - 为什么使用所有数字来测试素数比只使用素数更快
- css - 将 W3.CSS 类与 LESS 一起使用
- apache-spark - Spark partitionBy | 按列值而不是 columnName={value} 保存
- python - 如何解决这个复杂的循环问题?
- html - p 标签脱离 div 主体
- r - 如何汇总由另一组 id 分组的数据框中的一组 id 值
- r - 在 R 中使用管道工库时解决“if (stri_startswith_fixed(body, "{")) { :..." 中的警告
- leaflet - 从滚动的传单地图中获取真实坐标