Test a REST API where the actual response data is an async Webhook callback?

I’m looking for a api testing / load testing platform like Gatling that could consider a “test” to consist of:

  • Make a HTTP REST request to my service under test that responds immediately with 200 (assuming proper arguments) starting a session of a test instance cycle
  • The API testing platform can then accept an asynchronous webhook callback as the actual response to the initial request for a session
  • Validates that webhook response is correct and that completes the actual test for that session
  • Generates the stats for the session
  • Can do that for lots of sessions in a load testing scenario
  • Able to handle the webhook response in a way that doesn’t impact the load testing stats

Your diagram is not really correct:

  • 1 is sent by a client
  • 5 is received by a server

Maybe in your real application those different components are embedded inside a single monolith, but they are different concerns.

We have implemented this kinds of things in the past for some customers (contract, not free/open-source, please reach out to contact at gatling dot io if you’re interested) but another way would be that you implement an API that serves the “Real Response Payload” that the load test client would poll.

Right, the application would not be like this. But I need the API/Load Tester to be able to consider 1 and 5 to be of the same session to determine the sessions end-to-end response time and to determine if the response is valid in relation to the request.

So need a load tester that can have a scalable webhook receiver service and use the results in context with the request.

So you’re left with the 2 options I mentioned: either implement a webhook that can also be polled, or have some custom developments, possibly with a contract with us, to have this webhook in your Gatling injector.

Thanks for the help, will continue looking for something “off the shelf” before we can consider something custom.