Develop a binary for performance testing which can execute load tests against "real" tapd instances.
The tests need to be able to run in our infrastructure (regtest) and locally. For that, the perf tests need to be decoupled of the environment using dependency injection (tap rpc clients, chain interactions,...)
The binary is responsible for:
Setup Phase: Load generic configuration from a file, allowing command-line flag overrides. Configuration includes test selection, create rpc clients for the main tapd instances (Alice and Bob), Prometheus configuration, etc.
Test Execution:
set up phase for the specifc test (create more clients, load file data, etc..)
record metrics for the current execution
execute test logic
Shutdown: push test metrics to prometheus push gateway (some of them may be needed to be pulled from the tapd instances itself)
The binary will be compiled using go test -c, and custom configuration for specific tests will be loaded from a separate path.
Acceptance Criteria:
[x] Ability to load and override configurations.
[x] Execution of tests on tapd interfaces. <= Using mintBatchStressTest as show case
[ ] Collection and pushing of metrics. <= can be added in a follow up PR
Develop a binary for performance testing which can execute load tests against "real"
tapd
instances.The tests need to be able to run in our infrastructure (regtest) and locally. For that, the perf tests need to be decoupled of the environment using dependency injection (tap rpc clients, chain interactions,...)
The binary is responsible for:
Setup Phase: Load generic configuration from a file, allowing command-line flag overrides. Configuration includes test selection, create rpc clients for the main tapd instances (Alice and Bob), Prometheus configuration, etc.
Test Execution:
Shutdown: push test metrics to prometheus push gateway (some of them may be needed to be pulled from the tapd instances itself)
The binary will be compiled using
go test -c
, and custom configuration for specific tests will be loaded from a separate path.Acceptance Criteria:
mintBatchStressTest
as show casePart of #433