Abstract—As computers become more and more powerful, programs are increasingly split up into multiple threads to leverage the power of multi-core CPUs. However, writing cor-rect multi-threaded code is a hard problem, as the programmer has to ensure that all access to shared data is coordinated. Existing automated testing tools for multi-threaded code mainly focus on re-executing existing test cases with different sched-ules. In this paper, we introduce a novel coverage criterion that enforces concurrent execution of combinations of shared memory access points with different schedules, and present an approach that automatically generates test cases for this coverage criterion. Our CONSUITE prototype demonstrates that this approach can reliab...
<p>The challenge this thesis addresses is to speed up the development of concurrent programs by incr...
Testing multithreaded programs is difficult as threads can interleave in a nondeterministic fashion....
As computing hardware moves to multi-core systems, future software needs to be parallelized in order...
Following advances in hardware engineering (multi-core processors) and software engineering (agile p...
The effectiveness of software testing is often assessed by mea-suring coverage of some aspect of the...
With the development of multi-core processors, concurrent programs are becoming more and more popula...
With the increasing dependency on software systems, we require them to be reliable and correct. Sof...
The lock-based shared memory model has proven to be error prone and difficult to test. Furthermore a...
Abstract—When testing multithreaded programs, the number of possible thread interactions makes explo...
While multi-threading has become commonplace in many application domains (e.g., embedded systems, di...
Abstract We present a coverage metric targeted at shared-memory concurrent programs: the Location Pa...
The testing of concurrent software is a challenging task. A number of different research approaches ...
We present a coverage metric targeted at shared-memory concurrent programs: the Location Pairs (LP) ...
Previous approaches to systematic state-space exploration for test-ing multi-threaded programs have ...
Parallel and concurrent software sometimes exhibit incorrect behavior because ofunintended interfere...
<p>The challenge this thesis addresses is to speed up the development of concurrent programs by incr...
Testing multithreaded programs is difficult as threads can interleave in a nondeterministic fashion....
As computing hardware moves to multi-core systems, future software needs to be parallelized in order...
Following advances in hardware engineering (multi-core processors) and software engineering (agile p...
The effectiveness of software testing is often assessed by mea-suring coverage of some aspect of the...
With the development of multi-core processors, concurrent programs are becoming more and more popula...
With the increasing dependency on software systems, we require them to be reliable and correct. Sof...
The lock-based shared memory model has proven to be error prone and difficult to test. Furthermore a...
Abstract—When testing multithreaded programs, the number of possible thread interactions makes explo...
While multi-threading has become commonplace in many application domains (e.g., embedded systems, di...
Abstract We present a coverage metric targeted at shared-memory concurrent programs: the Location Pa...
The testing of concurrent software is a challenging task. A number of different research approaches ...
We present a coverage metric targeted at shared-memory concurrent programs: the Location Pairs (LP) ...
Previous approaches to systematic state-space exploration for test-ing multi-threaded programs have ...
Parallel and concurrent software sometimes exhibit incorrect behavior because ofunintended interfere...
<p>The challenge this thesis addresses is to speed up the development of concurrent programs by incr...
Testing multithreaded programs is difficult as threads can interleave in a nondeterministic fashion....
As computing hardware moves to multi-core systems, future software needs to be parallelized in order...