CalFuzzer: An Extensible Active Testing Framework for Concurrent Programs [chapter]

Pallavi Joshi, Mayur Naik, Chang-Seo Park, Koushik Sen
2009 Lecture Notes in Computer Science  
Active testing has recently been introduced to effectively test concurrent programs. Active testing works in two phases. It first uses predictive off-the-shelf static or dynamic program analyses to identify potential concurrency bugs, such as data races, deadlocks, and atomicity violations. In the second phase, active testing uses the reports from these predictive analyses to explicitly control the underlying scheduler of the concurrent program to accurately and quickly discover real
more » ... bugs, if any, with very high probability and little overhead. In this paper, we present an extensible framework for active testing of Java programs. The framework currently implements three active testers based on data races, atomic blocks, and deadlocks.
doi:10.1007/978-3-642-02658-4_54 fatcat:n46tnwdgafa4hf6ujds67drx4e