共查询到17条相似文献,搜索用时 234 毫秒
1.
测试数据自动生成方法 总被引:4,自引:0,他引:4
软件测试是提高软件可靠性、保证软件质量的重要手段,可分为静态分析、路径选择、测试数据生成和动态分析四个阶段,而软件测试过程中的一个重要任务是生成测试数据。文中首先给出了遗传算法的形式化描述,然后提出了遗传算法和函数极小化相结合的方法自动生成测试数据,并通过具体实例表明其有效性。 相似文献
2.
基于量子遗传算法的软件测试数据自动生成 总被引:2,自引:0,他引:2
测试数据的自动生成是测试阶段最关键的技术问题,改进软件测试方法,对提高软件测试的自动化程度具有十分重要的现实意义;在测试数据的自动生成的方法中,遗传算法虽然取得了较好的效果,但是这种算法存在缺陷和局限性,而量子遗传算法改善了其不足之处;应用量子遗传算法解决软件测试数据生成问题,克服了传统的以测试数据为核心的测试方法的不足和缺陷,实验结果表明量子遗传算法的测试用例生成效率高于遗传算法;所以,量子遗传算法可以作为一种较为理想的算法进行测试数据的自动生成,对软件测试中的测试数据自动生成具有很强的使用价值。 相似文献
3.
《计算机应用与软件》2015,(11)
可扩展有限状态机EFSM(Extended Finite State Machine)是目前常用的一种描述软件状态和行为的模型,研究EFSM模型的测试数据自动生成方法具有重要的意义。针对EFSM模型,本文提出一种面向EFSM路径的测试数据自动生成方法,利用多种群遗传算法MPGA(Multi-Population Genetic Algorithm)实现了EFSM测试数据的自动生成。实验结果表明,基于MPGA的EFSM模型测试数据自动生成是确实可行的,并且其测试数据生成效率优于遗传算法(GA)的测试数据生成效率。同时,通过实验分析了MPGA的种群数量、迁移间隔、迁移率、迁移策略等相关参数对EFSM模型测试数据生成效率的影响,得出一种最优的参数组合,对后续进一步利用MPGA进行测试数据自动生成的研究具有一定的指导意义。 相似文献
4.
测试数据生成是组合软件测试的重要部分,生成高质量的测试数据对于软件测试具有重要意义.针对两两组合测试数据生成问题,结合传统遗传算法,加入了精英策略和自适应变异概率,提出了DM-GA( dynamic mutation rates-genetic algorithm)算法,改善了传统遗传算法容易陷入局部最优以及收敛速度慢等不足,并取得了良好的效果.实验结果表明DM-GA算法可以作为一种较理想的两两组合测试数据生成方法. 相似文献
5.
基于模拟退火遗传算法的软件测试数据自动生成 总被引:18,自引:2,他引:16
傅博 《计算机工程与应用》2005,41(12):82-84
提出了一种应用于软件测试中的基于模拟退火遗传算法的测试数据自动生成算法。该算法针对测试数据自动生成的特点将遗传算法和模拟退火有机结合,充分发挥遗传算法的全局搜索和模拟退火的局部搜索优势,提高了测试数据的生成能力。实验结果表明,该算法在测试数据自动生成的效率和效果方面,优于遗传算法。 相似文献
6.
软件测试数据自动生成算法的仿真研究 总被引:1,自引:0,他引:1
研究软件质量优化问题,传统遗传算法存在局部最优、收敛速度慢,使软件测试数据自动生成效率低.为提高软件测试数据生成效率,对传统遗传算法进行改进,提出一种遗传-蚁群算法的软件测试数据生成算法.针对测试数据自动生成的特点,充分发挥遗传算法的全局搜索和蚁群算法的局部搜索优势,提高了测试数据的生成能力.实验结果表明,遗传-蚁群算法提高了软件测试数据生成效率,是一种较为理想的软件测试数据生成算法. 相似文献
7.
8.
9.
测试数据自动生成是软件测试的基础,也是测试自动化技术实现的关键环节。为了提高测试自动化的效率,在 结合 测试数据自动生成模型的基础上,提出一种 传统遗传算法的改进算法。该算法使用了自适应交叉算子和变异算子,并引入模拟退火机制对其进行改进。同时,该算法还对适应度函数进行了合理的设计,以加速数据的优化过程。通过三角形程序、折半查找和冒泡排序程序,与基本遗传算法、自适应遗传算法进行了比较与分析,并且对改进算法做了性能分析。实验结果表明了该算法的实用性以及在测试数据生成中的可行性和高效性。 相似文献
10.
11.
《Information and Software Technology》2006,48(7):586-605
The complexity of software systems has been increasing dramatically in the past decade, and software testing as a labor-intensive component is becoming more and more expensive. Testing costs often account for up to 50% of the total expense of software development; hence any techniques leading to the automatic generation of test data will have great potential to considerably reduce costs. Existing approaches of automatic test data generation have achieved some success by using evolutionary computation algorithms, but they are unable to deal with Boolean variables or enumerated types and they need to be improved in many other aspects. This paper presents a new approach utilizing program dependence analysis techniques and genetic algorithms (GAs) to generate test data. A set of experiments using the new approach is reported to show its effectiveness and efficiency based upon established criterion. 相似文献
12.
软件测试数据自动生成是软件测试中的重要难题之一。测试数据自动生成问题可归结为测试数据的搜索或组合优化问题,通常具有不连续、不可微和非线性等特征,适合于采用遗传算法、神经网络等人工智能技术进行解决。国内外学者在此方面作了不少研究并取得一定的成果,但也存在一些问题。该文系统地综述了近年来软件测试数据智能化生成的研究和存在的问题,并对未来的发展进行了展望。 相似文献
13.
利用遗传算法生成复杂软件的测试数据,是软件测试领域一个全新的研究方向.传统的基于遗传算法的测试数据生成技术,需要以每个测试数据作为输入运行被测程序,以获得个体的适应值,因此,需要消耗大量的运行时间.为了降低运行程序带来的时间消耗,提出一种基于神经网络的路径覆盖测试数据进化生成方法,主要思想是:首先,利用一定样本训练神经网络,以模拟个体的适应值;在利用遗传算法生成测试数据时,先利用训练好的神经网络粗略计算个体适应值;对适应值较好的优秀个体,再通过运行程序,获得精确的适应值.最后的实验结果表明,该方法可以有效降低运行程序产生的时间消耗,从而提高测试数据生成的效率. 相似文献
14.
Test data generation for path coverage of message-passing parallel programs based on co-evolutionary genetic algorithms 总被引:1,自引:0,他引:1
Employing genetic algorithms to generate test data for path coverage has been an important method in software testing. Previous work, however, is suitable mainly for serial programs. Automatic test data generation for path coverage of message-passing parallel programs without non-determinacy is investigated in this study by using co-evolutionary genetic algorithms. This problem is first formulated as a single-objective optimization problem, and then a novel co-evolutionary genetic algorithm is proposed to tackle the formulated optimization problem. This method employs the alternate co-evolution of two kinds of populations to generate test data that meet path coverage. The proposed method is applied to seven parallel programs, and compared with the other three methods. The experimental results show that the proposed method has the best success rate and the least number of evaluated individuals and time consumption. 相似文献
15.
基于退火免疫遗传算法的测试用例生成研究 总被引:2,自引:0,他引:2
在软件测试技术中,高效的测试用例生成是简化测试工作、提高测试效率的必要手段.提出了一种应用于软件测试中的基于退火免疫遗传算法(AIGA)的测试用例自动生成算法,介绍了AIGA测试用例生成模型和AIGA算法的基本思想.算法融合了模拟退火算法和免疫算法在避免陷入局部最优和保持种群多样性方面的优势,克服遗传算法局部搜索能力差及其早熟现象和模拟退火算法全局搜索能力差、效率不高的问题.实验结果表明,算法在测试用例自动生成的效率和效果方面.优于传统遗传算法. 相似文献
16.
组合测试是软件测试数据生成研究的一个重要领域,其中参数配对组合测试的应用最为广泛.对常用的参数配对组合覆盖方法进行了综述分析.目前主流的配对覆盖算法AETG和IPO所存在的主要问题是在确定水平取值时,具有盲目性和随机性,从而难以控制测试用例的规模.为此提出了改进的AETG算法和IPO算法,改进算法通过对参数进行预处理以及综合考虑各因素的水平组合等手段,对测试用例的规模进行控制,采用更加完备的方法尽早确定水平取值.为验证新算法的有效性,进行了仿真实验和实际测试,结果表明,改进算法所生成的测试用例数量要少于原算法,测试用例约减效果更为明显;测试用例数与配对数之间、测试用例数与因素水平数之间存在着某些规律性的联系,分析得出了一系列相关的结论.在配对覆盖的基础上,提出了遗传算法与AETG算法相结合的n-way组合覆盖算法,证明了其时间复杂性较已有算法得到了改善. 相似文献
17.
Developers have learned over time that software testing costs a considerable amount of a software project budget. Hence, software quality managers have been looking for solutions to reduce testing costs and time. Considering path coverage as the test adequacy criterion, we propose using genetic algorithms (GA) for automating the generation of test data for white-box testing. There are evidences that GA has been already successful in generating test data. However, existing GA-based test data generators suffer from some problems. This paper presents our approach to overcome one of these problems; that is the inefficiency in covering multiple target paths. We have designed a GA-based test data generator that is, in one run, able to synthesize multiple test data to cover multiple target paths. Moreover, we have implemented a set of variations of the generator. Experimental results show that our test data generator is more efficient and more effective than others. 相似文献