The tests run in four loop structures
- Multiple tests
- Number of validators
- Multiple datarate limits
- Ascending requests per second
A test is started:
init()
Init rps
Init numValidators
Init datarate
Setup platformOptions
Instantiate multiLauncher
Reset results
main() init() Clear datarate limits on the devices Set datarate limits on the devices
test() Start validators Init loadtest options
Sleep for 2 x blocktime
seconds
Run loadtest
Add rpsTried
to result
Add requestsGenerated
to result
Push result
from loadtest to results
advance()
advance() Stop validators
If rps < maxRps
:
Add rpsSteps
to rps
Sleep for `sleepSeconds`
test()
Else:
Save results
to file
If `numValidators` < `maxNumValidators`:
Increment `numValidatorsIndex`
Sleep for five seconds
main()
Else:
If `datarateIndex` < `maxDatarateIndex`:
Increment `datarateIndex`
Reset `numValidatorsIndex`
Sleep for five seconds
main()
Else:
Test finished