首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到20条相似文献,搜索用时 187 毫秒
1.
自动化测试中,测试数据的自动生成技术是提供软件测试效率和效果的瓶颈.粒子群算法(PSO)具有简单、易实现、可调参数少等特点,在测试数据生成方法中得到初步应用.在具体应用过程中,为克服PSO易陷入局部极值的缺陷,对算法进行了改进,应用加入移动步长的混合粒子群算法(SwPSO)自动生成测斌数据,提高了PSO算法摆脱局部极小点的能力.文中对算法的原理和实现做了详细描述,并将其与传统的基于标准粒子群算法(PSO)和遗传算法(GA)来实现软件测试数据自动生成方法进行实验对比.结果表明,改进后的粒子群算法可以更高效地生成测试数据.  相似文献   

2.
运用元启发式搜索进行结构性测试数据生成已经被证实是一种有效的方法.在讨论基于搜索的测试数据生成基本框架的基础上,以分支覆盖作为测试覆盖准则,给出了基于粒子群优化(particle swarm optimization,PSO)的测试数据生成算法,并通过分析分支谓词的结构特征提出了一种新的适应函数构造形式.在此基础上,针对一些公开的程序集开展对比性实验分析,证实粒子群优化算法在平均覆盖率、全覆盖成功率、平均收敛代数和搜索时间4项指标上均要优于遗传算法和模拟退火算法.同时,编程实现了4种典型的PSO变体算法并进行测试数据生成效果的实证分析,结果表明:基本PSO是解决测试数据生成问题的首选算法,而综合学习式PSO算法的表现则相对较差.  相似文献   

3.
粒子群算法作为一种智能优化算法,因算法收敛速度快和简单易实现的优点,在测试数据生成中应用广泛.为了提升测试数据生成的效率,本文引入蜕变关系以覆盖待测程序的多条路径,提出融入蜕变关系的杂交粒子群算法并应用于软件测试数据生成中.首先,提出粒子群算法的自适应惯性权重调节方案,提高算法的收敛速度;其次,为避免粒子群算法陷入局部极值,呈现早熟性,本文提出杂交粒子群算法,将在遗传算法中交配的主要操作引入粒子群算法中;然后,对于已生成的测试数据,利用待测程序的蜕变关系衍生出新的测试数据以覆盖待测程序的其他路径.最后,通过实验结果验证,本文提出的方法在收敛速度和生成多路径的测试数据上有明显优势.  相似文献   

4.
针对粒子群优化算法中群体易出现过早收敛的不足,提出了粒子群优化算法的改进算法AMPSO(adap-tive mutation particle swarm optimization)算法并应用于测试数据生成中.引入约简粒子群优化算法,提高算法搜索速度;在算法进化过程中增加自适应调整策略,定义适应度评价阈值判断群体早熟现象,构建一个改进的自适应变异算子提高粒子变异率;通过实验确定阈值比例系数.结合实验结果从收敛代数和收敛时间两方面对比分析,证明了所提方法不仅能够防止算法出现过早收敛的问题,而且提高了测试数据生成效率.  相似文献   

5.
潘烁  王曙燕  孙家泽 《计算机应用》2012,32(4):1165-1167
在解决组合测试中的测试数据集生成问题时,粒子群优化算法(PSO)在待测数据量增加达到一定程度以后,出现迭代次数增加、收敛速度减慢的缺点。针对该问题,提出了一种应用于组合测试数据集生成问题的基于K-均值聚类的粒子群优化算法。通过对测试数据集合进行聚类分区域,增强测试数据集的多态性,从而对粒子群优化算法进行改进,增加各个区域内粒子之间的影响力。典型案例实验表明该方法在保证覆盖度的情况下具有一定的优势和特点。  相似文献   

6.
丁蕊  董红斌  冯宪彬  赵佳华 《计算机应用》2016,36(10):2816-2821
针对面向路径覆盖的测试数据生成问题,提出基于烟花爆炸优化算法的测试数据生成方法。首先使用关键点路径表示法表示路径,由理论路径、易覆盖路径和不可行路径得出难覆盖路径,并记录难覆盖路径邻近的易覆盖路径及其测试数据。这些测试数据将作为部分初始烟花以利用其提供的启发信息,其余初始烟花则随机生成。接着根据个体的适应度值设计自适应策略的爆炸半径以提高收敛速度,对爆炸产生的越界火花则使用边界值测试的思想进行修正。与加了启发信息的自适应爆炸半径的烟花算法(NFEO算法)、烟花爆炸优化(FEO)算法、F-method、NF-method等七种基于优化的测试数据生成算法进行了仿真对比实验,实验结果表明:所提算法在测试数据生成时间和迭代次数上都最优。  相似文献   

7.
李刚  于磊  孙回回  张兴隆  侯韶凡 《计算机科学》2016,43(11):252-256, 279
基于搜索的算法在以路径覆盖为目标的测试数据生成中应用广泛。然而对于字符串型测试数据的生成,现有方法效率不高。为了高效地生成字符串型测试数据,提出了一种基于变异粒子群算法的字符串型测试数据自动生成方法。在随机生成初始种群后,采用粒子群算法使种群在趋近最优个体的过程中实现进化,并以一定的概率对种群中的个体进行变异操作,以避免进化过程陷入局部最优。为了有效地指导种群进化过程,对经典适应度函数中分支距离的计算方法进行改进,使其适用于含有字符串型参数的程序。实验结果表明,该方法具有较高的成功率和稳定性,且能明显提升测试数据生成效率。  相似文献   

8.
针对目前进化算法生成结构测试数据方法存在搜索速度慢、设置参数复杂、易陷入局部最优解等缺陷,提出了一种基于量子粒子群算法的结构测试数据生成方法。该方法采用分支函数叠加法构造适应值函数,将测试数据自动生成问题转化为函数的最优化问题,同时在粒子群算法基础上引入量子理论的思想,提高了算法的收敛性能和全局搜索能力。将其与标准粒子群算法实现结构测试数据自动生成方法进行比较,实验结果表明,该方法能更快生成测试数据。  相似文献   

9.
针对在回归测试中原有测试数据集往往难以满足新版本软件测试需求的问题,提出一种基于自适应粒子群算法(APSO)的测试数据扩增方法。首先,根据原有测试数据在新版本程序上的穿越路径与目标路径的相似度,在原有的测试数据集中选择合适的测试数据,作为初始种群的进化个体;然后,利用初始测试数据的穿越路径与目标路径的不同子路径,确定造成两者路径偏离的输入分量;最后,根据路径相似度构建适应度函数,利用APSO操作输入分量,生成新的测试数据。该方法针对四个基准程序与基于遗传算法(GA)和随机法的测试数据扩增方法相比,测试数据扩增效率分别平均提高了约56%和81%。实验结果表明,所提方法在回归测试方面有效地提高了测试数据扩增的效率,增强了其稳定性。  相似文献   

10.
针对检测缺陷的测试数据生成效率低下问题,提出变异测试和路径覆盖测试技术结合的测试数据生成方法。首先,采用变异测试技术生成的变异分支融入程序,生成新的被测程序;然后,在原路径集中挑选目标路径,通过分析变异分支与路径关联关系,将变异分支融入路径。最后,基于遗传算法生成覆盖路径的测试数据。实验结果表明,多种群遗传算法生成测试数据的时间,比单种群遗传算法节约了41.15%。由此可见,对于覆盖多路径测试数据生成,多种群遗传算法的效率比单种群遗传算法高。  相似文献   

11.
数据流覆盖可有效地检测软件中的缺陷与错误.针对该覆盖准则中存在的插装监测开销庞大和测试数据生成效率不高的问题,提出一种新的基于定值-引用对覆盖的测试数据进化生成方法.该方法主要分为两部分,首先,通过约减测试目标来减少插装开销,提出的包含关系算法可找到一个定值—引用对子集,使得覆盖该子集就能保证所有测试目标被覆盖;然后,采用遗传算法为所有测试目标生成测试数据,设计的适应度函数综合考虑个体实际执行的路径与每个测试目标的定义明确路径的匹配程度.将该方法用于8个基准程序的测试数据生成,并与其他方法比较,结果显示其可有效提高程序覆盖率和测试数据生成效率.  相似文献   

12.
The aim of software testing is to find faults in a program under test, so generating test data that can expose the faults of a program is very important. To date, current studies on generating test data for path coverage do not perform well in detecting low probability faults on the covered path. The automatic generation of test data for both path coverage and fault detection using genetic algorithms is the focus of this study. To this end, the problem is first formulated as a bi-objective optimization problem with one constraint whose objectives are the number of faults detected in the traversed path and the risk level of these faults, and whose constraint is that the traversed path must be the target path. An evolutionary algorithmis employed to solve the formulatedmodel, and several types of fault detectionmethods are given. Finally, the proposed method is applied to several real-world programs, and compared with a random method and evolutionary optimization method in the following three aspects: the number of generations and the time consumption needed to generate desired test data, and the success rate of detecting faults. The experimental results confirm that the proposed method can effectively generate test data that not only traverse the target path but also detect faults lying in it.  相似文献   

13.
Path testing is the strongest coverage criterion in white box testing. Finding target paths is a key challenge in path testing. Genetic algorithms have been successfully used in many software testing activities such as generating test data, selecting test cases and test cases prioritization. In this paper, we introduce a new genetic algorithm for generating test paths. In this algorithm the length of the chromosome varies from iteration to another according to the change in the length of the path. Based on the proposed algorithm, we present a new technique for automatically generating a set of basis test paths which can be used as testing paths in any path testing method. The proposed technique uses a method to verify the independency of the generated paths to be included in the basis set of paths. In addition, this technique employs a method for checking the feasibility of the generated paths. We introduce new definitions for the key concepts of genetic algorithm such as chromosome representation, crossover, mutation, and fitness function to be compatible with path generation. In addition, we present a case study to show the efficiency of our technique. We conducted a set of experiments to evaluate the effectiveness of the proposed path generation technique. The results showed that the proposed technique causes substantial reduction in path generation effort, and that the proposed GA algorithm is effective in test path generation.  相似文献   

14.
徐炜珊  于磊  冯俊池  侯韶凡 《计算机应用》2016,36(12):3454-3460
针对基于Markov链模型的软件测试技术在测试数据生成时不考虑软件的结构信息,生成的测试数据集对代码路径的覆盖能力以及缺陷检测能力都较低的问题,将统计测试与基于Markov链模型的测试相结合,提出了一种新的软件测试模型——软件层次化模型。该模型涵盖了软件与外部环境之间的交互,同时描述了软件内部结构信息。还给出了该模型测试数据集的生成算法:首先生成符合使用情况的测试序列,然后为测试序列生成覆盖软件内部结构的输入数据。通过针对示例软件的实验结果表明,与基于Markov链模型的测试方法对比,基于软件层次化模型的测试在满足软件测试充分性要求的同时,提高了测试数据集的代码路径覆盖能力和缺陷检测能力。  相似文献   

15.
基于自适应遗传算法的路径测试数据生成   总被引:6,自引:4,他引:2       下载免费PDF全文
针对简单遗传算法容易产生早熟收敛的问题,提出一种自适应遗传算法,用以自动生成测试数据。通过把程序插装法与该遗传算法相结合,实现了路径测试数据的自动生成。将三角形分类程序作为实例对其进行性能测试,实验结果表明,基于自适应遗传算法的测试数据自动生成系统能自动改变选择概率和交叉概率,提高了自动生成测试数据的效率。  相似文献   

16.
羌晓清  景博  邓森  焦晓璇  苏月 《计算机应用》2015,35(4):1071-1074
针对实际复杂系统测试与诊断时存在虚警和漏检的情况问题,提出在不可靠测试条件下,基于模拟退火粒子群(SA-PSO)算法的测试点优化方法。首先综合考虑不可靠测试条件下测试点的故障检测能力、故障隔离能力及结果信任度设计了评价测试点性能的启发函数;然后,将该启发函数与测试费用最小原则相结合,并根据测试性指标的要求,构建确保测试点最优的适应度函数;最后,设计基于模拟退火粒子群算法的不可靠测试点优化步骤,并用阿波罗发射系统实例验证了该算法的优越性。结果表明SA-PSO算法能够在满足测试性指标的要求下获得最小测试费用的测试点集,其故障检测率、隔离率都优于贪婪算法及遗传算法。  相似文献   

17.
为了全面测试演化软件,回归测试通常需要生成新的测试用例。concolic测试是一种沿着具体执行路径进行符号执行的软件验证技术,通过生成测试数据来执行程序的所有可行路径。回归测试中,由于concolic测试关注于程序本身,没有利用已有测试用例和软件演化信息,导致生成大量无效测试数据,浪费资源和时间。为解决此问题,提出一种基于路径引导的回归测试用例集扩增方法。该方法将目标路径作为引导,根据软件演化信息选择有利于覆盖目标路径的测试用例,利用已有测试用例跳过重叠初始子路径,对后续目标子路径进行concolic测试并生成覆盖目标路径的测试数据。案例分析表明,本文方法相比传统concolic测试,本方法在覆盖程序可行路径的同时,可有效减少concolic测试路径,提高测试数据生成效率。  相似文献   

18.
包晓安  熊子健  张唯  吴彪  张娜 《计算机科学》2018,45(8):174-178, 190
采用遗传算法求解路径覆盖的测试用例生成问题是软件测试自动化的研究热点。针对传统标准遗传方法搜索测试用例易产生早熟收敛和收敛速度较慢的不足,设计了自适应的交叉算子和变异算子,提高了算法的全局寻优能力。基于动态生成算法框架,通过程序静态分析,考虑了分支嵌套深度的影响,结合层接近度和分支距离法,提出一种新的适应度函数。实验结果表明,该算法在面向路径的测试用例生成上优于传统方法,提高了测试效率。  相似文献   

19.
基于接口参数的黑箱测试用例自动生成算法   总被引:31,自引:5,他引:31  
测试用例的选择与生成技术是软件测试尤其是黑箱测试的一个重要研究领域,测试用例的质量将直接决定软件测试的科学性和有效性.该文在一般的测试用例选择方法的基础上,提出了一种基于对接口参数进行组合覆盖的黑箱测试用例自动生成算法模型,据此可以生成一个对所有接口参数进行两两组合覆盖的测试用例表.并证明了该方法产生的测试用例具有数量少、能实现对接口参数最大限度组合覆盖的特点,从而可以在提高软件测试质量的同时,降低成本,提高效率.最后介绍了该算法在作者研究开发的测试数据生成工具中的实际效果.  相似文献   

20.
曾一  丁娜  邹明 《计算机工程》2012,38(10):34-37
研究UML活动图多态性测试用例的生成方法。形式化定义活动图,结合由类图、OCL约束和Liskov替换原则确定的多态性方法类集,扩展活动图中含多态信息的节点,得到多态扩展活动图。利用测试路径构造方法和覆盖准则,对多态扩展活动图进行遍历,生成测试用例。实验结果表明,该方法能生成含多态性信息的测试用例,提高测试覆盖度。  相似文献   

设为首页 | 免责声明 | 关于勤云 | 加入收藏

Copyright©北京勤云科技发展有限公司  京ICP备09084417号