tsenart / vegeta

HTTP load testing tool and library. It's over 9000!
http://godoc.org/github.com/tsenart/vegeta/lib
MIT License
23.5k stars 1.36k forks source link

Proposal: Setting cookies/vars from previous result #247

Closed nuttmeister closed 6 years ago

nuttmeister commented 7 years ago

We are looking into using Vegeta not just as a load test, but for testing uptime and a bit more complex load tests such as making purchases that needs specific cookies and headers to be set based on a previous request.

I'm looking into making the necessary changes now and if you want you will get an pull request on it.

So in our case I'm thinking of implementing:

  1. Settings cookies / var statically before running attack.
  2. Setting cookies / var based on a previous GET, POST etc. based on body / headers. (And since many things are set by javascript we need to be able to quite intelligently regex out the cookie var, name etc... since we don't want to include an javascript interpreter)

Sounds interesting or is it outside the scope of the intention of the program. If so, then let me know :)

But was thinking of having it be able to run more advanced load tests that depends on results on other queries. But also as a drop in replacement for say, Pingdom. Being able to run "Uptime/Transaction" on sites for example, even running as a lambda function on aws.

daluu commented 7 years ago

I think the proposal is good, particularly item 2. If it's outside the scope of the original project, you could have it be an enhanced fork.

Just like wrk2 is an improvement over wrk.

tsenart commented 6 years ago

Sounds interesting or is it outside the scope of the intention of the program. If so, then let me know :)

This is quite outside the scope of Vegeta which was originally to load test HTTP services and APIs, not complex web applications user flows.