Applications of synchronization coverage

Coverage analysis is a useful testing technology. However, some coverage models are more acceptable to the industry than others. In the field of testing multi-threaded applications, there is a need for a coverage model that can be used to evaluate tests for concurrent completeness and to find new testing requirements. We present a new coverage model: synchronization coverage. This model is simple to understand and the action items generated by each uncovered task are clear to testers and developers. We propose that synchronization coverage could, and should, become one of the more commonly used coverage models.

[1]  W. Eric Wong,et al.  Comparing the Fault Detection Effectiveness of Mutation and Data Flow Testing: An Empirical Study , 1993 .

[2]  Yossi Lichtenstein,et al.  Testing concurrent programs: a formal evaluation of coverage criteria , 1996, Proceedings of the Seventh Israeli Conference on Computer Systems and Software Engineering.

[3]  Fred P. Brooks,et al.  The Mythical Man-Month , 1975, Reliable Software.

[4]  Yaron Wolfsthal,et al.  Coverability Analysis Using Symbolic Model Checking , 2001, CHARME.

[5]  Boris Beizer,et al.  Software testing techniques (2. ed.) , 1990 .

[6]  P. Kidwell,et al.  The mythical man-month: Essays on software engineering , 1996, IEEE Annals of the History of Computing.

[7]  Avi Ziv,et al.  Hole analysis for functional coverage data , 2002, DAC '02.

[8]  Brian Marick,et al.  The craft of software testing - subsystem testing including object-based and object-oriented testing , 1994 .

[9]  Elaine J. Weyuker,et al.  The evaluation of program-based software test data adequacy criteria , 1988, CACM.

[10]  Jr. Frederick P. Brooks,et al.  The mythical man-month (anniversary ed.) , 1995 .

[11]  Sigrid Eldh Software Testing Techniques , 2007 .

[12]  Shmuel Ur,et al.  Compacting regression-suites on-the-fly , 1997, Proceedings of Joint 4th International Computer Science Conference and 4th Asia Pacific Software Engineering Conference.

[13]  Lori L. Pollock,et al.  All-du-path coverage for parallel programs , 1998, ISSTA '98.

[14]  Eitan Farchi,et al.  Multithreaded Java program test generation , 2001, JGI '01.

[15]  Orna Kupferman,et al.  Coverage metrics for formal verification , 2003, International Journal on Software Tools for Technology Transfer.

[16]  Eitan Farchi,et al.  Concurrent bug patterns and how to test them , 2003, Proceedings International Parallel and Distributed Processing Symposium.

[17]  Eitan Farchi,et al.  Concurrent and distributed desk checking , 2004, 18th International Parallel and Distributed Processing Symposium, 2004. Proceedings..