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

Robot Framework从Python库导入变量报ModuleNotFoundError问题求助

Robot Framework自定义Python库导入项目变量模块报错解决方案

问题原因

Python导入模块时仅会搜索sys.path中包含的路径,你直接使用import Variables.myVariables时,项目根目录未被加入Python的模块搜索路径,因此无法识别Variables包。

运行时ModuleNotFoundError解决方案

方案1:动态添加项目根目录到搜索路径(推荐,无环境依赖)

在myLibrary.py的最开头添加如下代码,计算项目根目录并动态加入搜索路径:

import sys
from pathlib import Path

# 计算项目根目录:当前文件所在的Libraries文件夹的上级目录即为项目根目录
PROJECT_ROOT = Path(__file__).parent.parent.resolve()
sys.path.insert(0, str(PROJECT_ROOT))

# 之后再导入变量即可正常识别
import Variables.myVariables

方案2:配置PYTHONPATH环境变量

将项目根目录的绝对路径添加到系统的PYTHONPATH环境变量中:

  • Linux/macOS 临时生效:运行用例前执行export PYTHONPATH=/你的/项目/根目录/绝对路径:$PYTHONPATH
  • Windows 临时生效:运行用例前执行set PYTHONPATH=C:\你的\项目\根目录\绝对路径;%PYTHONPATH%
    也可以将该环境变量配置为系统永久生效,适配所有运行场景。

方案3:将项目配置为可安装包

在项目根目录新增pyproject.toml配置文件,将项目打包为可安装的Python包,安装到本地环境后即可直接导入所有模块,该方案适合中大型长期维护的项目。

VS Code Robot语言服务器识别问题解决方案

打开项目工作区的.vscode/settings.json文件,添加如下两项配置即可:

{
    // 配置Python语法分析的额外搜索路径
    "python.analysis.extraPaths": [
        "${workspaceFolder}"
    ],
    // 配置Robot Framework语言服务器的搜索路径
    "robot.pythonpath": [
        "${workspaceFolder}"
    ]
}

配置完成后重载VS Code窗口,即可正常识别自定义库的关键字,也不会再报模块不存在的错误。

注意事项

Variables文件夹下只要存在空的__init__.py文件即可被识别为Python包,无需添加额外内容。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.03 21:45:02