A Feasible Strategy for Reachability Testing of Internet-Based Concurrent Programs
Fangli Pu, Hai-Yin Xu · 2008
Internet-based concurrent programs, such as multiplayer online game program that multiplayer in highly interactive domain behave in space-time unpredictably, offer more advantages and are difficult to test because of their non-deterministic behaviors. One approach to test the concurrent programs is reachability testing. Lei and Carve did more research work and proposed an algorithm for reachability testing. Lei's algorithm can not ensure that a race variant is always feasible because all the events that occur after the race receive event r can potentially be affected, which may induce exercising false SYN-sequences after the send partner of r of a synchronization pair is changed. For increasing the feasibility of reachability testing, we can remove all the events that occur after the race receive event r after changing the send partner of r. But the problem that we need to solve is how to remove. We propose a feasible strategy to solve the problem. Our strategy uses vector timestamps to determine the happened-before relation between the race receive events of the synchronization pairs of the concurrent program. According to the happened-before relation, we change the send partners of the more receive events in proper order. After we change the send partner of the race receive event r , we need to remove all the events that occur after r in the original execution. Our strategy can ensure the feasibility of race variants. The case study proves that our feasible strategy for reachability testing of the concurrent programs can ensure the feasibility of the testing.