Search code examples
performancelocust

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


I'm looking for an alternative tool to Gatling and found Locust. I found it's powerful but I wonder how can I extract a Json value and then using that value in the Json payload of the next request (please note the Json payload is in different file). Like in Gatling we can use saveAs() and the value will be store in the session variable, then we can put that value in Json payload.

Thanks, Hoang


Solution

  • Locust is pretty much just Python, using the requests http client, so look in to the requests documentation for more info.

    Lets assume /login returns a session_id in the json response that we want to use in future requests. You would then do something like this in your task:

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