Gyuho Lee 85e050a120 *: rename, clean up functional tests 7 lat temu
..
agent 85e050a120 *: rename, clean up functional tests 7 lat temu
cmd 85e050a120 *: rename, clean up functional tests 7 lat temu
rpcpb 85e050a120 *: rename, clean up functional tests 7 lat temu
runner 85e050a120 *: rename, clean up functional tests 7 lat temu
scripts 85e050a120 *: rename, clean up functional tests 7 lat temu
tester 85e050a120 *: rename, clean up functional tests 7 lat temu
README.md 85e050a120 *: rename, clean up functional tests 7 lat temu
build 85e050a120 *: rename, clean up functional tests 7 lat temu

README.md

etcd Functional Testing

functional verifies the correct behavior of etcd under various system and network malfunctions. It sets up an etcd cluster under high pressure loads and continuously injects failures into the cluster. Then it expects the etcd cluster to recover within a few seconds. This has been extremely helpful to find critical bugs.

See functional.yaml for an example configuration.

Run locally

PASSES=functional ./test

Run with Docker

pushd ../..
make build-docker-functional
popd

And run example scripts.

# run 3 agents for 3-node local etcd cluster
./scripts/docker-local-agent.sh 1
./scripts/docker-local-agent.sh 2
./scripts/docker-local-agent.sh 3

# to run only 1 tester round
./scripts/docker-local-tester.sh