You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Pytest在Travis CI执行失败:无法找到主包

Travis CI 执行 pytest 报 KeyError: local('/home/travis/build/scossu/lakesuperior') 解决思路

刚踩过类似的坑,给你分享几个能快速排查的方向:

  • 同步本地与CI的依赖版本
    本地测试正常但CI报错,大概率是依赖版本不一致搞的鬼。老版本的pytest在解析conftest.py路径时存在已知bug,建议你在.travis.yml里指定固定的pytest版本,比如:

    pip install pytest==6.2.5
    

    或者直接把本地的requirements.txt同步到CI环境,确保所有依赖(包括pytest插件)版本完全匹配。

  • 检查conftest.py的状态
    你修改文档的时候有没有误动过conftest.py?比如移动了位置、修改了里面的路径相关代码?Travis CI中pytest会自动扫描项目根目录的conftest.py,如果文件缺失或者路径逻辑出错,就会触发这个KeyError。
    可以在Travis构建步骤里加一行调试命令,确认文件存在:

    ls -la /home/travis/build/scossu/lakesuperior
    
  • 清理Travis CI缓存
    CI的缓存有时候会残留旧的配置或依赖文件,导致路径解析混乱。去Travis项目的设置页面找到「Cache」选项,清空所有缓存后重新触发构建,说不定就能解决。

  • 确认pytest的执行路径
    检查.travis.yml里执行pytest的工作目录是不是项目根目录?如果是进入子目录后才跑的命令,pytest会找不到根目录的配置文件。可以在脚本里明确切换到根目录:

    script:
      - cd /home/travis/build/scossu/lakesuperior
      - pytest
    

如果还是没解决,建议在Travis构建日志里加pwd和echo $PYTHONPATH命令,看看当前工作路径和Python路径是否正确,能帮你更快定位问题。

内容的提问来源于stack exchange,提问作者user3758232

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.21 08:34:32