Title of article :
State-cover testing for nondeterministic terminating concurrent programs with an infinite number of synchronization sequences
Author/Authors :
Che-Sheng Lin، نويسنده , , Gwan-Hwan Hwang، نويسنده ,
Issue Information :
ماهنامه با شماره پیاپی سال 2013
Pages :
30
From page :
1294
To page :
1323
Abstract :
Concurrent programs exhibit nondeterministic behavior in that multiple executions thereof with the same input might produce different sequences of synchronization events and different results. This is because different executions of a concurrent program with the same input may exhibit different interleavings. Thus, one of the major issues in the testing of concurrent programs is how to explore different interleavings or exhaust all the possible interleavings of the target programs. However, for terminating concurrent programs that have cyclic state spaces due to using iterative statements such as busy-waiting loops, they might have an infinite number of feasible synchronization sequences; that is, there is an infinite number of possible interleavings, which makes it impossible to explore all the possible interleavings for this type of concurrent program. To overcome this problem, we propose a testing scheme called dynamic effective testing that can perform state-cover testing for nondeterministic terminating concurrent programs with an infinite number of synchronization sequences. Dynamic effective testing does not require static analysis of the target concurrent program or the assistance of a model checker, and thus is loosely coupled to the syntax of the target concurrent program. It only needs to analyze sequences of synchronization events produced by the execution of the concurrent programs for race detection and state-traversal control. Therefore, the method is easy to port to different programming languages. In addition, only reiterated states discovered in a single SYN-sequence need to be stored. The implementation and experimental results obtained with real code demonstrate that source-code-level dynamic testing can be systematically performed on nondeterministic concurrent programs with infinite synchronization sequences.
Keywords :
Concurrent program , concurrent testing , Nondeterministic behavior , SYN-sequence , Reachability testing
Journal title :
Science of Computer Programming
Serial Year :
2013
Journal title :
Science of Computer Programming
Record number :
1080389
Link To Document :
بازگشت