Generalized Concurrency Testing Tool for Distributed Systems

Published in The 33th ACM SIGSOFT International Symposium on Software Testing and Analysis, (ISSTA) 2024 (to appear), 2024

Recommended citation: Ege Berkay Gulcan, João Neto, Burcu Kulahcioglu Ozkan. "Generalized Concurrency Testing Tool for Distributed Systems." Proceedings of the 33th ACM SIGSOFT International Symposium on Software Testing and Analysis, (ISSTA) 2024 (to appear)'

Abstract.

Controlled concurrency testing (CCT) is an effective approach for testing distributed system implementations. However, the existing CCTtools suffer from the drawbacks of language dependency and the cost of source code instrumentation, which makes them difficult to apply to real-world production systems. We propose DSTest, a generalized CCT tool for testing distributed system implementations. DSTest intercepts messages on the application layer and, hence, eliminates the instrumentation cost and achieves language independence with minimal input. We provide a clean and modular interface to extend DSTest for various event schedulers for CCT. We package DSTest with three well-known event schedulers and validate the tool by applying it to popular production systems.