cosmos-sdk/tests/systemtests
dependabot[bot] 7dacef600f
build(deps): Bump cosmossdk.io/log from 1.3.1 to 1.4.0 (#21205)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
2024-08-08 05:51:07 +00:00
..
.gitignore chore: move systemtests to tests folder (#20290) 2024-05-06 13:52:26 +00:00
account_test.go fix(systemtests): Fix account creation test to wait for TX committed (#21149) 2024-08-02 06:40:46 +00:00
cli.go chore(systemtests): better support for app v2 (#21128) 2024-08-02 10:16:03 +00:00
fraud_test.go chore(systemtests): better support for app v2 (#21128) 2024-08-02 10:16:03 +00:00
genesis_io.go chore: move systemtests to tests folder (#20290) 2024-05-06 13:52:26 +00:00
go.mod build(deps): Bump cosmossdk.io/log from 1.3.1 to 1.4.0 (#21205) 2024-08-08 05:51:07 +00:00
go.sum build(deps): Bump cosmossdk.io/log from 1.3.1 to 1.4.0 (#21205) 2024-08-08 05:51:07 +00:00
main_test.go chore: move systemtests to tests folder (#20290) 2024-05-06 13:52:26 +00:00
Makefile chore(systemtests): better support for app v2 (#21128) 2024-08-02 10:16:03 +00:00
node_utils.go test(systemtests): Add double signing test (#21115) 2024-07-31 20:54:46 +00:00
README.md chore: add test for account creation (#21053) 2024-07-25 06:22:27 +00:00
rpc_client.go chore: move systemtests to tests folder (#20290) 2024-05-06 13:52:26 +00:00
staking_test.go chore: move systemtests to tests folder (#20290) 2024-05-06 13:52:26 +00:00
system.go chore(systemtests): better support for app v2 (#21128) 2024-08-02 10:16:03 +00:00
test_runner.go chore: move systemtests to tests folder (#20290) 2024-05-06 13:52:26 +00:00
testnet_init.go chore(systemtests): better support for app v2 (#21128) 2024-08-02 10:16:03 +00:00
unordered_tx_test.go feat(tx)!: make timeout_height time based (#20870) 2024-07-29 11:53:27 +00:00
upgrade_test.go chore(systemtests): better support for app v2 (#21128) 2024-08-02 10:16:03 +00:00

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.

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.