Browse > Article

Efficient Code-based Software Product Line Regression Testing  

Jung, Pilsu (삼성전자 DIT센터)
Kang, Sungwon (한국과학기술원 전산학부)
Publication Information
Journal of Software Engineering Society / v.29, no.2, 2020 , pp. 1-6 More about this Journal
Abstract
Software product line development is a development paradigm that efficiently develops a product family by avoiding redundant development based on separation of the common part and the variable part of the product family. In software product line development, the source code that is used to produce a product family is called a product line code base, and when the product line code base is changed and the products of the product family are affected by the change, the activity of testing the affected products is called a product line regression testing. For product line regression testing, instead of conducting regression testing individually on each product of the product family, a more efficient regression testing would be possible if unnecessary testing that are irrelevant to the change can be avoided. This paper introduces SRTS, which is an automated method to efficiently perform software product line regression testing. SRTS divides the product line code base and test cases based on commonality and variability. Then SRTS identifies and selects the test cases affected by the change. Finally, it reduces unnecessary testing by rerunning only the selected test cases.
Keywords
Software Product Line; Product Family; Regression Testing;
Citations & Related Records
연도 인용수 순위
  • Reference
1 Yoo, S., Harman, M., 2012. Regression testing minimization, selection and prioritization: a survey. Software Testing, Verification and Reliability. 22 (2), 67-120.   DOI
2 Chittimalli, P. K., & Harrold, M. J., 2009. Recomputing coverage information to assist regression testing. IEEE Transactions on Software Engineering, 35(4), 452-469.   DOI
3 Neto, P.A.d.M.S., do Carmo Machado, I., Cavalcanti, Y.C., de Almeida, E.S., Garcia, V.C., de Lemos Meira, S.R., 2010. A regression testing approach for software product lines architectures. In: Proceedings of the Fourth Brazilian Symposium on Software Components, Architectures and Reuse (SBCARS), pp. 41-50.
4 Lity, S., Nieke, M., Thüm, T., & Schaefer, I., 2019. Retest test selection for product-line regression testing of variants and versions of variants. Journal of Systems and Software, 147, 46-63.   DOI
5 Jung, P., Kang, S., & Lee, J., 2019. Automated code-based test selection for software product line regression testing. Journal of Systems and Software, 158, 110419.   DOI
6 Gligoric, M., Eloussi, L., Marinov, D., 2015. Practical regression test selection with dynamic file dependencies. In: Proceedings of the International Symposium on Software Testing and Analysis, pp. 211-222.
7 SPL2go. Available online: http://spl2go.cs.ovgu.de/ (accessed on September 2020).
8 Fraser, G., Arcuri, A., 2011. EvoSuite: automatic test suite generation for object-oriented software. Proceedings of the 19th ACM SIGSOFT symposium and the 13th European conference on Foundations of software engineering, pp. 416-419.
9 PIT. Available online: http://pitest.org/ (accessed on September 2020).
10 Rothermel, G., Harrold, M.J., 1996. Analyzing regression test selection techniques. IEEE Transactions on Software Engineering. 22 (8), 529-551.   DOI