Please use this identifier to cite or link to this item: https://doi.org/10.21256/zhaw-3221
Publication type: Article in scientific journal
Type of review: Peer review (publication)
Title: Branch coverage prediction in automated testing
Authors: Grano, Giovanni
Titov, Timofey V.
Panichella, Sebastiano
Gall, Harald C.
DOI: 10.21256/zhaw-3221
10.1002/smr.2158
Published in: Journal of Software: Evolution and Process
Volume(Issue): 31
Issue: 9
Page(s): e2158
Issue Date: 2019
Publisher / Ed. Institution: Wiley
ISSN: 2047-7473
Language: English
Subject (DDC): 005: Computer programming, programs and data
Abstract: Software testing is crucial in continuous integration (CI). Ideally, at every commit, all the test cases should be executed, and moreover, new test cases should be generated for the new source code. This is especially true in a Continuous Test Generation (CTG) environment, where the automatic generation of test cases is integrated into the continuous integration pipeline. In this context, developers want to achieve a certain minimum level of coverage for every software build. However, executing all the test cases and, moreover, generating new ones for all the classes at every commit is not feasible. As a consequence, developers have to select which subset of classes has to be tested and/or targeted by test‐case generation. We argue that knowing a priori the branch coverage that can be achieved with test‐data generation tools can help developers into taking informed decision about those issues. In this paper, we investigate the possibility to use source‐code metrics to predict the coverage achieved by test‐data generation tools. We use four different categories of source‐code features and assess the prediction on a large data set involving more than 3'000 Java classes. We compare different machine learning algorithms and conduct a fine‐grained feature analysis aimed at investigating the factors that most impact the prediction accuracy. Moreover, we extend our investigation to four different search budgets. Our evaluation shows that the best model achieves an average 0.15 and 0.21 MAE on nested cross‐validation over the different budgets, respectively, on EVOSUITE and RANDOOP. Finally, the discussion of the results demonstrate the relevance of coupling‐related features for the prediction accuracy.
Further description: This is the peer reviewed version which has been published in final form at [DOI]. This article may be used for non-commercial purposes in accordance with Wiley Terms and Conditions for Use of Self-Archived Versions.
URI: https://digitalcollection.zhaw.ch/handle/11475/17315
Fulltext version: Accepted version
License (according to publishing contract): Licence according to publishing contract
Restricted until: 2020-04-01
Departement: School of Engineering
Organisational Unit: Institute of Computer Science (InIT)
Appears in collections:Publikationen School of Engineering

Files in This Item:
File Description SizeFormat 
jsep.pdfAccepted Version690.67 kBAdobe PDFThumbnail
View/Open
Show full item record
Grano, G., Titov, T. V., Panichella, S., & Gall, H. C. (2019). Branch coverage prediction in automated testing. Journal of Software: Evolution and Process, 31(9), e2158. https://doi.org/10.21256/zhaw-3221
Grano, G. et al. (2019) ‘Branch coverage prediction in automated testing’, Journal of Software: Evolution and Process, 31(9), p. e2158. Available at: https://doi.org/10.21256/zhaw-3221.
G. Grano, T. V. Titov, S. Panichella, and H. C. Gall, “Branch coverage prediction in automated testing,” Journal of Software: Evolution and Process, vol. 31, no. 9, p. e2158, 2019, doi: 10.21256/zhaw-3221.
GRANO, Giovanni, Timofey V. TITOV, Sebastiano PANICHELLA und Harald C. GALL, 2019. Branch coverage prediction in automated testing. Journal of Software: Evolution and Process. 2019. Bd. 31, Nr. 9, S. e2158. DOI 10.21256/zhaw-3221
Grano, Giovanni, Timofey V. Titov, Sebastiano Panichella, and Harald C. Gall. 2019. “Branch Coverage Prediction in Automated Testing.” Journal of Software: Evolution and Process 31 (9): e2158. https://doi.org/10.21256/zhaw-3221.
Grano, Giovanni, et al. “Branch Coverage Prediction in Automated Testing.” Journal of Software: Evolution and Process, vol. 31, no. 9, 2019, p. e2158, https://doi.org/10.21256/zhaw-3221.


Items in DSpace are protected by copyright, with all rights reserved, unless otherwise indicated.