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 条
  • [21] Conditional-based refactorings and fault-proneness: An empirical study
    Counsell, S.
    Gatrell, M.
    Hierons, R.
    Murgia, A.
    Tonelli, R.
    Marchesi, M.
    Concas, G.
    Proceedings - IEEE 6th International Conference on Software Testing, Verification and Validation Workshops, ICSTW 2013, 2013, : 80 - 85
  • [22] Conditional-based refactorings and fault-proneness: an empirical study
    Counsell, S.
    Gatrell, M.
    Hierons, R.
    Murgia, A.
    Tonelli, R.
    Marchesi, M.
    Concas, G.
    IEEE SIXTH INTERNATIONAL CONFERENCE ON SOFTWARE TESTING, VERIFICATION AND VALIDATION WORKSHOPS (ICSTW 2013), 2013, : 80 - 85
  • [23] Correlation of Change Size to Fault-Proneness: A Real Life Case Study
    Zeindl, Markus
    Seitz, Markus
    Facchi, Christian
    2016 IEEE/ACS 13TH INTERNATIONAL CONFERENCE OF COMPUTER SYSTEMS AND APPLICATIONS (AICCSA), 2016,
  • [24] Predicting fault-proneness using OO metrics -: An industrial case study
    Yu, P
    Systä, T
    Müller, H
    SIXTH EUROPEAN CONFERENCE ON SOFTWARE MAINTENANCE AND REENGINEERING, PROCEEDINGS, 2002, : 99 - 107
  • [25] Modelling fault-proneness statistically over a sequence of releases: a case study
    Ohlsson, MC
    Andrews, AA
    Wohlin, C
    JOURNAL OF SOFTWARE MAINTENANCE AND EVOLUTION-RESEARCH AND PRACTICE, 2001, 13 (03): : 167 - 199
  • [26] A Fault based Approach to Test Case Prioritization
    Farooq, Faiza
    Nadeem, Aamer
    2017 INTERNATIONAL CONFERENCE ON FRONTIERS OF INFORMATION TECHNOLOGY (FIT), 2017, : 52 - 57
  • [27] Slope-based Fault-proneness Thresholds for Software Engineering Measures
    Morasca, Sandro
    Lavazza, Luigi
    PROCEEDINGS OF THE 20TH INTERNATIONAL CONFERENCE ON EVALUATION AND ASSESSMENT IN SOFTWARE ENGINEERING 2016 (EASE '16), 2016,
  • [28] A Multi-factored Cost- and Code Coverage-Based Test Case Prioritization Technique for Object-Oriented Software
    Vedpal
    Chauhan, Naresh
    SOFTWARE ENGINEERING (CSI 2015), 2019, 731 : 27 - 36
  • [29] Automated Software Fault-Proneness Prediction Based on Fuzzy Inference System
    Jin, Cong
    Guo, Jing-Lei
    PROCEEDINGS OF 2013 2ND INTERNATIONAL CONFERENCE ON MEASUREMENT, INFORMATION AND CONTROL (ICMIC 2013), VOLS 1 & 2, 2013, : 482 - 485
  • [30] Fault-Based Regression Test Case Prioritization
    Biswas, Sourav
    Bansal, Aman
    Mitra, Pabitra
    Mall, Rajib
    IEEE TRANSACTIONS ON RELIABILITY, 2023, 72 (03) : 1176 - 1190