首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到19条相似文献,搜索用时 140 毫秒
1.
路径表达式的构造方法及路径测试   总被引:3,自引:1,他引:2  
软件测试是软件设计中一个重要阶段,也是保证软件可靠性的重要手段。路径测试是软件测试中一种重要方法,而测试的关键是确定路径数目和设计测试用例。程序路径表达式是路径测试中路径的一种表示方法。本文讨论了利用程序图进行路径测试中的路径表达式的构造方法。  相似文献   

2.
路径测试法是软件测试的一种基本方法。将C程序按照控制结构进行分类,结合路径测试特点进行插装,在设置探针的同时提取函数静态信息,算法采用先获取局部路径,再进一步获取全局路径的方法。实验结果表明,基于插装的路径获取技术,具有较高的准确率和效率,尤其适用于基于函数的路径提取。  相似文献   

3.
基于程序图的路径测试   总被引:8,自引:0,他引:8  
软件测试是软件设计中一个重要阶段,也是保证软件可靠性的重要手段。路径测试是软件测试中一种重要方法,而测试的关键是确定路径数目和设计测试用例。本文讨论了利用程序图进行路径测试的方法。  相似文献   

4.
软件测试中,不可达路径的存在会导致测试资源浪费,有效地检测程序中的不可达路径有助于节约测试资源、提高测试效率.分支相关性的存在是不可达路径产生的主要起因.因此,确定分支的相关性在不可达路径的检测中占据十分重要的地位.提出了一种利用关联分析和数据流分析确定分支相关性的方法,进而实现不可达路径的自动检测.首先,结合静态分析和动态分析,构建反映程序中各分支判断语句静态依赖关系和动态执行信息的数据集;然后,利用关联分析和数据流分析技术确定分支的相关性;最后,根据分支相关性信息检测不可达路径.基于一组基准程序和开源程序,开展不可达路径检测实验.实验结果表明,该方法能够准确地检测出程序中的不可达路径,可以有效地提高软件测试的效率.  相似文献   

5.
路径覆盖测试是基于白盒的软件测试中覆盖率最高的测试方法;为了实现复杂程序的全路径覆盖测试,提出了一种基于谓词的全路径覆盖软件测试方法;首先研究了谓词覆盖的基本理论,然后对移除谓词后的孤立链进行测试,根据集成测试的观点,将谓词和对应孤立链集成以实现全路径覆盖,同时在算法中加入基本路径覆盖以实现对程序主要路径的重点测试;应用结果表明,该方法实用、高效,具有一定的推广价值。  相似文献   

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

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

8.
《软件》2019,(4):133-139
近些年随着软件行业的迅速兴起,软件产品已经渗透到日常生活中的各个角落。作为软件生命周期中重要阶段的软件测试,对软件行业的发展有着十分重要的意义。对于软件测试来讲,测试质量是核心,测试效率是保证,一个好的测试过程就是要在保证软件质量的基础上尽可能提高软件测试的效率。本文重点针对软件系统级测试,基于遗传算法对选取个体适应因素进行调整,达到保留必须存在的测试路径,减少重复冗余测试路径的目的,进而实现对测试路径的自动选择。  相似文献   

9.
基本路径测试方法之圈复杂度计算   总被引:2,自引:0,他引:2  
软件测试是软件开发过程中不可缺少的重要组成部分,贯穿整个软件开发过程。在软件测试方法中,白盒测试和黑盒测试是经常使用的测试技术。白盒测试中的基本路径测试方法是解决复杂路径测试最有效的方法,而圈复杂度的计算则是基本路径测试方法中非常重要的环节。实践经验表明,圈复杂度和程序可能存在的缺陷数量有着很大的相关性,本文就基本路径测试方法中如何正确计算圈复杂度进行了探讨。  相似文献   

10.
未初始化变量的一种静态测试方法   总被引:1,自引:0,他引:1  
软件测试系统的研制是软件测试领域的一个研究热点.未初始化变量是C/C 程序中的常见故障,该类故障极易导致计算结果错误或系统崩溃.针对C/C6 语言中常见未初始化变量故障进行了分析研究,并从面向具体故障的测试思想出发,建立了C/C 语言中未初始化变量的故障模型,结合静态测试的特点,给出了一种静态查找此类故障的方法.该方法已实现,并已应用于面向故障的软件测试系统中.  相似文献   

11.
吴川  巩敦卫  姚香娟 《软件学报》2016,27(4):839-854
回归测试是迭代式软件开发的重要环节,测试数据生成是回归测试的前提.传统的回归测试方法,从已有的测试数据中选择部分测试数据,并生成一些新的测试数据,以验证程序的正确性.但是,该方法容易生成冗余的测试数据,从而降低了回归测试的效率.研究了回归测试的分支覆盖问题,通过利用已有测试数据的路径覆盖信息,并选择一定个数的路径,以覆盖所有的目标分支.首先,以若干路径形成的集合作为决策变量,以路径最少、覆盖的分支最多以及包含的未覆盖路径最少为目标,建立路径选择问题的3目标优化模型;然后,采用遗传算法求解上述模型时,设计了基于目标重要性的个体评价策略;最后,基于已有的测试数据与选择的路径之间的覆盖关系,确定需要生成的测试数据.将所提方法应用于6个基准工业程序测试中,并与其他方法比较.实验结果表明,采用该方法选择的路径,能够覆盖更多的分支,需要生成的测试数据更少,回归测试消耗的时间更短.  相似文献   

12.
自动化测试脚本自动生成技术的研究   总被引:2,自引:0,他引:2  
软件自动化测试技术的出现,大大减轻了软件测试人员的测试压力,显著提高了测试工作的效率,但是自动化测试脚本的编写和维护工作也是测试自动化所面临的一项挑战。针对自动化测试脚本的编写和维护工作中遇到的困难,提出了一种基于RFT的测试脚本自动产生的方法,从而有效地提高了测试工作的效率,降低编写和维护测试脚本的开销。  相似文献   

13.
软件自动化测试技术的出现,大大减轻了软件测试人员的测试压力,显著提高了测试工作的效率,但是自动化测试脚本的编写和维护工作也是测试自动化所面临的一项挑战。针对自动化测试脚本的编写和维护工作中遇到的困难,提出了一种基于RFT的测试脚本自动产生的方法,从而有效地提高了测试工作的效率,降低编写和维护测试脚本的开销。  相似文献   

14.
在大量软件出现的今天,除开软件的功能是否完善外,对软件本身提出了更高的安全性和稳定性要求;一款软件在上线前需要进行大量的测试,以便提升软件的质量;由于开发人员参与了软件的研发及上线流程,导致了看待软件问题的局限性,而测试人员在编写测试用例时,往往由于依据文档的不一致性,使得测试用例的价值大打折扣;并且在实际软件的开发流程中,测试环节与开发严重脱节;往往只是为了出相应的测试报告而去测试,偏离了测试的初衷;针对以上问题,提出基于模型的用例生成方法,能够基于工作流程图、判定表、状态转换等多种测试方法,并在该方法中应用边界值与等价类的思想,够贯穿整个软件研发的生命周期,在软件研发初期就能够参与测试,提出设计方案的不足;并且能够自动生成测试用例,提高测试人员的效率.  相似文献   

15.
丁蕊  董红斌  张岩  冯宪彬 《软件学报》2016,27(4):814-827
测试数据的自动生成,是提高软件测试效率的重要手段.从软件测试工程实践的角度提出快速生成测试数据的完整模型,更有利于提高测试数据生成效率.为此:(1)提出关键点路径表示法,以得出待测程序的理论路径数,并快速确定已覆盖路径的邻近路径;(2)用随机生成的数据运行简化后的插装程序,得到部分测试数据;(3)将理论路径分成易覆盖路径、难覆盖路径和不可行路径;(4)根据已覆盖路径及其测试数据提供的信息,使用遗传算法生成难覆盖路径的测试数据.仿真实验结果表明了所提方法的有效性.  相似文献   

16.
JUTA: 一个Java自动化单元测试工具   总被引:2,自引:0,他引:2  
描述了一个Java自动化的单元测试工具JUTA.JUTA首先调用工具Soot解析单个Java方法的源码,并将源码解析成一个控制流图.在此基础上,采用符号执行的方法分析控制流图上的路径.工具能够自动地产生满足覆盖率标准的程序的测试用例.这种方法产生的所有测试用例都是可执行的,并且一般来说具有较小的测试用例数.如果用户能够合理地给出描述程序错误的断言,框架JUTA能够自动地检查源码中部分特定类型的错误.实验结果表明工具对Java单元代码的动态测试和静态测试均能在可接受的时间内给出有效的结果.  相似文献   

17.
当前漏洞检测技术可以实现对小规模程序的快速检测,但对大型或路径条件复杂的程序进行检测时其效率低下.为实现复杂路径条件下的漏洞快速检测,文中提出了一种复杂路径条件下的漏洞检测技术SymFuzz.SymFuzz将导向式模糊测试技术与选择符号执行技术相结合,通过导向式模糊测试技术对程序路径进行过滤,利用选择符号执行技术对可能...  相似文献   

18.
基于扩展有限状态机的定义-清除路径的生成方法   总被引:2,自引:0,他引:2       下载免费PDF全文
本文提出了一种面向对象测试中定义-清除路径(DC路径)生成方法,以扩展有限状态机EFSM作为测试模型,结合数据流分析方法,用图论中的结点间最短路径求解思想生成DC路径.这样产生的路径考虑了对象状态迁移,能够发现类中方法与变量之间交互作用时发生的错误,并精简了定义-使用路径(DU路径)组成的测试用例集.  相似文献   

19.
Automated test data generation plays an important part in reducing the cost and increasing the reliability of software testing. However, a challenging problem in path-oriented test data generation is the existence of infeasible program paths, where considerable effort may be wasted in trying to generate input data to traverse the paths. In this paper, we propose a heuristics-based approach to infeasible path detection for dynamic test data generation. Our approach is based on the observation that many infeasible program paths exhibit some common properties. Through realizing these properties in execution traces collected during the test data generation process, infeasible paths can be detected early with high accuracy. Our experiments show that the proposed approach efficiently detects most of the infeasible paths with an average precision of 96.02% and a recall of 100% of all the cases.  相似文献   

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

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