Start here. This is the direct spoken answer to practice first.
Why this question matters
Generating many requests is easy; reproducing a meaningful workload and interpreting the result is the real work. The test needs a question, a realistic traffic model, and server-side evidence.
I would begin with the critical user flows, expected and peak request rates, concurrency, payload and data distribution, ramp-up pattern, and target environment. The pass criteria would come from SLOs such as p95 or p99 latency, throughput, and error rate rather than an average response time alone. I would run against representative data and include authentication, reads, writes, and think time in realistic proportions. At the same time I would collect CPU, memory, GC, database, connection-pool, dependency, and queue metrics so a failed result identifies a likely bottleneck.