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 条
  • [41] A family of code coverage-based heuristics for effective fault localization
    Wong, W. Eric
    Debroy, Vidroha
    Choi, Byoungju
    JOURNAL OF SYSTEMS AND SOFTWARE, 2010, 83 (02) : 188 - 208
  • [42] A Greedy Approach for Coverage-Based Test Suite Reduction
    Harris, Preethi
    Raju, Nedunchezhian
    INTERNATIONAL ARAB JOURNAL OF INFORMATION TECHNOLOGY, 2015, 12 (01) : 17 - 23
  • [43] Optimum Test Suite Using Fault-Type Coverage-Based Ant Colony Optimization Algorithm
    Bharathi, M.
    INTERNATIONAL JOURNAL OF APPLIED METAHEURISTIC COMPUTING, 2022, 13 (01)
  • [44] Applying design metrics to predict fault-proneness: a case study on a large-scale software system
    Wong, WE
    Horgan, JR
    Syring, M
    Zage, W
    Zage, D
    SOFTWARE-PRACTICE & EXPERIENCE, 2000, 30 (14): : 1587 - 1608
  • [45] Code Coverage-based Failure Proximity without Test Oracles
    Tu, Jingxuan
    Xie, Xiaoyuan
    Xu, Baowen
    PROCEEDINGS 2016 IEEE 40TH ANNUAL COMPUTER SOFTWARE AND APPLICATIONS CONFERENCE WORKSHOPS, VOL 1, 2016, : 133 - 142
  • [46] Fault coverage-based test suite optimization method for regression testing: learning from mistakes-based approach
    Agrawal, Arun Prakash
    Choudhary, Ankur
    Kaur, Arvinder
    Pandey, Hari Mohan
    NEURAL COMPUTING & APPLICATIONS, 2020, 32 (12): : 7769 - 7784
  • [47] Fault coverage-based test suite optimization method for regression testing: learning from mistakes-based approach
    Arun Prakash Agrawal
    Ankur Choudhary
    Arvinder Kaur
    Hari Mohan Pandey
    Neural Computing and Applications, 2020, 32 : 7769 - 7784
  • [48] An improved method for test case prioritization by incorporating historical test case data
    Khalilian, Alireza
    Azgomi, Mohammad Abdollahi
    Fazlalizadeh, Yalda
    SCIENCE OF COMPUTER PROGRAMMING, 2012, 78 (01) : 93 - 116
  • [49] Comparing logic coverage criteria on test case prioritization
    ChunRong Fang
    ZhenYu Chen
    BaoWen Xu
    Science China Information Sciences, 2012, 55 : 2826 - 2840
  • [50] Comparing logic coverage criteria on test case prioritization
    Fang ChunRong
    Chen ZhenYu
    Xu BaoWen
    SCIENCE CHINA-INFORMATION SCIENCES, 2012, 55 (12) : 2826 - 2840