Gyuho Lee d8a2d3a209 functional/tester: delay after injecting "kill" to trigger election il y a 8 ans
..
agent cafa3b9217 functional/agent: handle static TLS certs il y a 8 ans
cmd 85e050a120 *: rename, clean up functional tests il y a 8 ans
rpcpb 68adc6e300 functional/rpcpb: document FailureCase il y a 8 ans
runner 85e050a120 *: rename, clean up functional tests il y a 8 ans
scripts 85e050a120 *: rename, clean up functional tests il y a 8 ans
tester d8a2d3a209 functional/tester: delay after injecting "kill" to trigger election il y a 8 ans
README.md 85e050a120 *: rename, clean up functional tests il y a 8 ans
build 85e050a120 *: rename, clean up functional tests il y a 8 ans

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