- 1、本文档共9页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
利用遗传算法进行测试用例自动生成.doc
利用遗传算法进行数据流分析下的测试用例自动生成
摘要:软件测试越来越受到重视,但是软件测试是一个复杂、工作量很大的过程。测试用例的自动生成在一定程度上能够减小软件测试的工作量,但是测试用例自动生成技术是一个难点。本文通过借鉴遗传算法,基于数据流分析,在def-use路径覆盖的测试准则上,提出了一个测试用例自动生成的算法。并通过实验比较了遗传算法和随机选择法在测试用例自动生成上的优劣。
关键词:软件测试;数据流测试;遗传算法;GA;测试用例自动生成
中图分类号:TP311
Automatic Test Data Generation for Data Flow Testing Using a Genetic Algorithm
Abstract: Software testing is more and more important, but the software testing is complex and has heavy workload. The automatic generation of test cases can reduce the workload of software testing, but the automatic generation of test cases is a difficult problem. This paper introduces an automatic test case generation algorithm which uses genetic algorithm and is based on data flow analysis and is under the test criterion of the def-use path coverage. And compares the advantages and disadvantages between genetic algorithm and random selection method in the automatic generation of test cases.
Key words: software testing; data flow testing; genetic algorithms; automatic test data generation
1 引言
软件测试描述一种用来促进鉴定软件的正确性、完整性和质量的过程,是一种实际输出与预期输出间的比较过程。软件测试主要包含两方面的内容,测试用例生成和测试充分性准则的应用。测试充分性准则包括基于控制流和基于数据流等,是用来判定测试数据集对于被测试程序是否充分的准则。软件测试是一项费时费力且单调乏味的工作,测试用例的自动生成能有效提高软件测试的效率。但是,测试用例自动生成是软件测试中的一个难点。本文利用遗传算法对测试用例的自动生成进行探讨。
2 测试用例自动生成技术简介
2.1 软件测试相关概念
测试用例是为某个特殊目标编制的一组测试输入、执行条件以及预期结果,以便测试某个程序路径或核实是否满足某个特定需求。测试用例的设计应遵循下列原则[1]。
准确性:测试用例的设计必须有明确的目标,即针对需求设计测试用例。
可复用性:设计的测试用例应能在类似的情况下重复使用。
可追踪性:测试用例必须能够追溯到需求。
完整性:考虑到需求的完整性和逻辑完整性。
测试用例自动生成方法可以分为三类,随机的测试用例生成,结构导向的测试用例生成和基于数据规格说明书的测试用例生成。随机的测试用例生成从输入变量的域中随机产生测试用例。结构导向的测试用例生成基于覆盖程序中特定的结构元素,比如路径覆盖,分支覆盖和def-use覆盖等。基于数据规格说明书的测试用例生成从软件的说明书中选择测试用例。本文所使用的测试用例自动生成技术属于结构导向的测试用例自动生成技术,使用遗传算法(genetic algorithm)迭代生成覆盖全部def-use路径的测试用例。
2.2 软件测试的分类
软件测试按照运行状态,可以分为静态测试和动态测试。其中静态测试是在不执行程序代码而寻找程序代码中可能存在的缺陷或评估程序代码的过程。动态测试则以测试数据为输入,通过执行程序来检验程序的动态行为和运行结果以发现缺陷。图1 为软件测试分类的一个例子。本文的软件测试方法属于动态测试中的白盒测试,是基于数据流测试中的全定义使用覆盖。
图1 软件测试技术的分类
Fig.1 Classification of the software testing technologies
3 数据流分析技术
程序的控制流可以表示出有向图的形式,其中每个节点表示可以顺序执行的语句,其中不包括分支,形成一个基本的语
您可能关注的文档
- 农大印象策划书.doc.doc
- 农业专业英语词汇.doc.doc
- 农村单招自荐信.doc.doc
- 农村小学留守儿童行为习惯的培养.doc.doc
- 农民工收入问题调查报告.doc.doc
- 农民工安全考试试卷.doc.doc
- 农药残留检测竞赛规程.doc.doc
- 冠心病的中医治疗方案大全.doc.doc
- 第十讲曲线运动运动的合成与分解.doc
- 冠脉造影及冠脉介入治疗诊疗规范.doc.doc
- 教科版科学四年级上册期末测试卷含精品答案.docx
- 2025河北邯郸市曲周县招聘警务辅助人员30人考试备考试题及答案解析.docx
- 学前教育课件制作(第2版)课件 第八章 第二节 3《酒精作用大》.pptx
- 教科版科学四年级上册期末测试卷及完整答案(夺冠).docx
- 教科版科学四年级上册期末测试卷及参考答案【能力提升】.docx
- 教科版科学四年级上册期末测试卷及答案一套.docx
- 教科版科学四年级上册期末测试卷及参考答案(典型题).docx
- 教科版科学四年级上册期末测试卷及参考答案【典型题】.docx
- 教科版科学四年级上册期末测试卷及参考答案【达标题】.docx
- 教科版科学四年级上册期末测试卷及参考答案.docx
最近下载
- [中级注册安全工程师考试密押资料]安全生产管理模拟194.docx VIP
- 某光伏项目危险源辨识与风险评价清单.pdf VIP
- [中级注册安全工程师考试密押资料]安全生产管理模拟197.pdf VIP
- 品管圈PDCA优秀案例-提高保护性约束使用的规范率医院品质管理成果汇报.pptx
- [中级注册安全工程师考试密押资料]其他安全(不包括消防安全)技术模拟7.docx VIP
- (优质医学)汇报用提高约束具规范使用率.ppt
- 英文版公司章程ARTICLES OF ASSOCIATION OF.docx VIP
- 2025年海南省中考物理试题卷(含答案解析).docx
- 公司章程英文版 Company Articles of Association.doc VIP
- 室内外照明线路敷设要点.ppt VIP
文档评论(0)