go-ethereum/cmd/workload
2025-02-26 18:47:35 +01:00
..
queries add history mainnet artifact 2025-02-26 15:12:22 +01:00
filtertest.go cmd/workload: implement history tests 2025-02-26 12:38:51 +01:00
filtertestgen.go cmd/workload: move filter commands up one level 2025-02-26 13:03:11 +01:00
filtertestperf.go cmd/workload: move filter commands up one level 2025-02-26 13:03:11 +01:00
historytest.go cmd/workload: fix getBlockTransactionCountByNumber 2025-02-26 12:51:04 +01:00
historytestgen.go cmd/workload: add missing flags 2025-02-26 15:16:43 +01:00
main.go cmd/workload: move filter commands up one level 2025-02-26 13:03:11 +01:00
README.md cmd/workload: update README 2025-02-26 18:47:35 +01:00
testsuite.go cmd/workload: add missing flags 2025-02-26 15:16:43 +01:00

Workload Testing Tool

This tool performs RPC calls against a live node. It has tests for the Sepolia testnet and Mainnet. Note the tests require a fully synced node.

To run the tests against a Sepolia node, use:

> ./workload test --sepolia http://host:8545

To run a specific test, use the --run flag to filter the test cases. Filtering works similar to the go test command. For example, to run only tests for eth_getBlockByHash and eth_getBlockByNumber, use this command:

> ./workload test --sepolia --run History/getBlockBy http://host:8545

Regenerating tests

There is a facility for updating the tests from the chain. This can also be used to generate the tests for a new network. As an example, to recreate tests for mainnet, run the following commands (in this directory) against a synced mainnet node:

> go run . filtergen --queries queries/filter_queries_mainnet.json http://host:8545
> go run . historygen --history-tests queries/history_mainnet.json http://host:8545