Computer Science ›› 2021, Vol. 48 ›› Issue (5): 99-108.doi: 10.11896/jsjkx.200400100

• Computer Software • Previous Articles     Next Articles

Test Case Prioritization Combining Clustering Approach and Fault Prediction

XIAO Lei1,2,3, CHEN Rong-shang1,4, MIAO Huai-kou2, HONG Yu5   

  1. 1 College of Computer and Information Engineering,Xiamen University of Technology,Xiamen,Fujian 361024,China
    2 School of Computer Engineering and Science,Shanghai University,Shanghai 200444,China
    3 Shanghai Key Laboratory of Computer Software Testing & Evaluating,Shanghai 201112,China
    4 Engineering Research Center for Software Testing and Evaluation of Fujian Province,Xiamen,Fujian 361000,China
    5 Fujian Yifei Information Technology Co.,Ltd.,Xiamen,Fujian 361000,China
  • Received:2020-04-22 Revised:2020-09-23 Online:2021-05-15 Published:2021-05-09
  • About author:XIAO Lei,born in 1979,associate professor.Her main research interest includes software testing technology.(lxiao@xmut.edu.cn)
    CHEN Rong-shang,born in 1982,senior engineer.His main research interest includes software defect prediction.
  • Supported by:
    National Natural Science Foundation of China(61572306) and Open Project of Fujian Software Evaluation Engineering Technology Research Center(ST2019002).

Abstract: The rapid delivery of software leads to the frequent execution of regression testing.The higher efficiency of regression testing is required for the quick fault-feedback in Continuous integration(CI).The goal of test case prioritization(TCP) approach is that the test cases with the higher fault detection rate are preferentially executed.Therefore,TCP approach meets the requirement of quick fault-feedback in CI.The fault prediction approach can predict the failed probability in the new version using the code feature and the historical failure information.The choice of the number of cluster and the feature subset are not considered in the traditional clustering TCP approaches.This paper proposes a test case prioritization method combining clustering approach and fault prediction,which fisrtly identifies the correlation between the test cases and the codes,then divides the test cases into the different clusters,lastly implements the inter-cluster and intra-cluster prioritization on the guidance of the fault prediction and the maximum and minimum distance strategy.The experimental results verify that the efficiency of prioritization is influenced by the choice of the number of cluster and the feature subset.If the best clustering number and the feature subset are not required,the proposed approach is superior to the traditional clustering TCP approaches.

Key words: Cluster analysis, Defect prediction, Feature subset, Regression testing, Test case prioritization, The best cluster number

CLC Number: 

  • TP311
[1]LIMA J A,VERGILIO S R.Test Case Prioritization in Continuous Integration environments:A systematic mapping study[J].Information & Software Technology,2020,121:1062-1068.
[2]LEUNG H K N,WHITE L.Insights into regression testing[C]//Conference on Software Maintenance.1989:60-69.
[3]BEIZER B.Software testing techniques(2.ed.)[M].DBLP,1990.
[4]CHEN X,CHEN J H,JU X L,et al.Survey of Test Case Prioritization Techniques for Regression Testing[J].Journal of Software,2013,24(8):1695-1712.
[5]ROTHERMEL G,UNTCH R H,CHU C,et al.PrioritizingTest Cases For Regression Testing[J].IEEE Transactions on Software Engineering,2001,27(10):929-948.
[6]ROTHERMEL G,UNTCH R H,CHU C,et al.Test Case Prioritization:An Empirical Study[C]//IEEE International Confe-rence on Software Maintenance.IEEE,1999:179-188.
[7]QU B,NIE C H,XU B W.Test Case Prioritization Based onTest Suite Design Information[J].Chinese Journal of Compu-ters,2008,31(3):431-439
[8]YANG G H,BAO Y,LI D H,et al.Test case prioritization based on requirement[J].Computer Engineering & Design,2011,32(8):2724-2728
[9]JEFFREY D,GUPTA N.Test Case Prioritization Using Relevant Slices[C]//International Computer Software & Applications Conference.IEEE Computer Society,2006:411-420.
[10]KOREL B,KOUTSOGIANNAKIS G.Experimental Compari-son of Code-Based and Model-Based Test Prioritization[C]//2009 International Conference on Software Testing,Verification,and Validation Workshops.IEEE,2009:77-84.
[11]KOREL B,TAHAT L H,HARMAN M.Test PrioritizationUsing System Models[C]//IEEE International Conference on Software Maintenance.IEEE,2005:559-568.
[12]HE L L,YANG Y,LI Z,et al.Reward of Reinforcement Lear-ning of Test Optimization for Continuous Integration[J].Journal of Software,2019,30(5):1438-1449.
[13]WANG X L,ZENG H W,LIN W W.Techniques for Regression Testing in Agile DevelopmentEnvironment[J].Chinese Journal of Computers,2019,42(10):2323-2338.
[14]HAGHIGHATKHAH A,MANTYLA M V,OIVO M,et al.Test prioritization in continuous integration environments[J].Journal of Systems and Software,2018,146(12):80-98.
[15]LEON D,PODGURSKI A.A Comparison of Coverage-Basedand Distribution-Based Techniques for Filtering and Prioritizing Test Cases[C]//International Symposium on Software Reliabi-lity Engineering.IEEE,2003:442-453.
[16]YOO S,HARMAN M,TONELLA P,et al.Clustering TestCases to Achieve Effective & Scalable Prioritisation Incorporating Expert Knowledge[C]//Issta Proceedings of Theghteenth International Symposium on Software Testing & Analysis.2009:201-212.
[17]XIANG C,QING G U,SHU L W,et al.Survey of Static Software Defect Prediction[J].Journal of Software,2016,27(1):1-25.
[18]HEARST M A,DUMAIS S T,OSMAN M E,et al.Support vector machines[J].IEEE Intelligent Systems & Thr Applications,1998,13(4):18-28.
[19]CARLSON R,DO H,DENTON A.A clustering approach to improving test case prioritization:An industrial case study[C]//IEEE International Conference on Software Maintenance.IEEE,2011:382-391.
[20]ARAFEEN M J,DO H.Test Case Prioritization Using Requirements-Based Clustering[C]//IEEE Sixth International Confe-rence on Software Testing.IEEE Computer Society,2013:312-321.
[21]CAI J Y,REN Z L,HU Y,et al.Clustering based test case prioritization[J].Computer Engineering and Applications,2016,52(5):11-15.
[22]NOOR T B,HEMMATI H.A similarity-based approach for test case prioritization using historical failure data[C]//2015 IEEE 26th International Symposium on Software Reliability Enginee-ring(ISSRE).IEEE,2015:58-68.
[23]LI Y L,WANG Q.Test Set Optimization in Continuous Integration:A Systematic Literature Review[J].Journal of Software,2018,29(10):129-158.
[24]MCCABE T J.A Complexity Measure(Abstract).[C]//International Conference on Software Engineering.1976:308-320.
[25]HALSTEAD M H.Elements of Software Science(Operating and programming systems series)[M].Elsevier Science Inc.1978.
[26]BAO Y Q.Survey on Software Prediction Based on MachineLearning[D].Zhejiang:Zhejiang University of Technology,2018.
[27]XING F,GUO P,LYU M R.A novel method for early software quality prediction based on support vector machine[C]//16th IEEE International Symposium on Software Reliability Engineering(ISSRE'05).IEEE,2005:213-222.
[28]WANG T,LI W H,LIU Z L,et al.A software DP(defects prediction) model based on SVM(support vector machine)[J].Journal of Northwestern Polytechnical University,2011,29(6):864-870.
[29]WANG Q,WU S J,LI M S,et al.Software Defect Prediction [J].Journal of Software,2008,19(7):1565-1580.
[30]JING X,WU F,DONG X,et al.An Improved SDA Based Defect Prediction Framework for Both Within-Project and Cross-Project Class-Imbalance Problems[J].IEEE Transactions on Software Engineering,2017,43(4):321-339.
[31]JING X,WU F,DONG X,et al.Heterogeneous cross-company defect prediction by unified metric representation and CCA-based transfer learning[C]//Joint Meeting.2015:496-507.
[32]MACQUEEN J.Some Methods for Classification and Analysisof MultiVariate Observations[C]//Proc of Berkeley Symposium on Mathematical Statistics & Probability.1965.
[33]LIU H Y.The Research on Feature Selection Algorithms based onInformation Theory[D].Shanghai:Fudan University,2012.
[34]WANG P.Research on Software Defect Prediction Based onFeature Selection[D].Central China Normal University,2013.
[35]DAVIES D L,BOULDIN D W.A Cluster Separation Measure[J].IEEE Trans. Pattern. Anal. Mach. Intell.,1979,PAMI-1(2):224-227.
[36]CHANG C C,CHIH J,et al.LIBSVM:A library for supportvector machines[J].Acm Transactions on Intelligent Systems &Technology,2011,2(3):1-27.
[37]FRANK E,HALL M,HOLMES G,et al.Weka-A MachineLearning Workbench for Data Mining[C]//Data Mining and Knowledge Discovery Handbook.2009:1-10.
[38]Weka Home Page[OL].http://www.cs.waikato.ac.nz/ml/weka/.
[39]ELBAUM S,MALISHEVSKY A G,ROTHERMEL G.Testcase prioritization:a family of empirical studies[J].IEEE Transactions on Software Engineering,2002,28(2):159-182.
[40]WITTEN I H,FRANK E.Data Mining:Practical MachineLearning Tools and Techniques(Third Edition)[M].China Machine Press,2005.
[41]WANG R C.Research on Similarity-based Regression TestCaseReduction and Prioritization[D].Huazhong:Huazhong University of Science and Technology,2015.
[1] ZHENG Xiao-meng, GAO Meng, TENG Jun-yuan. Research on Construction Method of Defect Prediction Dataset for Spacecraft Software [J]. Computer Science, 2021, 48(6A): 575-580.
[2] TENG Jun-yuan, GAO Meng, ZHENG Xiao-meng, JIANG Yun-song. Noise Tolerable Feature Selection Method for Software Defect Prediction [J]. Computer Science, 2021, 48(12): 131-139.
[3] GAO Yu-tong, LEI Wei-min, YUAN Yue. Face Recognition Based on Cluster Analysis in Complex Environment [J]. Computer Science, 2020, 47(7): 111-117.
[4] WANG Sheng-wu,CHEN Hong-mei. Feature Selection Method Based on Rough Sets and Improved Whale Optimization Algorithm [J]. Computer Science, 2020, 47(2): 44-50.
[5] WANG Rui-jie, LI Jun-huai, WANG Kan, WANG Huai-jun, SHANG Xun-chao, TU Peng-jia. Feature Selection Method for Behavior Recognition Based on Improved Feature Subset Discrimination [J]. Computer Science, 2020, 47(11A): 204-208.
[6] FENG Shen-feng, GAO Jian-hua. Test Case Prioritization Method Based on AHP for Regression Testing [J]. Computer Science, 2019, 46(8): 233-238.
[7] QIU Shao-jian, CAIZi-yi, LU Lu. Cost-sensitive Convolutional Neural Network Model for Software Defect Prediction [J]. Computer Science, 2019, 46(11): 156-160.
[8] HU Meng-yuan, HUANG Hong-yun, DING Zuo-hua. Ensemble Model for Software Defect Prediction [J]. Computer Science, 2019, 46(11): 176-180.
[9] XUE Can-guan, YAN Xue-feng. Software Defect Prediction Based on Improved Deep Forest Algorithm [J]. Computer Science, 2018, 45(8): 160-165.
[10] CHENG Jing, ZHANG Tao, WANG Tao, DONG Zhan-wei. Graphic Complexity-based Prioritizing Technique for Regression Testing of Mobile Navigation Service [J]. Computer Science, 2018, 45(6): 141-144.
[11] CHEN Xiang, WANG Qiu-ping. Multi-objective Supervised Defect Prediction Modeling Method Based on Code Changes [J]. Computer Science, 2018, 45(6): 161-165.
[12] CHENG Xue-mei, YANG Qiu-hui, ZHAI Yu-peng and CHEN Wei. Test Case Selection Technique Based on Semi-supervised Clustering Method [J]. Computer Science, 2018, 45(1): 249-254.
[13] CHEN Shu-xin, SUN Wei-min and WANG Li-li. Analysis of Astronomical Spectral Data Based on Grid Clustering [J]. Computer Science, 2017, 44(Z11): 453-456.
[14] YANG Jie, YAN Xue-feng and ZHANG De-ping. Cost-sensitive Software Defect Prediction Method Based on Boosting [J]. Computer Science, 2017, 44(8): 176-180.
[15] YU Ming-qiu, ZHOU Chuang-ming and ZHAO Min. De-jitter Dynamic Slot Allocation Algorithm Based on Cluster Analysis [J]. Computer Science, 2017, 44(7): 94-97.
Viewed
Full text


Abstract

Cited

  Shared   
  Discussed   
No Suggested Reading articles found!