* de-mystify tests & run them in parallel (#1031) * test optimization for jenkins (#1093) * makefile cleanup * tests: split fast and slow go tests, closes #1055 * pr comments * restore circle conditions * fix need_abci * ... * docker run: no :Z for circle? * Remove cmd breaking comment |
||
---|---|---|
.. | ||
app | ||
circleci | ||
docker | ||
p2p | ||
persist | ||
utils | ||
README.md | ||
test_cover.sh | ||
test_libs.sh |
README.md
Tendermint Tests
The unit tests (ie. the go test
s) can be run with make test
.
The integration tests can be run wtih make test_integrations
.
Running the integrations test will build a docker container with local version of tendermint and run the following tests in docker containers:
- go tests, with --race
- includes test coverage
- app tests
- kvstore app over socket
- counter app over socket
- counter app over grpc
- persistence tests
- crash tendermint at each of many predefined points, restart, and ensure it syncs properly with the app
- p2p tests
- start a local kvstore app testnet on a docker network (requires docker version 1.10+)
- send a tx on each node and ensure the state root is updated on all of them
- crash and restart nodes one at a time and ensure they can sync back up (via fastsync)
- crash and restart all nodes at once and ensure they can sync back up
If on a release-x.x.x
branch, we also run
go test
for all our dependency libs (test/test_libs.sh)