Skip to content

HTTPS clone URL

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
INSTALL.md Update instructions for 7163
README.md Minor formatting fixes
assertions.py Add tests for normal and compressed commitlogs
auth_roles_test.py CASSANDRA-8849 properly show inherited su status in list users
auth_test.py Add tests for new role admin permissions CASSANDRA-8650 & CASSANDRA-7216
batch_test.py pyassertions.py, pytools.py --> assertions.py tools.py
bootstrap_test.py Use built in flag
cfid_test.py pyassertions.py, pytools.py --> assertions.py tools.py
commitlog_test.py Tentative fix for CommitLogTest
compaction_test.py pyassertions.py, pytools.py --> assertions.py tools.py
concurrent_schema_changes_test.py Update stress keyspace names in 2.1 for f0767fdf
configuration_test.py Clean up imports
consistency_test.py pyassertions.py, pytools.py --> assertions.py tools.py
consistent_bootstrap_test.py pyassertions.py, pytools.py --> assertions.py tools.py
counter_tests.py pyassertions.py, pytools.py --> assertions.py tools.py
cql_prepared_test.py pyassertions.py, pytools.py --> assertions.py tools.py
cql_tests.py Merge branch 'CASSANDRA-8490'
cqlsh_tests.py Fix cqlsh output test for 7653
datahelp.py datahelp.py allow setting consistency level
delete_insert_test.py Clean up imports
deletion_test.py Remove unused tools imports
dtest.py when cleaning up cluster set the python driver
global_row_key_cache_test.py Remove old Tester class, replace with PyTester
incremental_repair_test.py compatibility changes + small fixes
json_tools_test.py pyassertions.py, pytools.py --> assertions.py tools.py
license.txt permissions
loadmaker.py Restored loadmaker.py
multidc_putget_test.py pyassertions.py, pytools.py --> assertions.py tools.py
nodetool_test.py
paging_test.py Better reversed paging test
paxos_tests.py Testing for CASSANDRA-8640
prepared_statements_test.py Code review comments
pushed_notifications_test.py Merge pull request #177 from stef1927/master
putget_test.py pyassertions.py, pytools.py --> assertions.py tools.py
range_ghost_test.py Remove old Tester class, replace with PyTester
repair_test.py pyassertions.py, pytools.py --> assertions.py tools.py
replace_address_test.py Update stress keyspace names in 2.1 for f0767fdf
replication_test.py pyassertions.py, pytools.py --> assertions.py tools.py
schema_test.py pyassertions.py, pytools.py --> assertions.py tools.py
secondary_indexes_test.py pyassertions.py, pytools.py --> assertions.py tools.py
snapshot_test.py pyassertions.py, pytools.py --> assertions.py tools.py
sstable_generation_loading_test.py Fix another test for f0767fdf
sstablesplit_test.py Add sstablesplit test for CASSANDRA-8623
super_column_cache_test.py Merge branch 'master' into python-driver
super_counter_test.py Remove old Tester class, replace with PyTester
thrift_hsha_test.py Set rpc_max_threads=20 for thrift_hsha_test test_6285
thrift_tests.py Fix thrift_test for 7653
tools.py
topology_test.py pyassertions.py, pytools.py --> assertions.py tools.py
ttl_test.py pyassertions.py, pytools.py --> assertions.py tools.py
udtencoding_test.py pyassertions.py, pytools.py --> assertions.py tools.py
upgrade_supercolumns_test.py pyassertions.py, pytools.py --> assertions.py tools.py
upgrade_through_versions_test.py upgrade test for murmur, remove 1.2+ check no longer needed
user_functions_test.py
user_types_test.py pyassertions.py, pytools.py --> assertions.py tools.py
wide_rows_test.py Make ccmlib api changes for setting install_dir and version

README.md

Cassandra Distributed Tests

Tests for Apache Cassandra clusters.

Prerequisites

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.

Usage

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 archives.apache.org:

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:

[main]
default_dir=~/path/to/cassandra

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.