路径覆盖测试数据进化生成理论与方法
详细信息    本馆镜像全文|  推荐本文 |  |   获取CNKI官网全文
摘要
软件测试是保障软件质量的重要手段,其目的是在测试过程中尽可能多地发现软件存在的缺陷,因而其在整个软件开发过程中占有特别重要的位置。测试数据的好坏直接决定着测试的效果,因此软件测试中关键的问题是设计有效的测试数据。已有研究表明,路径覆盖是一种非常重要的软件测试充分性准则;遗传算法是自动生成路径覆盖测试数据的有效方法,但是已有研究成果在测试数据的生成效率和检错率上都有待提高。本文研究使用遗传算法自动生成路径覆盖测试数据的理论及方法。
     首先,针对现有方法对穿越难以覆盖节点的稀有数据缺乏保护措施问题,提出了在测试数据进化生成中动态捕捉稀有数据的方法。通过统计每代种群中目标路径各节点被穿越的个体数量,得到个体对生成穿越目标路径测试数据的贡献,以此作为权重调整个体的适应度,使稀有数据的适应度增加,在后续进化中得到保留,从而提高测试数据的生成效率。
     其次,提出了一种新的多路径覆盖测试数据生成方法。将被测程序表示成一棵二叉树,对目标路径采用赫夫曼编码方法表示成二进制串,依此设计了一种新的适应度函数,综合考虑个体穿越路径与每个目标路径的匹配程度,将提出的方法用于多个基准程序的测试,并与已有方法比较,结果表明所提方法计算量小,生成测试数据效率高。
     第三,针对已有方法生成的测试数据不能有效发现被测程序的缺陷,尤其是小概率缺陷的问题,提出了一种面向缺陷的路径覆盖测试数据进化生成方法。分别针对单路径和多路径情况,将路径覆盖和缺陷检测问题转化为约束多目标优化问题,以测试数据运行被测程序时发现的缺陷个数和缺陷的危险程度为目标,以穿越目标路径为约束,建立了该问题的数学模型,并提出了有针对性的求解方法。在实际软件测试中的应用表明,所提方法生成的测试数据不但穿越了目标路径,而且能有效检测到目标路径中的缺陷。
     最后,提出基于搜索空间缩减的路径覆盖测试数据进化生成理论。针对单路径覆盖测试数据生成问题,先确定目标路径与输入变量之间的关系,将可分目标路径分离出与部分分量相关的独立子路径;进化生成测试数据的过程中,固定被穿越子路径对应的输入分量,并缩小交叉和变异操作的范围,使种群在不断缩小的空间里寻找测试数据;然后针对多路径覆盖测试数据生成问题,提出了基于搜索空间缩减的多种群遗传算法,该方法将目标路径按照具有相同子路径进行分组,并确定每组公共子路径对应的分量,使用多个子种群分别进化生成各组目标路径的测试数据,进化过程中固定子种群内被穿越子路径对应的输入分量,并缩小交叉和变异操作的范围,使每个子种群在不断缩减的空间里寻找测试数据,有效提高了每个子种群内目标路径测试数据的生成效率,进而提高多路径覆盖测试数据进化生成效率。
     本论文所做的工作为路径覆盖测试数据的自动生成提供了新的思路,丰富了基于进化优化的软件测试理论,提高了测试数据的生成效率,保证了测试数据的质量,降低了软件测试成本,具有重要的理论意义和实际应用价值。
Software testing is an important means that guarantees software quality, aims todetect as many faults in the program under test as possible, and plays an importantrole in software development. The qualities of test data directly decide the test result,so the key question of software testing is to design effective test data. Existingresearches show that path testing is an important test adequacy criterion, and geneticalgorithm is an efficient method to automatically generate test data for path testing.Whereas, both the efficiency and rate of detecting faults of existing methods ongenerating test data need to be improved. This dissertation focuses on the theories andmethods of automatically generating test data for path testing using geneticalgorithms.
     First, considering that previous methods cannot effectively protect scarce datawhich traverse those nodes difficult to be covered, a method for capturing scarce datain evolutionary generation of test data for paths coverage is presented. In this method,the contribution of an individual to generate test data which traverse target paths isobtained by recording the number of individuals which traverse each node of thetarget path, and is regarded as a weight to adjust the fitness of an individual. In thisway, the fitness of a scarce datum can be increased, the scarce datum can beconserved in subsequent evolution, and the efficiency of generating test data is thusimproved.
     Then, a novel approach to generate test data for multiple paths coverage ispresented. In this method, the program under test is expressed as a binary tree; thetarget paths are encoded into a binary string using Huffman coding; an individual’sfitness is the degree of the traversed path matching the target paths, and a geneticalgorithm is employed to generate multiple test data, The proposed approach isapplied to several benchmark programs, and compared with previous approaches. Theresults indicate that the computation of the proposed approach is cheap and theefficiency in generating test data is high.
     Third, since the existing path-oriented testing methods may not find the faults inthe program under test, especially for those faults which emerge with a smallprobability, a method for evolutionarily generating test data is proposed for fulfillingpath coverage while detecting faults. To this end, a mathematical model of generatingtest data for path coverage with fault detection is established, which takes the number of faults in the traversed path and the risk level of the faults as the objectives, andtakes the approach level as the constraint; furthermore, a multi-objective evolutionarymethod to generate test data is proposed. The proposed method is applied to somepractical software testing, and the experimental results confirm that the test datagenerated by the method can not only traverse the target paths, but also detect faultslying in them.
     Finally, an improved approach is devised for the evolutionary processes ofgenerating test data using genetic algorithm, and the theory for evolutionarilygenerating test data for path coverage based on automatic reduction of the searchspace is presented. For the problem of generating test datum for only one target path,the relation between the target path and the input variable is determined, and thedivisible target path is divided into some sub-paths related to several elements of theinput variable. The elements corresponding to the traversed sub-path are fixed, andthe ranges of crossover and mutation operations are reduced in the process of theevolution, leading to the original population search for test data in a reduced space sothat the efficiency of generating test data is improved. For the problem of generatingtest date for multiple target paths, target paths are divided into several groups basedon the same sub-path which is only related to a part of input variables, and theelements of the input variable corresponding to the sub-path are determined. Thesub-populations whose number is the same with that of groups are used to generatethe test data of traversing the target paths in each group, respectively. During theevolution, the elements corresponding to the traversed sub-path are fixed, and therange of crossover and mutation operations are reduced, leading to the sub-populationsearch for test data in a reduced space so that the efficiency of generating test data isimproved.
     Results of this study provide new ways to generate test data for path coverage,enrich the theories of software testing based on evolutionary optimization, improvethe efficiency and the quality of test data generation, and then the cost of softwaretesting is reduced. Therefore, they have important theoretical significance andpractical values.
引文
[1]徐佐仁.软件可靠性工程[M].北京:清华大学出版社,2007.
    [2] Beizer B.. Software Testing Techniques [M]. International Thomson Computer Press,1990.
    [3] Myers G. J., Sandler C., Badgett T., et a1. The Art of Software Testing [M].2nd ed.[S.l.]: JohnWiley&Sons,2004.
    [4] Jorgensen P.. Software Testing:ACraftsman’s Approach [M].2nd ed.[S.l.]: CRC Press,2000.
    [5] McMinn P., Evolutionary Search for Test Data in the Presence of State Behavior[D].Dissertation of the University of Sheffield,2005.
    [6] Ahmed M. A., Hermadi I.. GA-based multiple paths test data generator [J]. Computers&Operations Research,2008,35(10):3107-3124.
    [7]夏辉,宋昕,王理.基于Z路径覆盖的测试用例自动生成技术研究[J].现代电子技术,2006,6:92-94.
    [8]宫云战.一种面向故障的软件测试新方法[J].装甲兵工程学院学报,2004,18(1):21-25.
    [9]邱晓康,李宣东.一个面向路径的软件测试辅助工具[J].电子学报,2004,32(12A):231-234.
    [10]单锦辉,王戟,齐治昌.面向路径的测试数据自动生成方法述评[J].电子学报,2004,32(1):109-113.
    [11] Buhler O., Wegener J.. Evolutionary functional testing [J]. Computers&Operations Research,2008,35(10):3144-3160.
    [12] Afzal W., Torkar R., Feldt R.. A systematic review of search-based testing for non-functionalsystem properties [J]. Information and Software Technology,2009,51(6):957-976.
    [13] Gross H., Kruse P. M., Wegener J., et al. Evolutionary white-box software test with theEvoTest framework, a progress report [C]. Proceedings of IEEE International Conference onSoftware Testing Verification and Validation Workshops,2009:111-120.
    [14] Liu S., Chen Y.. A relation-based method combining functional and structural testing for testcase generation [J]. The Journal of Systems and Software,2008,81(2):234-248.
    [15]单锦辉,姜瑛,孙萍.软件测试研究进展[J].北京大学学报(自然科学版),2005,41(1):134-145.
    [16] Chen T. Y., Kuo F. C., Merkel R. G., et al. Adaptive random testing: the ART of test casediversity [J]. The Journal of Systems and Software,2010,83(1):60-66.
    [17] Ding Z., Zhang K., Hua J.. A rigorous approach towards test case generation [J]. InformationSciences,2008,178(21):4057-4079.
    [18]王志言,刘椿年.区间算术在软件测试中的应用[J].软件学报,1998,9(6):438-443.
    [19] Coward P. D.. Symbolic execution and testing [J]. Information and Software Technology,1991,33(1):53-64.
    [20]聂长海,徐宝文.基于接口参数的黑箱测试用例自动生成算法[J].计算机学报,2004,27(3):382-388.
    [21]张德平,聂长海,徐宝文.划分测试中测试用例最优分配问题研究[J].南京大学学报(自然科学),2005,41(5):553-561.
    [22] Miller W., Spooner D. L.. Automatic generation of floating-point test data [J]. IEEETransaction on Software Engineering,1976,2(3):223-226.
    [23] Korel B.. Automated software test data generation [J]. IEEE Transaction on SoftwareEngineering,1990,16(8):870-879.
    [24]王雪莲,赵瑞莲,李立健.一种用于测试数据生成的动态程序切片算法[J].计算机应用,2005,25(6):1445-1447.
    [25] Callagher M., Narasimhan V. L.. ADTEST: A test data generation suite for Ada softwaresystems [J]. IEEE Transaction on Software Engineering,1997,23(8):473-484.
    [26] Gupta N., Mathur A. P., Soffa M. L.. Automated test data generation using an iterativerelaxation method [C]. Proceedings of the ACM Conference on the Foundations of SoftwareEngineering,1998:231-244.
    [27] Caserta M., Uribe A. M.. Tabu search-based metaheuristic algorithm for software systemreliability problems [J]. Computers&Operations Research,2009,36(3):811-822.
    [28] Alba E., Chicano F.. Observations in using parallel and sequential evolutionary algorithms forautomatic software testing [J]. Computers&Operations Research,2008,35(10):3161-3183.
    [29] Windisch A., Wappler S., Wegener J.. Applying particle swarm optimization to softwaretesting [C]. Proceedings of Genetic and Evolutionary Computation Conference,2007:1121-1128.
    [30] Sofokleous A. A., Andreou A. S.. Automatic, evolutionary test data generation for dynamicsoftware testing [J]. The Journal of System and Software,2008,81(11):1883-1898.
    [31] Harman M., McMinn P.. A theoretical and empirical study of search based testing: local,global and hybrid search [J]. IEEE Transactions on Software Engineering,2010,36(2):226-247.
    [32] Tonella P.. Evolutionary testing of classes [C]. Proceedings of the International Symposiumon Software Testing andAnalysis,2004:119–128.
    [33] Harman M., Islam F., Xie T., Wappler S.. Automated test data generation for aspect-orientedprograms [C]. Proceedings of International Conference on Aspect-Oriented SoftwareDevelopment,2009:185–196.
    [34] Derderian K., Hierons R. M., Harman M., Guo Q.. Input sequence generation for testing ofcommunicating finite state machines (CFSMs)[C]. Proceedings of Genetic and EvolutionaryComputation Conference,2004:1429–1430.
    [35] Zhan Y. and Clark J. A.. Search-based mutation testing for simulink models [C]. Proceedingsof Genetic and Evolutionary Computation Conference,2005:1061–1068.
    [36] Garousi V., Briand L. C., and Labiche Y.. Traffic-aware stress testing of distributed real-timesystems based on UML models using genetic algorithms [J]. Journal of Systems andSoftware,2008,81(2):161–185.
    [37] Tracey N., Clark J., and Mander K.. The way forward for unifying dynamic test-casegeneration: The optimisation-based approach [C]. Proceedings of International Workshop onDependable Computing and Its Applications,1998:169–180.
    [38] Jia Y. and Harman M.. Constructing subtle faults using higher order mutation testing [C].Proceedings of the the8th International Working Conference on Source Code Analysis andManipulation,2008:249–258.
    [39] Zhan Y. and Clark J. A.. The state problem for test generation in simulink[C]. Proceedings ofthe Genetic and Evolutionary Computation Conference,2006:1941–1948.
    [40] Wegener J. and Bu hler O.. Evaluation of different fitness functions for the evolutionarytesting of an autonomous parking system [C]. Proceedings of the Genetic and EvolutionaryComputation Conference,2004:1400–1412.
    [41] Harman M., Mansouri A., and Zhang Y.. Search based software engineering: Acomprehensive analysis and review of trends techniques and applications [D]. Department ofComputer Science, King’s College London, Technical Report TR-09-03,2009.
    [42] Holland J. H.. Adaptation in Natural and Artificial Systems [D]. The University of Michigan,Michigan,1975.
    [43]周明,孙树栋.遗传算法原理及应用[M].北京:国防工业出版社,2002.
    [44]姚香娟.复杂软件测试数据进化生成理论及应用[D].徐州:中国矿业大学,2011.
    [45] Korel B.. Dynamic method for software test data generation, Software Testing [J],Verification and Reliability,1992,2(4):203-213.
    [46]姬秀荔,李爱玲,孙玉强.一种新的软件测试数据的进化生成方法[J],微计算机信息,2007,21:249-251.
    [47] Xanthakis S., Ellis C., Skourlas C., et al. Application of genetic algorithms to software testing[C]. Proceedings of5th International Conference on Software Engineering and ItsApplications,1992:625-636.
    [48] Wegener J., Baresel A., Sthamer H.. Evolutionary test environment for automatic structuraltesting [J]. Information and Software Technology,2001,43(14):841-854.
    [49] Chen Y., Zhong Y.. Automatic path-oriented test data generation using a multi-populationgenetic algorithm [C]. Proceedings of the4th International Conference on NaturalComputation. Jinan, China,2008:566-570.
    [50] Rajappa V., Biradar A., Panda S.. Efficient software test case generation using geneticalgorithm based graph theory [C]. Proceedings of the1st International Conference onEmerging Trends in Engineering and Technology. Nagpur, India,2008:298-303.
    [51] Bouchachia A.. An immune genetic algorithm for software test data generation [C].Proceedings of the7th International Conference on Hybrid Intelligent Systems. Washington,DC, USA,2007:84-89.
    [52] Xiao M., Mohamed E. A., Reformat M., et al. Empirical evaluation of optimizationalgorithms when used in goal-oriented automated test data generation techniques [J].Empirical Software Engineering,2007,12(2):183-239.
    [53] Arcuri A., Yao X.. Search based software testing of object-oriented containers [J]. InformationSciences,2008,178(15):3075-3095.
    [54] McMinn P., Holcombe M.. Evolutionary testing using an extended chaining approach [J].Evolutionary Computation,2006,14(1):41-64.
    [55] Ribeiro J. C. B., Zenha-Rela M. A., Vega F. F.. Test case evaluation and input domainreduction strategies for the evolutionary testing of object-oriented software [J]. Informationand Software Technology,2009,51(11):1534-1548.
    [56] Gao H. C., Feng B. Q., Zhu L.. A kind of SAaGA hybrid meta-heuristic algorithm for theautomatic test data generation [C]. Proceedings of International Conference on NeuralNetworks and Brain,2005:111-114.
    [57] Liaskos K., Roper M.. Hybridizing evolutionary testing with artificial immune systems andlocal search [C]. Proceedings of IEEE International Conference on Software TestingVerification and Validation Workshop,2008:211-220.
    [58] McMinn P.. Search-based software test data generation: a survey [J]. Software Testing,Verification and Reliability,2004,14(2):105-156.
    [59] Bueno P. M. S., Jino M.. Automatic test data generation for program paths using geneticalgorithms [J]. International Journal of Software Engineering and Knowledge Engineering,2002,12(6):691–709.
    [60] Lin J., Yeh P.. Automatic test data generation for path testing using gas [J]. InformationSciences,2001,131(1–4):47–64.
    [61] Watkins A., Hufnagel E. M.. Evolutionary test data generation: a comparison of fitnessfunctions [J]. Software Practice and Experience,2006,36:95–116.
    [62] Malhotra R., Garg M.. An adequacy based test data generation technique using geneticalgorithms [J]. Journal of Information Processing Systems,2011,7(2):363-384.
    [63] Irfan S., Ranjan P.. A concept of out degree in CFG for optimal test data using geneticalgorithm [C]. Proceedings of the1st International Conference on Recent Advances inInformation Technology,2012,436–441.
    [64]谢晓园,徐宝文,史亮,聂长海.面向路径覆盖的演化测试用例生成技术[J].软件学报,2009,20(12):31173136.
    [65] McMinn P.. Search-based software testing: past, present and future (keynote paper)[C].Proceedings of the4th International Workshop on Search-Based Software Testing,2011,153-163.
    [66] Tracey N., Clark J., Mander K., and McDermid J.. An automated framework for structuraltestdata generation [C]. Proceedings of the International Conference on Automated SoftwareEngineering (ASE1998), IEEE Computer Society Press,1998,285–288.
    [67] Arcuri A.. It does matter how you normalise the branch distance in search based softwaretesting [C]. Proceedings of the third International Conference on Software Testing,Verification and Validation,2010,205-214.
    [68] Sagarna R., Yao X.. Handling constraints for search based software test data generation [C].Proceedings of IEEE International Conference on Software Testing Verification andValidation Workshop,2008:232-240.
    [69] Ghiduk A. S.. Harrold M. J., Using genetic algorithms to aid test data generation for data flowcoverage [C]. Proceedings of the14th Asia-Pacific Software Engineering Conference,2007:41-48.
    [70] Harman M., Lakhotia K., McMinn P.. A multi-objective approach to search-based test datageneration [C]. Proceedings of Genetic and Evolutionary Computation Conference,2007:1098-1105.
    [71] Yoo S., Harman M.. Pareto efficient multi-objective test case selection [C]. Proceedings ofInternational Symposium on Software Testing and Analysis, London, United Kingdom,2007:140-150
    [72]王德胜,宫云战.论软件缺陷[J].计算机应用研究,2008,25(12):3531-3533.
    [73]柯平,宫云战,杨朝红.内存泄露静态检测模型[J].计算机科学,2009,4:175-178.
    [74]赵鹏宇,李建茹,宫云战.JAVA语言中数组越界故障的静态测试研究[J].计算机工程与应用,2008,44(27):87-90.
    [75]江标,宫云战,杨朝红.非法计算检测的通用模型[J].计算机辅助设计与图形学学报,2009,21(4):487-492.
    [76]杨朝红,宫云战,肖庆,王雅文.基于软件缺陷模型的测试系统[J].北京邮电大学学报,2008,5:1-4.
    [77]王青,伍书剑,李明树.软件缺陷预测技术[J].软件学报,2008,19(7):1565-1579.
    [78]刘海,郝克刚.软件缺陷数据的定义[J].计算机应用,2008,28(1):226-228.
    [79] Arcuri A.. On the Automation of Fixing Software Bugs [C]. Proceedings of the30thInternational Conference on Software Engineering, Leipzig, Germany,2008:1003-1006.
    [80] Arcuri A., Yao X.. ANovel Co-evolutionary Approach to Automatic Software Bug Fixing[C].Proceedings of IEEE Congress on Evolutionary Computation,2008:162-168.
    [81] Novark G., Berger E. D., Zorn B. G.. Exterminator: automatically correcting memory errorswith high probability [C]. Proceedings of ACM SIGPLAN2007Conference onProgramming Language Design and Implementation, ACM Press New York, NY, USA,2007:1-11.
    [82] Wong W. E., Wei T. T., Qi Y. and Zhao L.. A Crosstab-based statistical method for effectivefault localization [C]. Proceedings of International Conference on Software Testing,Verification, and Validation,2008,42-51.
    [83] Wong W. E., Debroy V., Choi B.. A family of code coverage-based heuristics for effectivefault localization [J]. The Journal of Systems and Software,2010,83(2):188-208.
    [84] Zhang Z., Jiang B., Chan W. K., et al. Fault localization through evaluation sequences [J].The Journal of Systems and Software,2010,83(2):174-187.
    [85]董国伟,徐宝文,陈林等.蜕变测试技术综述[J]. Journal of Frontiers of Computer Scienceand Technology,2009,3(2):130-143.
    [86]董国伟,聂长海,徐宝文.基于程序路径分析的有效蜕变测试[J].计算机学报,2009,32(5):1002-1013.
    [87] Chen Y., Zhong Y., Shi T. T., Liu J. Y.. Comparison of two fitness functions for GA-basedpath-oriented test data generation [C]. Proceedings of the fifth International Conference onNatural Computation,2009:177–181.
    [88] Cao Y., Hu C. H., Li L. M.. An approach to generate software test data for a specific pathautomatically with genetic algorithm [C]. Proceedings of the8th International Conference onReliability, Maintainability and Safety,2009:888-892.
    [89] Alshraideh M., Mahafzah B. A., Al-Sharaeh S.. A multiple-population genetic algorithm forbranch coverage test data generation [J]. Software Quality Journal,2011,19:489–513.
    [90] Arcuri A., Iqbal M. Z., Briand L.. Formal analysis of the effectiveness and predictability ofrandom testing [C]. Proceedings of the19th International Symposium on Software Testingand Analysis, New York, NY, USA: ACM,2010:219–230.
    [91] Hyunsook D., Sebastian E., Gregg R.. Supporting controlled experimentation with testingtechniques: an infrastructure and its potential impact [J]. Empirical Software Engineering: AnInternational Journal,2005,10(4):405-435.
    [92] Gou P. C., Zhao Y., Yi H. G., Bai J. L., Yu H., Chen F.. The application of permutation testin the hypothesis test [J]. Application of Statistics and Management,2006,25:616-622.
    [93]严蔚敏,吴伟民.数据结构(C语言版)[M].北京:清华大学出版社,2007.
    [94] Binkley D. W., Harman M., Lakhotia K.. FlagRemover: a testability transformation fortransforming loop assigned flags [J]. ACM Transactions on Software Engineering andMethodology,2009,2(3):110-146.
    [95] Morell L. J.. A theory of fault-based testing [J]. IEEE Transactions on Software Engineering,1990,16(8):844-857.
    [96] Romano D., Penta M. D., Antoniol G.. An approach for search based testing of null pointerexceptions [C]. Proceedings of the International Conference on Software Testing,Verification and Validation,2011,160-169.
    [97] Nanda M. G., Sinha S.. Accurate interprocedural nulldereference analysis for Java [C].Proceedings of the31st International Conference on Software Engineering,2009,133-143.
    [98] Bhattacharya N., Sakti A., Antoniol G., Gueheneuc Y. G., Pesant G.. Divide-by-zeroexception raising via branch coverage [C]. Proceedings of the Third international conferenceon Search based software engineering,2011,204-218.
    [99] Godefroid P., Levin M. Y., Molnar D.. Active property checking [C]. Proceedings of the8thACM international conference on Embedded software,2008,207-216.
    [100] Khosla T., Garg S.. Metamorphic testing effectiveness on trigonometry [J]. InternationalJournal of Computer Science and Technology,2011,2(3):576-578.
    [101] McMinn P.. Co-testability transformation [C]. Proceedings of the Testing: Academic&Industrial Conference: Practice And Research Techniques(Fast Abstract),2008.
    [102] McMinn P.. Search-based failure discovery using testability transformations to generatepseudo-Oracles [C]. Proceedings of Genetic and Evolutionary Computation Conference,2009,1689-1696.
    [103] Hamlet R. G.. Testing programs with the aid of a compiler [J]. IEEE Transactions onSoftware Engineering,1977,3(4):279-290.
    [104] Fraser G., Zeller A.. Mutation-driven generation of unit tests and oracles [J]. IEEETransactions on Software Engineering,2012,38(2):278-292.
    [105] Jia Y., Harman M.. An analysis and survey of the development of mutation testing [J]. IEEETransactions on Software Engineering,2011,37(5):649-678.
    [106] Offutt A. J., Pan J., Tewary K., Zhang T., An experimental evaluation of data flow andmutation testing [J]. Software Practice and Experience,1996,26(2):165-176.
    [107]宫云战,赵瑞连,张威,赵会群.软件测试教程[M].北京:机械工业出版社,2008.
    [108] Deb K.. Multi-objective Optimization Using Evolutionary Algorithms [M]. John Wiley&Sons Inc,2001.
    [109]玄光男,程润伟著.遗传算法与工程优化[M].北京:清华大学出版社,2004.
    [110] Zhong H., Zhang L., Mei H. An experimental study of four typical test suite reductiontechniques [J]. Information and Software Technology,2008,50(6):534-546.
    [111] Hutchins M., Foster H., Goradia T. et al. Experiments of the effectiveness of data flow andcontrol flow-based test adequacy criteria [C]. Proceedings of the16th InternationalConference on Software Engineering,1994:191-200.
    [112] http://sir.unl.edu/portal/index.php.
    [113]汪朝军,刘艳明,杨叔子.变搜索域遗传算法及其在铣削加工参数优化中的应用[J].中国机械工程,1998,9(4):33-34.
    [114]陈永琴,苏三买.自适应变搜索域遗传算法及其在发动机模型中的应用[J].推进技术,2007,28(4):428-432.
    [115]郝国生,张勇,张建化,石明辉,史有群.基于灭绝机制的交互式遗传算法[J].控制理论与应用,2006,23(5):665-670.
    [116] Offutt J., Jin Z., and Pan J.. The dynamic domain reduction procedure for test datageneration [J]. Software Practice and Experience,1999,29(2):167–193.
    [117] Harman M., Hassoun Y., Lakhotia K., McMinn P. and Wegener J.. The impact of inputdomain reduction on search-based test data generation [C]. Proceedings of the6th JointMeeting of the European Software Engineering Conference and the ACM SIGSOFTSymposium on The Foundations of Software Engineering,2007:155-164.
    [118] McMinn P., Harman M., Lakhotia K., Hassoun Y.. Input domain reduction through irrelevantvariable removal and its effect on local, global and hybrid search-based structural test datageneration [J]. IEEE Transactions on Software Engineering,2012,38(2):453-477.
    [119] Harman M., Islam F., Xie T. and Wappler S.. Automated test data generation foraspect-oriented programs [C]. Proceeding of the8th International Conference onAspect-Oriented Software Development,2009:185–196.
    [120]苗金凤,王洪国,邵增珍,赵学臣.基于多级搜索区域的协同进化遗传算法[J].计算机应用研究,2010,27(9):3347-3351.
    [121] Gong D. W., Zhang W. Q., Yao X. J.. Evolutionary generation of test data for many pathscoverage based on grouping [J]. The Journal of Systems and Software,2011,84(12):2222-2233.

© 2004-2018 中国地质图书馆版权所有 京ICP备05064691号 京公网安备11010802017129号

地址:北京市海淀区学院路29号 邮编:100083

电话:办公室:(+86 10)66554848;文献借阅、咨询服务、科技查新:66554700