A Combinatorial Testing Strategy for Concurrent Programs

Published: June 07, 2007


Yu Lei, Richard Carver, Raghu N. Kacker, David Kung


One approach to testing concurrent programs is called reachability testing, which derives test sequences automatically and on-the-fly, without constructing a static model. Existing reachability testing algorithms are exhaustive in that they are intended to exercise all possible synchronization (SYN) sequences of a concurrent program with a given input. In this paper, we present a new testing strategy, called a t-way reachability testing, that adopts the dynamic framework of reachability testing but selectively exercises a subset of synchronization sequences. The selection of the SYN-sequences is based on a combinatorial testing strategy called a t-way testing. We present an algorithm that implements the t-way reachability testing, and report the results of several case studies that were conducted to evaluate its effectiveness. The results indicate that the t-way reachability testing can substantially reduce the number of SYN-sequences exercised during reachability testing while still effectively detecting faults.
Citation: Software Testing Verification & Reliability
Volume: 17
Issue: 4
Pub Type: Journals


combinatorial testing, concurrency testing, t-way testing, software testing
Created June 07, 2007, Updated November 10, 2018