Regression Test Selection and Product Line System Testing

Context: Software product lines (SPL) are used in industry to achieve more efficient software development. To test a SPL is complex and costly and often becomes a bottleneck in the product line organization. Objective: This research aims to develop and evaluate strategies for improving system test selection in a SPL. Method: Initially industrial practices and research in both SPL testing and traditional regression test selection have been surveyed. Two systematic literature reviews, two industrial exploratory surveys and one industrial evaluation of a pragmatic test selection approach have been conducted. Results: There is a lack of industrial evaluations as well as of useful solutions, both regarding regression test selection and SPL testing. Test selection is an activity of varying scope and preconditions, strongly dependent on the context in which it is applied. Conclusions: Continued research will be done in close cooperation with industry with the goal to define a tool for visualizing system test coverage in a product line and the delta between a product and the covered part of the product line.

[1]  Klaus Pohl,et al.  Software Product Line Engineering - Foundations, Principles, and Techniques , 2005 .

[2]  Juha Taina,et al.  Product family testing: a survey , 2004, SOEN.

[3]  Barbara Kitchenham,et al.  Procedures for Performing Systematic Reviews , 2004 .

[4]  Per Runeson,et al.  Software product line testing - A systematic mapping study , 2011, Inf. Softw. Technol..

[5]  Per Runeson,et al.  Test Benchmarks -- what is the question? , 2008, 2008 IEEE International Conference on Software Testing Verification and Validation Workshop.

[6]  Kai Petersen,et al.  Systematic Mapping Studies in Software Engineering , 2008, EASE.

[7]  John D. McGregor,et al.  Testing a Software Product Line , 2001, PSSE.

[8]  Myra B. Cohen,et al.  Coverage and adequacy in software product line testing , 2006, ROSATEA '06.

[9]  Per Runeson,et al.  A case study of the class firewall regression test selection technique on a large scale distributed software system , 2005, 2005 International Symposium on Empirical Software Engineering, 2005..

[10]  Daniela E. Damian,et al.  Selecting Empirical Methods for Software Engineering Research , 2008, Guide to Advanced Empirical Software Engineering.

[11]  Per Runeson,et al.  A Qualitative Survey of Regression Testing Practices , 2010, PROFES.

[12]  Klaus Pohl,et al.  Software Product Line Engineering , 2005 .

[13]  Jean-Pierre Corriveau,et al.  On Extracting Tests from a Testable Model in the Context of Domain Engineering , 2008, 13th IEEE International Conference on Engineering of Complex Computer Systems (iceccs 2008).

[14]  Henry Muccini,et al.  Towards Testing Product Line Architectures , 2003, TACoS.

[15]  Clémentine Nebut,et al.  System Testing of Product Lines: From Requirements to Test Cases , 2006, Software Product Lines.

[16]  Per Runeson,et al.  An Empirical Evaluation of Regression Testing Based on Fix-Cache Recommendations , 2010, 2010 Third International Conference on Software Testing, Verification and Validation.

[17]  Per Runeson,et al.  A systematic review on regression test selection techniques , 2010, Inf. Softw. Technol..