Locust脚本print内容无法在PowerShell显示,如何查看响应?
Locust脚本响应内容查看方案
你遇到的问题是因为Locust默认会拦截标准输出(stdout),直接用print()的内容不会显示在PowerShell控制台里,试试下面几种解决方法:
方法一:改用Locust内置日志系统输出
Locust自带日志模块,用它打印内容就能正常输出到控制台或日志文件。修改你的脚本如下:
from locust import HttpUser, between, task import logging # 新增日志模块导入 class LoadValues(HttpUser): def __init__(self, *args, **kwargs): super().__init__(*args, **kwargs) self.logger = logging.getLogger(__name__) # 初始化日志对象 def _run_read_ts(self, series_list, resolution, start, end): tsIds = ",".join(map(str, series_list)) # 数字转字符串后拼接,避免报错 # 注意:去掉startUtc后面的空格,否则接口可能解析参数失败 resp= self.client.get(f'/api/loadValues?tsIds={tsIds}&resolution={resolution}&startUtc={start}&endUtc={end}', headers={'X-API-KEY': 'sss='}) self.logger.info("Response content: %s", resp.text) # 用日志替代print @task def test_get(self): self._run_read_ts([98429], 'PT1H', '2020-05-11T09%3A17%3A47.478Z', '2023-05-11T09%3A17%3A47.478Z')
方法二:运行Locust时指定日志级别
修改脚本后,运行Locust时需要指定日志级别,才能在PowerShell看到输出。比如用INFO级别:
locust -f 你的脚本文件名.py --loglevel INFO
如果需要更详细的调试信息,可以换成--loglevel DEBUG。
方法三:查看日志文件
如果Locust默认生成了日志文件,或者你运行时指定了日志路径,响应内容会被写入对应文件,直接打开文件就能查看。
额外提示:你脚本里startUtc= {start}有个多余空格,会导致请求参数变成startUtc= 2020-xxx,可能被接口判定为无效参数,建议去掉这个空格。
内容的提问来源于stack exchange,提问作者Magnus Jensen
相关产品推荐
相关产品推荐

