A NOVEL TEST CASE PRIORITIZATION METHOD BASED ON PROBLEMS OF NUMERICAL SOFTWARE CODE STATEMENT DEFECT PREDICTION

被引:2
作者
Shao, Yuanxun [1 ]
Liu, Bin [1 ]
Wang, Shihai [1 ]
Xiao, Peng [2 ]
机构
[1] Beihang Univ, Sch Reliabil & Syst Engn, 37 Xueyuan RD Haidian, Beijing 100191, Peoples R China
[2] Jian Municipal Ind & Informat Technol Bur, 11-F,Block B,Adm Ctr Bldg, Jian 343000, Jiangxi, Peoples R China
来源
EKSPLOATACJA I NIEZAWODNOSC-MAINTENANCE AND RELIABILITY | 2020年 / 22卷 / 03期
关键词
software defect prediction; test case prioritization; code statement metrics; machine learning; software testing; MINIMIZATION; RELIABILITY; SELECTION; SYSTEM;
D O I
10.17531/ein.2020.3.4
中图分类号
T [工业技术];
学科分类号
08 ;
摘要
Test case prioritization (TCP) has been considerably utilized to arrange the implementation order of test cases, which contributes to improve the efficiency and resource allocation of software regression testing. Traditional coverage-based TCP techniques, such as statement-level, method/function-level and class-level, only leverages program code coverage to prioritize test cases without considering the probable distribution of defects. However, software defect data tends to be imbalanced following Pareto principle. Instinctively, the more vulnerable the code covered by the test case is, the higher the priority it is. Besides, statement-level coverage is a more fine-grained method than function-level coverage or class-level coverage, which can more accurately formulate test strategies. Therefore, we present a test case prioritization approach based on statement software defect prediction to tame the limitations of current coverage-based techniques in this paper. Statement metrics in the source code are extracted and data pre-processing is implemented to train the defect predictor. And then the defect detection rate of test cases is calculated by combining the prioritization strategy and prediction results. Finally, the prioritization performance is evaluated in terms of average percentage faults detected in four open source datasets. We comprehensively compare the performance of the proposed method under different prioritization strategies and predictors. The experimental results show it is a promising technique to improve the prevailing coverage-based TCP methods by incorporating statement-level defect-proneness. Moreover, it is also concluded that the performance of the additional strategy is better than that of max and total, and the choice of the defect predictor affects the efficiency of the strategy.
引用
收藏
页码:419 / 431
页数:13
相关论文
共 51 条
  • [1] Test Case Prioritization Using Requirements-Based Clustering
    Arafeen, Md Junaid
    Do, Hyunsook
    [J]. 2013 IEEE SIXTH INTERNATIONAL CONFERENCE ON SOFTWARE TESTING, VERIFICATION AND VALIDATION (ICST 2013), 2013, : 312 - 321
  • [2] A feature dependent Naive Bayes approach and its application to the software defect prediction problem
    Arar, Omer Faruk
    Ayan, Kursat
    [J]. APPLIED SOFT COMPUTING, 2017, 59 : 197 - 209
  • [3] Software defect prediction using cost-sensitive neural network
    Arar, Omer Faruk
    Ayan, Kursat
    [J]. APPLIED SOFT COMPUTING, 2015, 33 : 263 - 277
  • [4] Adaptive Coverage and Operational Profile-based Testing for Reliability Improvement
    Bertolino, Antonia
    Miranda, Breno
    Pietrantuono, Roberto
    Russo, Stefano
    [J]. 2017 IEEE/ACM 39TH INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING (ICSE), 2017, : 541 - 551
  • [5] Software defeat reduction top 10 list
    Boehm, B
    Basili, VR
    [J]. COMPUTER, 2001, 34 (01) : 135 - 137
  • [6] Test case prioritization: a systematic mapping study
    Catal, Cagatay
    Mishra, Deepti
    [J]. SOFTWARE QUALITY JOURNAL, 2013, 21 (03) : 445 - 478
  • [7] Investigating the effect of dataset size, metrics sets, and feature selection techniques on software fault prediction problem
    Catal, Cagatay
    Diri, Banu
    [J]. INFORMATION SCIENCES, 2009, 179 (08) : 1040 - 1058
  • [8] Coverage-based regression test case selection, minimization and prioritization: a case study on an industrial system
    Di Nardo, Daniel
    Alshahwan, Nadia
    Briand, Lionel
    Labiche, Yvan
    [J]. SOFTWARE TESTING VERIFICATION & RELIABILITY, 2015, 25 (04) : 371 - 396
  • [9] The Effects of Time Constraints on Test Case Prioritization: A Series of Controlled Experiments
    Do, Hyunsook
    Mirarab, Siavash
    Tahvildari, Ladan
    Rothermel, Gregg
    [J]. IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, 2010, 36 (05) : 593 - 617
  • [10] Machine Learning Applied to Software Testing: A Systematic Mapping Study
    Durelli, Vinicius H. S.
    Durelli, Rafael S.
    Borges, Simone S.
    Endo, Andre T.
    Eler, Marcelo M.
    Dias, Diego R. C.
    Guimaraes, Marcelo P.
    [J]. IEEE TRANSACTIONS ON RELIABILITY, 2019, 68 (03) : 1189 - 1212