Font Size: a A A

Research On Reachability Testing Of Concurrent Programs Based On Asynchronous Communication

Posted on:2007-08-11Degree:MasterType:Thesis
Country:ChinaCandidate:N DingFull Text:PDF
GTID:2178360242461847Subject:Computer software and theory
Abstract/Summary:PDF Full Text Request
With the development of concurrent system in modern software applications, the testing and debugging of concurrent software have attracted more and more attentions of the programmers. The conventional testing approach, however, encounters problems when it is applied to concurrent programs. It is much more difficult to development, test and maintain the concurrent programs than the sequential programs because of the complexity and uncertainty of them.One approach to testing concurrent programs is reachability testing, which is the combination of nondeterministic testing and deterministic testing. If the number of distinct SYN-sequences of P with input X is finite, reachability testing can execute all possible SYN-sequences of P with input X. Reachability testing process includes two phrases: Firstly, we identify race conditons in the SYN-sequence which is generated in nondeterministic testing. Secondly, we compute race-variants by modifying the outcome of race conditons by some strategy. For each new race-variant derived, performing prefix-based testing of the program with some input and the race-variant to execute and collect additional SYN-sequence. The above phrases are repeated until there is no new SYN-sequence generated.For concurrent programms based on asynchronous message-passing, old reachability testing method does not consider the conditional synchronization, which will lead to some infeasible SYN-sequences. However, Modified reachability testing method defines race-dependent-based path constraints (RDBC), which deal with synchronizations under some special conditions. RDBC improves path constraints of the spanning tree of Sequence/Variant graph, and is enforced by the race-variants generation algorithm in reachability testing process. New method generates test sequences automatically, and on-the-fly, without constructing any static models. It does not save any synchroniztion sequences history, but still guarantees that every partial-ordered sequence will be exercised exactly once.
Keywords/Search Tags:software testing, concurrent program, reachability testing, synchroniztion sequence, race variant, conditional synchronization
PDF Full Text Request
Related items