Generalized Concurrency Testing Tool for Distributed Systems

Conference Paper (2024)
Authors

Ege Berkay Gülcan (TU Delft - Software Engineering)

João Miguel Neto (TU Delft - Software Engineering)

Burcu Kulahcioglu Ozkan (TU Delft - Software Engineering)

Research Group
Software Engineering
To reference this document use:
https://doi.org/10.1145/3650212.3685309
More Info
expand_more
Publication Year
2024
Language
English
Research Group
Software Engineering
Pages (from-to)
1861-1865
ISBN (electronic)
979-8-4007-0612-7
DOI:
https://doi.org/10.1145/3650212.3685309
Reuse Rights

Other than for strictly personal use, it is not permitted to download, forward or distribute the text or part of it, without the consent of the author(s) and/or copyright holder(s), unless the work is under an open content license such as Creative Commons.

Abstract

Controlled concurrency testing (CCT) is an effective approach for testing distributed system implementations. However, existing CCT tools 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.