cosmos-sdk/tests/systemtests
dependabot[bot] 6caa2377f8
build(deps): Bump github.com/cometbft/cometbft from 0.38.8 to 0.38.15 in /tests/systemtests (#22450)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-07 09:05:32 +00:00
..
testdata test: migrate e2e/tx tests to systemtest (#22152) 2024-10-24 09:18:37 +00:00
.gitignore
account_test.go
auth_test.go test(system): check feePayers signature (#22389) 2024-10-28 18:59:35 +00:00
authz_test.go
bank_test.go
bankv2_test.go
circuit_test.go test: add x/circuit system tests (#22331) 2024-10-24 09:29:41 +00:00
cli.go
cometbft_client_test.go
distribution_test.go
export_test.go test: migrate e2e/genutil to systemtest (#22325) 2024-10-25 07:55:29 +00:00
fraud_test.go
genesis_io.go
getting_started.md
go.mod build(deps): Bump github.com/cometbft/cometbft from 0.38.8 to 0.38.15 in /tests/systemtests (#22450) 2024-11-07 09:05:32 +00:00
go.sum build(deps): Bump github.com/cometbft/cometbft from 0.38.8 to 0.38.15 in /tests/systemtests (#22450) 2024-11-07 09:05:32 +00:00
gov_test.go
group_test.go
io_utils.go
main_test.go
Makefile ci: increase test-system timeout (#22386) 2024-10-28 12:36:40 +00:00
mint_test.go
node_utils.go
README.md
rest_cli.go
rpc_client.go
snapshots_test.go
staking_test.go
system.go test: migrate e2e/genutil to systemtest (#22325) 2024-10-25 07:55:29 +00:00
test_runner.go
testnet_init.go
tx_test.go build(deps): Bump github.com/prometheus/common from 0.60.0 to 0.60.1 (#22362) 2024-10-27 04:29:16 +00:00
unordered_tx_test.go
upgrade_test.go

Testing

Test framework for system tests. Starts and interacts with a (multi node) blockchain in Go. Supports

  • CLI
  • Servers
  • Events
  • RPC

Uses:

  • testify
  • gjson
  • sjson

Server and client side are executed on the host machine.

Developer

Test strategy

System tests cover the full stack via cli and a running (multi node) network. They are more expensive (in terms of time/ cpu) to run compared to unit or integration tests. Therefore, we focus on the critical path and do not cover every condition.

How to use

Read the getting_started.md guide to get started.

Execute a single test

go test -tags system_test -count=1 -v . --run TestStakeUnstake  -verbose

Test cli parameters

  • -verbose verbose output
  • -wait-time duration - time to wait for chain events (default 30s)
  • -nodes-count int - number of nodes in the cluster (default 4)

Port ranges

With n nodes:

  • 26657 - 26657+n - RPC
  • 1317 - 1317+n - API
  • 9090 - 9090+n - GRPC
  • 16656 - 16656+n - P2P

For example Node 3 listens on 26660 for RPC calls

Resources

Disclaimer

This is based on the system test framework in wasmd built by Confio.