Improving Testing Patterns for Apache Cassandra
summary
Cassandra 4.0 ships with about 5,700 unit tests and adds Cassandra 4.0 full query logging to enable replay and differential checks. The testing stack mixes ccm and Java distributed tests for virtual clusters, Jepsen-style stress with Jepsen and cassandra-stress/TLP, and comparison tooling like Gemini, Delphi, Fallout and harry for fuzzed differential testing. The proposal uses an executable reference model plus concolic (symbolic+concrete) test generation via Java Pathfinder/jDart to produce targeted failing cases and check conformance automatically.
AI-written summary · about
chapters (20)
- 0:00Intro
- 0:35Who I am...
- 2:22Agenda
- 4:08Unit tests
- 6:48Distributed testing
- 8:02Performance Testing
- 10:43Differential Testing - particulars
- 12:28Cassandra Differential Testing Frameworks
- 15:47Slicing up the Monolith
- 17:01Introducing the Reference model
- 18:26Verification With Ref Models
- 19:39Ref Model - private APIs
- 20:56Reference Models - Other advantages
- 26:50Symbolic Execution - Problems
- 28:21Concolic Example
- 29:17Next Iteration!
- 30:00Concolic Execution and Reference model
- 31:17Take-aways
- 32:11Tools And Papers
- 33:28Questions?
related talks
48mModern Testing Patterns
43mThe Power of Data-Driven Testing: A Deep Dive into Jakarta Persistence Specifications and NoSQL
02h 58mOverview of Testing in Our Applications
45mTesting the untestable PART II – patterns, use cases and practices
28mAdvanced Testing Techniques
58mTesting Strategy - New Model, Better Outcomes
55mNext-Gen Testing Tools for Java
38mTesting Ceph: Pains & Pleasures
