We present maximal causality reduction (MCR), a new technique for stateless model checking. MCR systematically explores the state-space of concurrent programs with a …
J Chen, Y Bai, D Hao, Y Xiong… - 2017 IEEE/ACM 39th …, 2017 - ieeexplore.ieee.org
Compiler testing is a crucial way of guaranteeing the reliability of compilers (and software systems in general). Many techniques have been proposed to facilitate automated compiler …
Many modern software systems are composed of multiple execution flows that run simultaneously, spanning from applications designed to exploit the power of modern multi …
A Choudhary, S Lu, M Pradel - 2017 IEEE/ACM 39th …, 2017 - ieeexplore.ieee.org
As writing concurrent programs is challenging, developers often rely on thread-safe classes, which encapsulate most synchronization issues. Testing such classes is crucial to ensure …
S Guo, M Kusano, C Wang - Proceedings of the 31st IEEE/ACM …, 2016 - dl.acm.org
Software updates often introduce new bugs to existing code bases. Prior regression testing tools focus mainly on test case selection and prioritization whereas symbolic execution tools …
R Gu, G Jin, L Song, L Zhu, S Lu - Proceedings of the 2015 10th Joint …, 2015 - dl.acm.org
Multi-threaded programs are pervasive, yet difficult to write. Missing proper synchronization leads to correctness bugs and over synchronization leads to performance problems. To …
Testing multithreaded code is hard and expensive. A multithreaded unit test creates two or more threads, each executing one or more methods on shared objects of the class under …
Z Lin, D Marinov, H Zhong, Y Chen… - 2015 30th IEEE/ACM …, 2015 - ieeexplore.ieee.org
Researchers have proposed various approaches to detect concurrency bugs and improve multi-threaded programs, but performing evaluations of the effectiveness of these …
Multithreaded code is notoriously hard to develop and test. A multithreaded test exercises the code under test with two or more threads. Each test execution follows some …