Incorporating fault-proneness estimations into coverage-based test case prioritization methods

被引:35
|
作者
Mandieh, Mostafa [1 ]
Mirian-Hosseinabadi, Seyed-Hassan [1 ]
Etemadi, Khashayar [1 ]
Nosrati, Ali [1 ]
Jalali, Sajad [1 ]
机构
[1] Sharif Univ Technol, Comp Engn Dept, Tehran 1136511155, Iran
关键词
Regression testing; Test case prioritization; Defect prediction; Machine learning; Bug history; TEST-SUITE REDUCTION; DEFECT PREDICTION; JUNIT; MODELS; NUMBER;
D O I
10.1016/j.infsof.2020.106269
中图分类号
TP [自动化技术、计算机技术];
学科分类号
0812 ;
摘要
Context During the development process of a software program, regression testing is used to ensure that the correct behavior of the software is retained after updates to the source code. This regression testing becomes costly over time as the number of test cases increases and it makes sense to prioritize test cases in order to execute fault-detecting test cases as soon as possible. There are many coverage-based test case prioritization (TCP) methods that only use the code coverage data to prioritize test cases. By incorporating the fault-proneness estimations of code units into the coverage-based TCP methods, we can improve such techniques. Objective: In this paper, we aim to propose an approach which improves coverage-based TCP methods by considering the fault-proneness distribution over code units. Further, we present the results of an empirical study that shows using our proposed approach significantly improves the additional strategy, which is a widely used coverage-based TCP method. Method: The approach presented in this study uses the bug history of the software in order to introduce a defect prediction method to learn a neural network model. This model is then used to estimate fault-proneness of each area of the source code and then the estimations are incorporated into coverage-based TCP methods. Our proposed approach is a general idea that can be applied to many coverage-based methods, such as the additional and total TCP methods. Results: The proposed methods are evaluated on datasets collected from the development history of five real-world projects including 357 versions in total. The experiments show that using an appropriate bug history can improve coverage-based TCP methods. Conclusion: The proposed approach can be applied to various coverage-based TCP methods and the experiments show that it can improve these methods by incorporating estimations of code units fault-proneness.
引用
收藏
页数:12
相关论文
共 50 条
  • [31] Software Fault-Proneness Analysis based on Composite Developer-Module Networks
    Lee, Shou-Yu
    Wong, W. Eric
    Li, Yihao
    Chu, William Cheng-Chung
    IEEE ACCESS, 2021, 9 : 155314 - 155334
  • [32] Test Case Prioritization Algorithm Based on Improved Code Coverage
    Zhu, Yanan
    Liu, Feng
    IAENG International Journal of Computer Science, 2023, 50 (02)
  • [33] Test case reduction based on the join condition in pairwise coverage-based database testing
    Myint, Yuper Lay
    Washizaki, Hironori
    Fukazawa, Yoshiaki
    Kanuka, Hideyuki
    Ohbayashi, Hiroki
    2018 IEEE 11TH INTERNATIONAL CONFERENCE ON SOFTWARE TESTING, VERIFICATION AND VALIDATION WORKSHOPS (ICSTW), 2018, : 239 - 243
  • [34] Coverage-based Test Cases Selection for XACML Policies
    Bertolino, Antonia
    Le Traon, Yves
    Lonetti, Francesca
    Marchetti, Eda
    Mouelhi, Tejeddine
    2014 SEVENTH IEEE INTERNATIONAL CONFERENCE ON SOFTWARE TESTING, VERIFICATION AND VALIDATION WORKSHOPS (ICSTW 2014), 2014, : 12 - 21
  • [35] Test Case Prioritization Based on Genetic Algorithm and Test-Points Coverage
    Zhang, Weixiang
    Wei, Bo
    Du, Huisen
    ALGORITHMS AND ARCHITECTURES FOR PARALLEL PROCESSING, ICA3PP 2014, PT I, 2014, 8630 : 644 - 654
  • [36] Assessing the Effectiveness of Coverage-Based Fault Localizations Using Mutants
    Xue, Xiaozhen
    Siami-Namini, Sima
    Namin, Akbar Siami
    INTERNATIONAL JOURNAL OF SOFTWARE ENGINEERING AND KNOWLEDGE ENGINEERING, 2018, 28 (08) : 1091 - 1119
  • [37] A Case Against Coverage-Based Program Spectra
    Soha, Peter Attila
    Gergely, Tamsas
    Horvath, Ferenc
    Vancsics, Bela
    Beszedes, Arpad
    2023 IEEE CONFERENCE ON SOFTWARE TESTING, VERIFICATION AND VALIDATION, ICST, 2023, : 13 - 24
  • [38] An Effective Test Case Prioritization Method Based on Fault Severity
    Wang, Yiting
    Zhao, Xiaomin
    Ding, Xiaoming
    PROCEEDINGS OF 2015 6TH IEEE INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING AND SERVICE SCIENCE, 2015, : 737 - 741
  • [39] Properties of Effective Metrics for Coverage-Based Statistical Fault Localization
    Sun, Shih-Feng
    Podgurski, Andy
    2016 9TH IEEE INTERNATIONAL CONFERENCE ON SOFTWARE TESTING, VERIFICATION AND VALIDATION (ICST), 2016, : 124 - 134
  • [40] Test case prioritization based on early fault detection technique
    Yadav D.K.
    Dutta S.
    Recent Advances in Computer Science and Communications, 2021, 14 (01) : 302 - 316