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

Locust结合Selenium运行时Web UI统计数据无法显示问题求助

问题描述
  • 结合Selenium代码运行Locust压测工具时,统计数据无法在Web UI中显示
  • 脚本已确认成功运行,但Locust的Web界面中没有填充任何统计数据

相关截图:
代码示例截图
Locust统计界面截图

解决思路
  1. 规范Locust任务定义
    必须把Selenium操作代码放在被@task装饰器标记的方法里,或者TaskSet类的任务函数中——Locust只会统计被识别为任务的代码执行数据。示例写法:

    from locust import User, task, between
    
    class SeleniumTestUser(User):
        wait_time = between(1, 2)
    
        def on_start(self):
            # 初始化WebDriver实例
            from selenium import webdriver
            self.driver = webdriver.Chrome()
    
        @task
        def run_selenium_flow(self):
            self.driver.get("https://your-test-site.com")
            # 执行你的页面操作逻辑
            # ...
    
        def on_stop(self):
            self.driver.quit()
    
  2. 排查隐性异常
    脚本看似运行,可能存在未捕获的异常导致任务未正常完成。在任务代码中添加异常捕获并打印日志,或者查看Locust控制台输出,确认是否有报错:

    @task
    def run_selenium_flow(self):
        try:
            self.driver.get("https://your-test-site.com")
            # 操作逻辑
        except Exception as e:
            print(f"任务执行出错: {str(e)}")
            raise # 重新抛出异常让Locust统计失败请求
    
  3. 确认User类配置正确
    用Selenium时不要直接继承HttpUser,要自定义继承User的类,并在on_start/on_stop中正确初始化和销毁WebDriver,避免资源泄漏或实例未绑定的问题。

  4. 检查运行模式与数据同步
    如果是分布式运行Locust,确保主节点和工作节点网络连通,工作节点能正常将任务数据上报到主节点。单节点运行的话,刷新Web UI等待片刻,可能是数据延迟。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.29 15:45:02