首页 | 官方网站   微博 | 高级检索  
相似文献
 共查询到16条相似文献,搜索用时 203 毫秒
1.
路径覆盖是考察软件测试充分性的一种重要准则,它使程序的每个分支至少执行一次。该文通过对DDGRAPH图的定义及相关概念的分析,对构建DDGRAPH图及支配树、蕴含树、非限制弧的方法进行了改进。通过具体的应用实例对比了改进前后的方法,改进后的方法可以减少生成的路径数,用更少的测试用例发现更多的错误。  相似文献   

2.
路径覆盖构造方法   总被引:1,自引:0,他引:1  
确定覆盖路径的测试数据范围是评估路径测试的重要课题之一。提出利用非限制弧集确定覆盖ddgraph图所有路径的子集,然后利用βtracks简化非限制弧,并给出了具体的应用实例。  相似文献   

3.
软件测试分为静态分析、路径选择、测试数据生成和动态分析四个阶段,而路径选择的自动生成是软件测试的关键技术之一.路径覆盖是软件测试中一种十分重要的方法,它使程序的每个分支至少执行一次.文中通过对DDGRAPH图的分析,提出了DDGRAPH图中弧的支配树和蕴含树的表示方法,然后给出由支配树和蕴含树确定非限制弧的方法,通过近似最少谓词覆盖策略以确定覆盖所有非限制弧的路径测试子集.  相似文献   

4.
基于DDGRAPH图的路径覆盖研究   总被引:3,自引:0,他引:3  
软件测试分为静态分析、路径选择、测试数据生成和动态分析四个阶段,而路径选择的自动生成是软件测试的关键技术之一。路径覆盖是软件测试中一种十分重要的方法,它使程序的每个分支至少执行一次。文中通过对DDGRAPH图的分析,提出了DDGRAPH图中弧的支配树和蕴含树的表示方法,然后给出由支配树和蕴含树确定非限制弧的方法,通过近似最少谓词覆盖策略以确定覆盖所有非限制弧的路径测试子集。  相似文献   

5.
传统基路径覆盖测试用例生成方法通过程序图求出圈复杂度,然后再得出程序的一组基路径,最后分别针对基路径组中的每条路径求出相应的测试用例,不仅繁琐,而且忽视了代码的语义相关性,导致存在路径不可达问题,也就无法生成对应的测试用例.提出了一种新的方法,利用遗传算法动态运行程序,逐渐逼近被测程序的真实逻辑圈复杂度,直接生成满足基路径覆盖测试用例的最小集合,不存在路径不可达问题.实验结果表明,该算法能够有效地生成满足基路径覆盖的测试用例.  相似文献   

6.
分支测试中测试路径用例的简化生成方法   总被引:8,自引:0,他引:8  
结构性测试是对过程式和面向对象程序都非常有效的测试方法,分支覆盖准则被实践证明是其中性价比最高的一种策略.通过深入研究DD图的性质并分析FTPS算法的不足,提出了一种简便、快捷和适合于大规模程序的非约束边集近似求解算法Find_SemiUE;还给出了基于正(逆)向广度(深度)生成树的分支测试路径用例集的简化生成算法Generate_PathSet,该算法在时间和空间开销上较FTPS算法均有较大提高.此外,所证明的关于DD图的结论也值得借鉴用于该图的更深一步研究.  相似文献   

7.
在软件测试中,各种基本路径自动生成算法已经在单元测试中得到充分运用,使得单元测试的效率得到了极大提高。但是这些基本路径自动生成算法生成的基本路径并不能直观反应它们对程序的覆盖情况。该文提出一种算法,它采用最短路径复用及分支结点逐个覆盖法,使得生成的基本路径最短,重要的是每条基本路径能显示它是为了覆盖哪个分支结点而存在。它能够减少测试者根据基本路经集设计测试用例的时间,从而提高单元及其回归测试效率。实践表明,此算法具有很好的应用效果,特别适用于自动化生成的测试用例不能满足覆盖率要求需要人工生成测试用例的复杂单元。  相似文献   

8.
在软件测试中,各种基本路径自动生成算法已经在单元测试中得到充分运用,使得单元测试的效率得到了极大提高。但是这些基本路径自动生成算法生成的基本路径并不能直观反应它们对程序的覆盖情况。该文提出一种算法,它采用最短路径复用及分支结点逐个覆盖法,使得生成的基本路径最短,重要的是每条基本路径能显示它是为了覆盖哪个分支结点而存在。它能够减少测试者根据基本路经集设计测试用例的时间,从而提高单元及其回归测试效率。实践表明,此算法具有很好的应用效果,特别适用于自动化生成的测试用例不能满足覆盖率要求需要人工生成测试用例的复杂单元。  相似文献   

9.
面向路径覆盖的演化测试用例生成技术   总被引:6,自引:2,他引:4  
谢晓园  徐宝文  史亮  聂长海 《软件学报》2009,20(12):3117-3136
为了解决目前结构性演化测试主要集中于面向语句、分支等覆盖标准,缺乏面向路径覆盖标准的问题,提出了基于相似性度量的适应值函数构造方法,以用于生成覆盖指定路径的测试用例.首先给出适应值函数构造基本模型,即利用测试数据的真实执行轨迹来评估它相对于指定路径的适应值.该模型的核心在于度量执行轨迹与指定路径之间的相似度,为此给出了3种不同的相似度度量算法.该模型可以完全自动化地为每一条目标路径构造出特定的适应值函数.实验结果表明,相对于其他路径测试方法,该方法在针对复杂路径的情况下具有一定的优势.此外,实验结果还指出了该方法的适用性范围和局限所在.  相似文献   

10.
路径测试中基本路径集的自动生成   总被引:1,自引:0,他引:1       下载免费PDF全文
路径测试是一种重要的白盒测试技术,具有较高的故障覆盖率。基本路径集覆盖了程序中所有语句和分支,该文测试了基本路径集中的路径,在测试资源有限的情况下得到较好的测试效果,并提出了基于图的深度优先搜索的基本路径集的生成方法,该算法采用的生成子路径的方法可以有效地减少路径生成过程中的搜索过程,提高路径生成的效率。 关键词:  相似文献   

11.
测试用例自动生成是软件测试自动化中最为关键的组成部分之一,符号执行作为一种程序分析方法,以其可提供高覆盖率测试用例的优势被广泛应用其中,但路径爆炸和约束求解问题很大程度制约了符号执行技术在现实程序分析中的应用。将研究粒度由语句提升至函数,利用抽象语法树和字节码序列提取到的函数关键信息和控制信息得到函数调用关系模型,设计算法生成函数调用路径(函数调用路径表示程序从开始到结束之间函数的调用或执行序列)。该方法不仅减少了测试路径数目缓解了路径爆炸问题,还有效解决了控制条件中存在函数导致符号表达式难求解的问题。实验结果表明该方法可优化测试路径集,在不降低覆盖率的前提下减少测试用例数量。  相似文献   

12.
基于边覆盖的路径覆盖估测法可获取用于回归测试用例选择的数据信息,但存在估测精确率不高、对重叠路径的识别能力差以及循环结构对可执行路径数目的影响等缺陷.针对这些缺陷,提出一种新的路径覆盖生成方法来获取程序执行的路径信息,该方法包括CFG图到DAG图的转换和还原、利用DFS深度优先策略构造DAG图的chord生成树等,然后设计了基于该方法的测试数据集生成方法.最后,对该方法进行实验验证和数据分析,证明了该方法的有效性.  相似文献   

13.
通过构造新的程序流图,利用Fibonacci法优化选取路径.为指定的分支生成测试数据。提出了路径测试数据生成代价的概念,并给出了代价的计算方法。当所选路径的分支谓词均为线性表达式时,直接求解线性约束集即可生成测试数据,或判定路径不可行;当分支谓词含有非线性表达式时,利用均差近似导数将非线性函数线性化,通过简单的迭代,亦能容易生成测试数据或判定路径在很大程度上不可行。若所选路径不可行或在很大程度上不可行,则选取新的路径,重复以上过程,直至求出所期望的数据,或无新的路径被选取,给定分支不可达。实例和实验表明,算法可行、有效。  相似文献   

14.
提出一种基于基因表达式编程(GEP)算法、编译器技术、虚拟机技术的路径覆盖测试用例生成方法。该方法使用编译器技术获得程序的静态控制流路径集合,针对集合中的每一条静态控制流路径,使用GEP算法生成覆盖特定路径的测试用例,采用虚拟机完成结果计算,其中有效的结果即所需的测试用例。实验结果证明,该方法能高效、准确地得到覆盖特定控制流路径的测试用例。  相似文献   

15.
针对遗传算法(genetic algorithm,GA)存在搜索初期收敛速度过快、易陷入局部最优解、未能充分结合搜索过程中的反馈信息,同时人工蜂群(artificial bee colony,ABC)算法存在初期寻优速度缓慢、局部搜索具有很大随机性等问题,对遗传算法和人工蜂群算法分别进行了改进,并将改进后的两种算法进行融合,实现两者的优势互补,提出了一种自适应遗传-蜂群(improved adaptive genetic-artificial bee colony, IAG-ABC)算法。采用路径覆盖信息设计引导算法搜索方向的适应度函数,并用IAG-ABC算法实现路径覆盖的测试用例生成,实验结果表明,相对于标准遗传算法和自适应遗传算法,IAG-ABC算法在测试用例生成效率和覆盖率上均有一定的优势。  相似文献   

16.
分析了目前基于目标函数聚类算法的不足,面对形状复杂且非重叠的样本聚类问题,定义了最邻近距离和生长树的概念。随机选取生长树初始种子点,以最邻近距离作为生长树生长的方向和样本划分依据,以最终生长树大小为聚类目标函数,引入遗传算法,提出基于生长树的遗传聚类算法,并通过实例进行了算法测试和比较。算法测试表明:基于生长树的遗传聚类算法对于形状复杂且非重叠样本的聚类是完全可行和有效的。  相似文献   

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

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

京公网安备 11010802026262号