Back to Search
Start Over
ConTesa: Directed Test Suite Augmentation for Concurrent Software
- Source :
- IEEE Transactions on Software Engineering. 46:405-419
- Publication Year :
- 2020
- Publisher :
- Institute of Electrical and Electronics Engineers (IEEE), 2020.
-
Abstract
- As software evolves, test suite augmentation techniques may be used to identify which part of the program needs to be tested due to code changes and how to generate these new test cases for regression testing. However, existing techniques focus exclusively on sequential software, without considering concurrent software in which multiple threads may interleave with each other during the execution and thus lead to a combinatorial explosion. To fill the gap, we propose ConTesa , the first test suite augmentation tool for concurrent software. The goal is to generate new test cases capable of exercising both code changes and the thread interleavings affected by these code changes. At the center of ConTesa is a two-pronged approach. First, it judiciously reuses the current test inputs while amplifying their interleaving coverage using random thread schedules. Then, it leverages an incremental symbolic execution technique to generate more test inputs and interleavings, to cover the new concurrency-related program behaviors. We have implemented ConTesa and evaluated it on a set of real-world multithreaded Linux applications. Our results show that it can achieve a significantly high interleaving coverage and reveal more bugs than state-of-the-art testing techniques.
- Subjects :
- Computer science
business.industry
020207 software engineering
02 engineering and technology
Thread (computing)
Symbolic execution
Software
Test case
Embedded system
Regression testing
0202 electrical engineering, electronic engineering, information engineering
Test suite
Concurrent computing
business
Subjects
Details
- ISSN :
- 23263881 and 00985589
- Volume :
- 46
- Database :
- OpenAIRE
- Journal :
- IEEE Transactions on Software Engineering
- Accession number :
- edsair.doi...........5065f0ca7e79b376cd3cee6c02e601ed