计算机科学 ›› 2014, Vol. 41 ›› Issue (5): 72-77.doi: 10.11896/j.issn.1002-137X.2014.05.016

• 2013容错计算 • 上一篇    下一篇

基于PSO的多目标测试用例预优化

陈云飞,李征,赵瑞莲   

  1. 北京化工大学计算机系 北京100029;北京化工大学计算机系 北京100029;北京化工大学计算机系 北京100029
  • 出版日期:2018-11-14 发布日期:2018-11-14
  • 基金资助:
    本文受国家自然科学基金(61170082,61073035),教育部新世纪优秀人才支持计划(NCET-12-0757),教育部留学回国人员科研启动基金(LXJJ201303)资助

Applying PSO to Multi-objective Test Cases Prioritization

CHEN Yun-fei,LI Zheng and ZHAO Rui-lian   

  • Online:2018-11-14 Published:2018-11-14

摘要: 随着软件规模的增大,在软件回归测试中,重复执行庞大的全部测试用例集已不再现实。在这种情况下,对测试用例集进行预处理就尤为重要。测试用例预优化是寻找最佳测试用例执行序列的一种技术。在实际的软件回归测试中,基于多目标的测试用例优化技术已逐步取代了单目标优化;应用进化算法解决多目标测试用例预优化是当前研究的热点。但由于进化算法主要是基于种群进行遗传迭代,种群间的交互机制相对复杂,算法的执行效率会随着种群及测试用例集规模的增大而显著下降。针对上述情况,提出了一种基于粒子群优化算法(PSO)的测试用例预优化方法,设计了粒子的表示和状态更新方式,研究了不同粒子更新方式和迭代次数及粒子群大小对多目标测试用例预优化结果的影响。 实验结果显示 ,同基于NSGA-Ⅱ的方法相比,所提方法的执行效率显著提高,可以解决实际回归测试中的多目标测试用例预优化问题。

Abstract: It may be impossible to re-execute the whole test suite in regression testing with the increasing size of software.In such a case,prioritizing test cases is vital to software regression testing.Test cases prioritization is a technique to search the best sequence of test cases execution.In regression testing for real projects,single-objective test cases prio-ritization has been gradually replaced by multi-objective prioritization,where the application of Evolution Algorithms to address multi-objective optimization problems is a hot spot in current research.However EAs are based on population genetic iterations in which the mechanism of exchanging information among populations is relatively complex,and consequently the efficiency of test suite prioritization based on EAs is sharply declining with the increase in the scale of the population.To address this problem,the paper presented a test suite prioritization technique based on Particle Swarm Optimization, proposed the corresponding particle representation,position and speed updated methods.Empirical studies were conducted to study the effect caused by different types of particle updating methods and size of particle swarm.Compared to the NSGA-Ⅱ based test case prioritization,the proposed technique is more efficient in test suite prioritization in real programs.

[1] Harrold M J.Testing:a roadmap[C]∥Proceedings of the conference on the future of software engineering.ACM,2000:61-72
[2] Li Z,Harman M,Hierons R M.Search algorithms for regressiontest case prioritization[J]. IEEE Transactions on Software Engineering,2007,33(4):225-237
[3] Yoo S,Harman M.Regression testing minimization,selectionand prioritization:a survey[J].Software Testing,Verification and Reliability:2012,22(2):67-120
[4] Harman M,Jones B F.Search-based software engineering[J].Information and Software Technology,2001,43(14):833-839
[5] Zhang T,Brorsen B W.Particle swarm optimization algorithmfor agent-based artificial markets[J].Computational Econo-mics,2009,34(4):399-417
[6] Zhu H,Wang Y,Wang K,et al.Particle Swarm Optimization(PSO) for the constrained portfolio optimization problem[J].Expert Systems with Applications,2011,38(8):10161-10169
[7] Kennedy J,Eberhart R.Particle swarm optimization[C]∥ IEEE International Conference on Neural Networks,1995.IEEE,1995,4:1942-1948
[8] Coello Coello C A,Lechuga M S.MOPSO:A proposal for multiple objective particle swarm optimization[C]∥ Proceedings of the 2002Congress on Evolutionary Computation,2002(CEC’02).IEEE,2002,2:1051-1056
[9] Leung H K N,White L.Insights into regression testing [software testing][C]∥Conference on Software Maintenance,1989.IEEE,1989:60-69
[10] Harrold M J.Testing evolving software[J].Journal of Systems and Software,1999,47(2):173-181
[11] Yoo S,Harman M.Pareto efficient multi-objective test case selection[C]∥Proceedings of the 2007international symposium on Software testing and analysis.ACM,2007:140-150
[12] 程俊,李征,赵瑞莲.CPU+GPU异构并行多目标测试用例预优化技术[C]∥第七届中国测试学术会议(CTC2012).2012,6:116-121
[13] Malz C,Jazdi N,Gohner P.Prioritization of Test Cases Using Software Agents and Fuzzy Logic[C]∥2012IEEE Fifth International Conference on Software Testing,Verification and Validation (ICST).IEEE,2012:483-486
[14] Tonella P,Avesani P,Susi A.Using the case-based rankingmethodology for test case prioritization[C]∥22nd IEEE International Conference on Software Maintenance,2006(ICSM’06).IEEE,2006:123-133
[15] Kayes M I.Test case prioritization for regression testing based on fault dependency[C]∥20113rd International Conference on Electronics Computer Technology (ICECT).IEEE,2011,5:48-52
[16] Deep K,Chauhan P,Pant M.Totally disturbed chaotic Particle Swarm Optimization[C]∥2012IEEE Congress on Evolutionary Computation (CEC).IEEE,2012:1-8
[17] 廖子贞,罗可,周飞红,等.一种自适应惯性权重的并行粒子群聚类算法[J].计算机工程与应用,2007,43(28):166-168
[18] Lian Z,Gu X,Jiao B.A similar particle swarm optimization algorithm for permutation flowshop scheduling to minimize makespan[J].Applied Mathematics and Computation,2006,175(1):773-785
[19] Hla K H S,Choi Y S,Park J S.Applying particle swarm optimization to prioritizing test cases for embedded real time software retesting[C]∥IEEE 8th International Conference on Computer and Information Technology Workshops,2008(CIT Workshops 2008).IEEE,2008:527-532
[20] 沈恺涛,胡德敏.基于云计算和改进离散粒子群的任务调度研究[J].计算机测量与控制,2012,20(011):3070-3072

No related articles found!
Viewed
Full text


Abstract

Cited

  Shared   
  Discussed   
No Suggested Reading articles found!