基于遗传算法和程序依赖性分析的测试数据生成方法.docVIP

基于遗传算法和程序依赖性分析的测试数据生成方法.doc

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
 基于遗传算法和程序依赖性分析的测试数 据生成方法 靳蓉,姜淑娟,张红昌** 5 10 15 20 25 30 35 40 (中国矿业大学计算机科学与技术学院,江苏徐州 221116) 摘要:基于分支覆盖的软件测试方法可有效的发现软件中的缺陷。为了确保分支覆盖能更加 简约和精确有效,本文提出一种新的基于分支覆盖的测试数据生成方法。该方法主要分为两 部分,首先,运用控制依赖分析对需覆盖的分支集进行约减,使得覆盖约减后的分支子集就 可保证程序中所有的分支被覆盖;然后,对未覆盖分支进行依赖性分析,获得能到达该分支 的路径约束;最后将多路径约束转化为合适的适应值函数,并采用遗传算法生成测试用例。 经过分析可知本文方法可有效减少测试需求数目及改进适应值函数。 关键词:软件测试;遗传算法;程序依赖性分析;测试数据生成;分支覆盖 中图分类号:TP311 A test data generation approach using genetic algorithm and program dependence analysis JIN Rong, JIANG Shujuan, Zhang Hongchang (School of Computer Science and Technology, China University of Mining and Technology, Xuzhou, Jiangsu 221116) Abstract: The software testing based on branch coverage is effective to detect defects in the program. For making the branch coverage more simple and precise, a novel approach to generating test data for branch coverage is presented. This approach consists two parts, first, utilizing control dependence analysis to reduce the number of testing requirements, and the coverage of the remaining branches can guarantee the coverage of all test requirements is achieved; second, the path constraints of the target branch is obtained by using program dependence analysis on it; and then transforming the path constraints to appropriate fitness function for the target branch, and the genetic algorithm is used to generate multiple test data. By analyzing the proposed approach, it could be known that it can greatly reduce the number of testing requirements and improve the fitness function. Key words: software testing; genetic algorithml; program dependence analysis; test data generation; branch coverage 0 引言 软件测试旨在找出软件中的缺陷,为软件质量提供有力的保障。测试数据生成是软件测 试的主要问题之一,它需要生成数据来使得指定的元素被执行,如面向控制流覆盖准则的分 支覆盖、路径覆盖、语句覆盖等。 分支覆盖是指在测试过程中将程序中的所有可行分支至少覆盖一次。分支覆盖的优势在 于它不仅可以通过改变测试数据来覆盖指定分支,还能通过选择可到达指定分支的不同路径 来进行覆盖,因此基于分支覆盖的软件测试方法效率较高。 传统的分支覆盖方法,存在大量的冗余分支,给设计测试用例和程序插装带来了大量的 工作,尤其是程序插装,需要在程序中每个分支处插入探针,当程序较大时,对程序运行时 作者简介:靳蓉(1987-),女,硕士研究生,主要研究方向:软件测试,程序分析 通信联系人:姜淑娟(1966-),女,博士,教授,博士生导师,研究方向:程序设计语言、编译技术、

文档评论(0)

baihuamei + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档