Skip to content


Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Cassandra Distributed Tests
Failed to load latest commit information.
cassandra-thrift Restore thrift interface for slice test
conf modifying conf for compaction test
thrift_bindings Use thrift bindings from C* trunk. Merge in fixes to test_thrfit_serv…
.gitignore Tests for CASSANDRA-7395 Update instructions for 7163 Minor formatting fixes Add tests for normal and compressed commitlogs CASSANDRA-8849 properly show inherited su status in list users Add tests for new role admin permissions CASSANDRA-8650 & CASSANDRA-7216, --> Use built in flag, --> Tentative fix for CommitLogTest, --> Update stress keyspace names in 2.1 for f0767fdf Clean up imports, -->, -->, -->, --> Merge branch 'CASSANDRA-8490' Fix cqlsh output test for 7653 allow setting consistency level Clean up imports Remove unused tools imports when cleaning up cluster set the python driver Remove old Tester class, replace with PyTester compatibility changes + small fixes, -->
license.txt permissions Restored, --> Better reversed paging test Testing for CASSANDRA-8640 Code review comments Merge pull request #177 from stef1927/master, --> Remove old Tester class, replace with PyTester, --> Update stress keyspace names in 2.1 for f0767fdf, -->, -->, -->, --> Fix another test for f0767fdf Add sstablesplit test for CASSANDRA-8623 Merge branch 'master' into python-driver Remove old Tester class, replace with PyTester Set rpc_max_threads=20 for thrift_hsha_test test_6285 Fix thrift_test for 7653, -->, -->, -->, --> upgrade test for murmur, remove 1.2+ check no longer needed, --> Make ccmlib api changes for setting install_dir and version

Cassandra Distributed Tests

Tests for Apache Cassandra clusters.


An up to date copy of ccm should be installed for starting and stopping Cassandra. The tests are run using nosetests. These tests require the datastax python driver. A few tests still require the deprecated python CQL over thrift driver.


The tests are run by nosetests. The only thing the framework needs to know is the location of the (compiled) sources for Cassandra. There are two options:

Use existing sources:

CASSANDRA_DIR=~/path/to/cassandra nosetests

Use ccm ability to download/compile released sources from

CASSANDRA_VERSION=1.0.0 nosetests

A convenient option if tests are regularly run against the same existing directory is to set a default_dir in ~/.cassandra-dtest. Create the file and set it to something like:


The tests will use this directory by default, avoiding the need for any environment variable (that still will have precedence if given though).

Existing tests are probably the best place to start to look at how to write tests.

Each test spawns a new fresh cluster and tears it down after the test, unless REUSE_CLUSTER is set to true. Then some tests will share cassandra instances. If a test fails, the logs for the node are saved in a logs/<timestamp> directory for analysis (it's not perfect but has been good enough so far, I'm open to better suggestions).

Detailed Instructions

See more detailed instructions in the included INSTALL file.

Something went wrong with that request. Please try again.