Knative performance tests are tests geared towards producing useful performance
metrics of the knative system. As such they can choose to take a closed-box
point-of-view of the system and use it just like an end-user might see it. They
can also go more open-boxy to narrow down the components under test.
Load Generator
Knative uses vegeta to generate HTTP load.
It can be configured to generate load at a predefined rate. Officially it
supports constant rate and sine rate, but if you want to generate load at a
different rate, you can write your own pacer by implementing
Pacer
interface. Custom pacer implementations used in Knative tests are under
pacers.
Benchmarking
Knative uses mako for benchmarking. It
provides a set of tools for metrics data storage, charting, statistical
aggregation and performance regression analysis. To use it to create a benchmark
for Knative and run it continuously, please refer to
Benchmarks.md.