资源描述:
《c程序路径覆盖及测试用例自动生成系统》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、C程序路径覆盖及测试用例自动生成系统一iZ韭HONGGUOKEdIAOBOLAN曰圈●■■■lC程序路径覆盖及测试用例自动生成系统刘义,万琳(装甲兵工程学院信息工程系,北京l00072)【摘要】开发一个实用化的软件测试用例自动生成系统,作为软件质量保证系统的一个重要的组成工具.实验中我们基于C程序模块建立起路径覆盖及测试用例自动生成系统,尽管目前尚不完善,但力求其能向实用化的方向发展.【关健词】路径覆盖;插装;软件测试中图分类号:TP31l文献标识码:A文章编号:181l-8755(2004)01230Clh'o
2、~anPathCoverageAndAutomaticTestcaseGeneratingSystem;LIUYiWANLin(DepamnentofInformationEngineering,ArmoredForceEngineeringInstitute,Beijing100072,China)Abstract:AsanimportanttoolofSoft-Quality-AssuranceSystem,anpracticalsoftware—testingcaseautogenetatedsystems
3、houldbedesigned.Wedesignedpath—coverageandtestcaseauto—generatedsystembasedonCprogrammoduleinOurexperiment.Thoughitisnotperfect,wedoourbesttOmakeitpracticalityKeywords:Pathcoverage;ProgramInstrumentation;Softtesting;1,软件测试工具环境从集成化软件工具环境的认识考虑,软件测试用例生成系统在软件质量保证
4、体系中虽可作为一个独立的子工具存在,但绝不应是一个孤立的系统,它应与其它的测试工具互相配合,共同完成对软件的测试.如静态分析工具,静态分析工具是一般软件测试工具的基础,由静态分析工具可以提供被测程序的静态特性.另外,与某些动态测试工具,数据流分析工具等的配合也是十分重要的.图l表示了工具系统间的配合关系:静态分析器提供待测模块的静态特性,是许多测试工具实现的基础;测试用例生成工具利用程序的静态特性辅助生成测试用例,传送到测试库:动态测试器利用程序的静态特性,接收已生成的测试用例运行待测程序,完成测试:测试结果提供
5、了故障分析的原始数据.当测试执行结束后,相应工具对测试信息进行分析和统计.2,系统主要功能软件测试用例生成系统,是软件质量保证体系的一个重要组成工具,是进行软件测试工作必不可少的辅助系统.我们设计开发的基于C程序的测试用例生成系统,是针对程序的结构测试而言,对C语言编写的程序单元,自动生成满足分支覆盖标准的路径覆盖集,并对于覆盖集中指定的逻辑路径自动生成可覆盖其的测试数据..具体来讲,本系统具备以下主要功能:对于标准c语言编写的程序单元,可生成满足分支覆盖标准的路径覆盖集:对待测模块自动进行路径插装和分支函数插装
6、;自动生成待测模块的驱动程序:自动或人工生成初始测试用例;对于指定的逻辑路径生成测试用例:能够记录被测程序的输入数据,输出结果,执行路径及搜索代数等相关信息.3,系统结构设计面向路径的测试用例生成包含两个部分:确定满足一定覆盖准则(语句覆盖,分支覆盖等)的控制流路径集;针对该集合中每一条路径生成测试用例.对于其中的任一个部分都有若T实现方法,但以往的研究大多分别针对其中之一,两个部分比较独44立,不影u】.基于不可达路径的考虑,我们综合这两个部分为一个整体,通过两个部分的互相影响,口丁有效替换/1可达路径,满足相
7、应的测试覆盖标准.系统整体结构图如图2:路径生成系统为测试用例生成子系统提供满足一定要求的逻辑路径.测试用例生成子系统搜索成功与台的信息指导路生成子系统调整相应的路径生成策略.如果在路径生成阶段产生了不可达路径,必将降低测试的覆盖标准,影响既定的测试效果.为避免这一情况的发生,本系统及时探测测试用例的生成情况,如图所/J,测试用例生成子系统的成败信息反馈到路径生成予系统,使路径生成子系统得以调整下一条路径的弧选取方式.覆盖标准的评定及搜索限制确定系统工作的终.测试用例池收集成功生成的测试用例.插装部分自动完成各谓
8、词分支函数的构造及路径探针,谓探针插装于相应位置.3.1路径覆盖生成予系统设计路径的牛成足向路径的测试用例生成的前提.沦文中的路径生成子系统不同于以往的类似系统,j有以卜特l,tl,:本子系统的路径生成-j测试用例的牛}J艾变义进行,缚生成'条路径后l1『]化送给测试』+J例牛成系统,川时接受其反馈fI(J信息.I/1像以,上系统人多足顺序进行,待路f镘盖JJ艾冉逐条路径