- For each benchmark in a suite:
- Fire event: Suite.onStart()
- For each benchmark:
- Fire event: Benchmark.onStart()
- For each sampled run
-
Run unit once to check for errors
- setup()
- testfn()
- teardown()
-
Run unit multiple times and measure results
- setup()
- for each Benchmark.count
a. testfn() - teardown()
-
Fire event: Benchmark.onCycle()
-
- Fire event: Benchmark.onComplete()
- Fire event: Suite.onCycle()
- Fire event: Suite.onComplete()