Nothing Special   »   [go: up one dir, main page]

skip to main content
10.1145/3336294.3336305acmotherconferencesArticle/Chapter ViewAbstractPublication PagessplcConference Proceedingsconference-collections
research-article

Automating Test Reuse for Highly Configurable Software

Published: 09 September 2019 Publication History

Abstract

Dealing with highly configurable systems is generally very complex. Hundreds of different analysis techniques have been conceived to deal with different aspects of configurable systems. One large focal point is the testing of configurable software. This is challenging due to the large number of possible configurations and because tests themselves are rarely configurable and instead built for specific configurations. Existing tests can usually not be reused on other configurations. Therefore, tests need to be adapted for the specific configuration they are supposed to test. In this paper we report on an experiment about reusing tests in a configurable system. We used manually developed tests for specific configurations of Bugzilla and investigated which of them could be reused for other configurations. Moreover, we automatically generated new test variants (by automatically reusing from existing ones) for combinations of previous configurations. Our results showed that we can directly reuse some tests for configurations which they were not intended for. Nonetheless, our automatically generated test variants generally yielded better results. When applying original tests to new configurations we found an average success rate for the tests of 81,84%. In contrast, our generated test variants achieved an average success rate of 98,72%. This is an increase of 16,88%.

References

[1]
Thorsten Berger, Daniela Lettner, Julia Rubin, Paul Grünbacher, Adeline Silva, Martin Becker, Marsha Chechik, and Krzysztof Czarnecki. 2015. What is a feature?: a qualitative study of features in industrial software product lines. In Proceedings of the 19th International Conference on Software Product Line, SPLC 2015, Nashville, TN, USA, July 20--24, 2015, Douglas C. Schmidt (Ed.). ACM, 16--25.
[2]
Thorsten Berger, Steven She, Rafael Lotufo, Andrzej Wasowski, and Krzysztof Czarnecki. 2013. A Study of Variability Models and Languages in the Systems Software Domain. IEEE Trans. Software Eng. 39, 12 (2013), 1611--1640.
[3]
Myra B. Cohen, Joshua Snyder, and Gregg Rothermel. 2006. Testing across configurations: implications for combinatorial testing. ACM SIGSOFT Software Engineering Notes 31, 6 (2006), 1--9.
[4]
Paulo Anselmo da Mota Silveira Neto, Ivan do Carmo Machado, John D. McGregor, Eduardo Santana de Almeida, and Silvio Romero de Lemos Meira. 2011. A systematic mapping study of software product lines testing. Information & Software Technology 53, 5 (2011), 407--423.
[5]
Ivan do Carmo Machado, John D. McGregor, Yguaratã Cerqueira Cavalcanti, and Eduardo Santana de Almeida. 2014. On strategies for testing software product lines: A systematic literature review. Information & Software Technology 56, 10 (2014), 1183--1199.
[6]
Ivan do Carmo Machado, John D. McGregor, and Eduardo Santana de Almeida. 2012. Strategies for testing products in software product lines. ACM SIGSOFT Software Engineering Notes 37, 6 (2012), 1--8.
[7]
Yael Dubinsky, Julia Rubin, Thorsten Berger, Slawomir Duszynski, Martin Becker, and Krzysztof Czarnecki. 2013. An Exploratory Study of Cloning in Industrial Software Product Lines. In 17th European Conference on Software Maintenance and Reengineering, CSMR 2013, Genova, Italy, March 5--8, 2013, Anthony Cleve, Filippo Ricca, and Maura Cerioli (Eds.). IEEE Computer Society, 25--34.
[8]
Emelie Engström and Per Runeson. 2011. Software product line testing - A systematic mapping study. Information & Software Technology 53, 1 (2011), 2--13.
[9]
Stefan Fischer, Lukas Linsbauer, Roberto Erick Lopez-Herrejon, and Alexander Egyed. 2014. Enhancing Clone-and-Own with Systematic Reuse for Developing Software Variants. In 30th IEEE International Conference on Software Maintenance and Evolution, Victoria, BC, Canada, September 29 - October 3, 2014. IEEE Computer Society, 391--400.
[10]
Stefan Fischer, Lukas Linsbauer, Roberto E. Lopez-Herrejon, and Alexander Egyed. 2015. The ECCO Tool: Extraction and Composition for Clone-and-Own. In 37th IEEE/ACM International Conference on Software Engineering, ICSE 2015, Florence, Italy, May 16--24, 2015, Volume 2, Antonia Bertolino, Gerardo Canfora, and Sebastian G. Elbaum (Eds.). IEEE Computer Society, 665--668.
[11]
Charles W. Krueger. 2006. New methods in software product line practice. Commun. ACM 49, 12 (2006), 37--40.
[12]
Jacob Krüger, Mustafa Al-Hajjaji, Sandro Schulze, Gunter Saake, and Thomas Leich. 2018. Towards automated test refactoring for software product lines. In Proceeedings of the 22nd International Systems and Software Product Line Conference - Volume 1, SPLC 2018, Gothenburg, Sweden, September 10--14, 2018, Thorsten Berger, Paulo Borba, Goetz Botterweck, Tomi Männistö, David Benavides, Sarah Nadi, Timo Kehrer, Rick Rabiser, Christoph Elsner, and Mukelabai Mukelabai (Eds.). ACM, 143--148.
[13]
Roberto Erick Lopez-Herrejon, Stefan Fischer, Rudolf Ramler, and Alexander Egyed. 2015. A first systematic mapping study on combinatorial interaction testing for software product lines. In Eighth IEEE International Conference on Software Testing, Verification and Validation, ICST 2015 Workshops, Graz, Austria, April 13--17, 2015. IEEE Computer Society, 1--10.
[14]
Mukelabai Mukelabai, Damir Nesic, Salome Maro, Thorsten Berger, and Jan-Philipp Steghöfer. 2018. Tackling combinatorial explosion: a study of industrial needs and practices for analyzing highly configurable systems. In Proceedings of the 33rd ACM/IEEE International Conference on Automated Software Engineering, ASE 2018, Montpellier, France, September 3--7, 2018, Marianne Huchard, Christian Kästner, and Gordon Fraser (Eds.). ACM, 155--166.
[15]
Rudolf Ramler and Werner Putschögl. 2013. Reusing Automated Regression Tests for Multiple Variants of a Software Product Line. In Sixth IEEE International Conference on Software Testing, Verification and Validation, ICST 2013 Workshops Proceedings, Luxembourg, Luxembourg, March 18--22, 2013. IEEE Computer Society, 122--123.
[16]
David J. Sheskin. 2007. Handbook of Parametric and Nonparametric Statistical Procedures (4 ed.). Chapman & Hall/CRC.
[17]
Mats Skoglund and Per Runeson. 2004. A case study on regression test suite maintenance in system evolution. In 20th IEEE International Conference on Software Maintenance, 2004. Proceedings, IEEE, 438--442.

Cited By

View all
  • (2023)Model-based Testing for a Family of Mobile ApplicationsProceedings of the 27th ACM International Systems and Software Product Line Conference - Volume A10.1145/3579027.3608996(242-253)Online publication date: 28-Aug-2023
  • (2023)To Share, or Not to Share: Exploring Test-Case Reusability in Fork Ecosystems2023 38th IEEE/ACM International Conference on Automated Software Engineering (ASE)10.1109/ASE56229.2023.00191(837-849)Online publication date: 11-Sep-2023
  • (2023)Testing of highly configurable cyber–physical systems — Results from a two-phase multiple case studyJournal of Systems and Software10.1016/j.jss.2023.111624199(111624)Online publication date: May-2023
  • Show More Cited By

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image ACM Other conferences
SPLC '19: Proceedings of the 23rd International Systems and Software Product Line Conference - Volume A
September 2019
356 pages
ISBN:9781450371384
DOI:10.1145/3336294
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 09 September 2019

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. clone-and-own
  2. configurable software
  3. reuse
  4. testing
  5. variability

Qualifiers

  • Research-article

Conference

SPLC 2019

Acceptance Rates

Overall Acceptance Rate 167 of 463 submissions, 36%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)21
  • Downloads (Last 6 weeks)0
Reflects downloads up to 28 Sep 2024

Other Metrics

Citations

Cited By

View all
  • (2023)Model-based Testing for a Family of Mobile ApplicationsProceedings of the 27th ACM International Systems and Software Product Line Conference - Volume A10.1145/3579027.3608996(242-253)Online publication date: 28-Aug-2023
  • (2023)To Share, or Not to Share: Exploring Test-Case Reusability in Fork Ecosystems2023 38th IEEE/ACM International Conference on Automated Software Engineering (ASE)10.1109/ASE56229.2023.00191(837-849)Online publication date: 11-Sep-2023
  • (2023)Testing of highly configurable cyber–physical systems — Results from a two-phase multiple case studyJournal of Systems and Software10.1016/j.jss.2023.111624199(111624)Online publication date: May-2023
  • (2022)Evolving software system families in space and time with feature revisionsEmpirical Software Engineering10.1007/s10664-021-10108-z27:5Online publication date: 30-May-2022
  • (2021)A Case Study on the Evolution of Configuration Options of a Highly-Configurable Software System2021 IEEE International Conference on Software Analysis, Evolution and Reengineering (SANER)10.1109/SANER50967.2021.00079(630-635)Online publication date: Mar-2021
  • (2021)Semi-automated test-case propagation in fork ecosystemsProceedings of the 43rd International Conference on Software Engineering: New Ideas and Emerging Results10.1109/ICSE-NIER52604.2021.00018(46-50)Online publication date: 25-May-2021
  • (2021)Comparing Automated Reuse of Scripted Tests and Model-Based Tests for Configurable Software2021 28th Asia-Pacific Software Engineering Conference (APSEC)10.1109/APSEC53868.2021.00049(421-430)Online publication date: Dec-2021
  • (2020)AI System Engineering—Key Challenges and Lessons LearnedMachine Learning and Knowledge Extraction10.3390/make30100043:1(56-83)Online publication date: 31-Dec-2020
  • (2020)Validating Test Case Migration via Mutation AnalysisProceedings of the IEEE/ACM 1st International Conference on Automation of Software Test10.1145/3387903.3389319(31-40)Online publication date: 7-Oct-2020
  • (2020)Locating feature revisions in software systems evolving in space and timeProceedings of the 24th ACM Conference on Systems and Software Product Line: Volume A - Volume A10.1145/3382025.3414954(1-11)Online publication date: 19-Oct-2020
  • Show More Cited By

View Options

Get Access

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media