Locust 如何从响应中提取值然后用于下一个序列请求

How Locust can extract value from response then using for next sequence request

我正在寻找 Gatling 的替代工具并找到了 Locust。我发现它很强大,但我想知道如何提取 Json 值,然后在下一个请求的 Json 负载中使用该值(请注意 Json 负载在不同的文件中) .就像在 Gatling 中一样,我们可以使用 saveAs() 并将值存储在会话变量中,然后我们可以将该值放入 Json payload.

谢谢, 黄

Locust 几乎只是 Python,使用 requests http 客户端,因此请查看请求文档以获取更多信息。

让我们假设 /login returns json 响应中的 session_id 我们希望在未来的请求中使用。然后你会在你的任务中做这样的事情:

response = self.client.post("/login")
session_id = response.json()["session_id"]
self.client.post("/foo", json={"session_id": session_id})