Concurrent Defects and Test Coverage Criteria

Bidush Kumar Sahoo, Mitrabinda Ray
2016 Journal of Software  
The concurrent programs mostly specify two or more processes that work together in performing a job. Among them each process is a sequential program that implements series of statements. The processes usually work together by conversing using variables or message passing. So, testing a concurrent program is complex for its non determinism behavior. A number of methods such as locking, serialization, time stamp etc. are proposed to deal with non deterministic behavior. The paper deals with
more » ... l coverage criteria for testing concurrent programs. Various coverage criteria such as interleaving, synchronization, ordered sequence, data flow, condition based etc are discussed with their capability in detecting bugs caused by synchronization. It discusses the expected bugs in the different criteria. Through discussion, it provides the way to cover all possible expected bugs. Journal of Software Data flow Testing Criteria The main focus is the data flow among threads of different processes, considering the operations of communication and synchronization related to such flow. This inter-process data-flow represents a challenge to the tester, who must consider the heterogeneity of programming paradigms and languages. The 999
doi:10.17706/jsw.11.10.994-1007 fatcat:gi3btbjua5ahpjpsjgkyigpl5m