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

Locust脚本导入项目外部模块遇ModuleNotFoundError问题求助

解决Locust导入项目模块的ModuleNotFoundError问题

原因

Locust运行时,Python的模块搜索路径(sys.path)未包含你的项目根目录,导致无法识别Phoenix这类自定义包。其他工具(如behave)默认会将项目根目录加入搜索路径,因此不存在该问题。

解决方案

方法1:手动添加项目路径到sys.path

在Locust测试文件开头加入代码,将项目根目录的绝对路径添加到Python模块搜索路径:

import sys
import os
# 获取当前文件所在目录的绝对路径,根据项目结构调整层级(比如嵌套目录需多套一层os.path.dirname)
project_root = os.path.dirname(os.path.abspath(__file__))
sys.path.append(project_root)

# 后续导入语句保持不变
from Phoenix.APIs._Global import generateIlogsToken
from locust import HttpUser, task

方法2:设置PYTHONPATH环境变量

运行Locust前,先将项目根目录加入PYTHONPATH:

  • Linux/macOS:
export PYTHONPATH=/你的项目根目录绝对路径:$PYTHONPATH
locust -f getWalletInfoLocust.py
  • Windows(命令提示符):
set PYTHONPATH=C:\你的项目根目录绝对路径;%PYTHONPATH%
locust -f getWalletInfoLocust.py
  • Windows(PowerShell):
$env:PYTHONPATH = "C:\你的项目根目录绝对路径;$env:PYTHONPATH"
locust -f getWalletInfoLocust.py

方法3:将项目根作为Python包(推荐)

在项目根目录下创建空的__init__.py文件,然后切换到项目根目录执行Locust命令:

cd /你的项目根目录绝对路径
locust -f 你的测试文件相对路径/getWalletInfoLocust.py

验证方式

可在测试文件开头添加代码打印搜索路径,确认项目根目录是否已被包含:

import sys
print(sys.path)

内容的提问来源于stack exchange,提问作者X.Bovi

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.18 16:05:24