6

I want to establish the benchmark behavior of my API through performance testing.
The purpose is to ensure that the product meet or exceed requirements such as:

  • Throughput
  • Response time
  • Stability
  • Resource usage

Some of KPIs I'm aware of:

  • Average response time
  • Max connexion number
  • Success rate

Is there a number of other industry-defined KPIs and what are the most important metrics to consider when stress testing an API ?

1
  • You should read up on non-functional tests. Load testing, performance testing and stress test are some examples of this. They are not however interchangeable. You need to decide if you need to know the breaking point. For example, if you are offering a tax system, you need to account for a big part of the adult population to access the system when the annual tax season comes around. Realistic guesstimates are important. And keep in mind that x simultaneous requests is not equal to x concurrent users. If you need to support 600 concurrent users, it may be ok to have a max capof 400 reqs
    – JoSSte
    Commented Mar 8, 2023 at 21:24

1 Answer 1

0

May I suggest taking a look at JMeter (https://jmeter.apache.org). It's pretty much the OO standard for performance/load testing and comes with a lot of predefined report/KPI output types (https://jmeter.apache.org/usermanual/generating-dashboard.html). We use it extensively as part of our deployment chain for post build/deploy reporting on test environments. During maximum load testing we stream JMeter performance metrics into InfluxDB and visualise them realtime using Grafana https://grafana.com/grafana/dashboards/13644.

Not the answer you're looking for? Browse other questions tagged or ask your own question.