Locust测试无法运行:用户未执行且抛出Base Host未指定错误
Locust测试无法运行:用户未执行且抛出Base Host未指定错误
看起来你的问题根源已经在日志里明明白白写出来啦——Locust抛出的LocustError直接指出:必须指定基础主机(base host),要么在User类的host属性里设置,要么启动时用命令行--host参数指定。这也是为什么你看不到用户执行任务的核心原因:用户实例根本初始化失败了,自然不会跑任何请求。
给你两种快速解决的方式:
方式一:在User类中直接定义host属性
修改你的WebsiteUser类,添加一行host配置,对应你任务中相对路径的根域名(也就是homepage、getEvent等任务里请求的基础地址):
class WebsiteUser(HttpUser): wait_time = between(1, 5) # 添加这行,指定相对路径对应的基础主机 host = "https://staging-ticket.revid.my" # 其他原有代码保持不变
⚠️ 注意:你on_start里的post请求是完整的绝对URL,这个配置不会影响它,完全没问题。
方式二:启动时通过命令行指定host
如果你不想修改代码,也可以在启动Locust脚本时加上--host参数:
locust -f 你的脚本文件名.py --host=https://staging-ticket.revid.my
之前能正常运行可能是你当时启动时加了--host参数,或者脚本里曾经有host配置后来不小心删掉了。现在补上之后,用户实例就能正常初始化,任务和on_start里的请求也都会正常执行啦。
备注:内容来源于stack exchange,提问作者Ivan
相关产品推荐
相关产品推荐

