进化测试中的静态分析技术研究

来源 :西北工业大学 | 被引量 : 0次 | 上传用户:hzfeng163
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
进化测试是一种以自动生成高质量测试数据为目的的新兴的测试技术,已被成功应用于工程实践中。进化测试的基本思想就是将在不同覆盖准则下的测试数据生成问题转化成一个全局搜索的问题,利用遗传算法等进化算法的全局鲁棒寻优能力搜索所需的测试数据。然而,在结构化测试中,当程序中存在内部状态问题时,进化测试的搜索过程就会受到阻碍,并导致测试数据搜索的失败。 在面向对象程序中,内部状态问题指的是,一个特定测试目标的覆盖往往必须通过一系列的方法调用才能达到。一方面,数据成员的改变只能通过相应的方法接口;另一方面,封装的存在,对于非公有方法的的测试只能通过其相应的公有方法接口来测试,更进一步加大了问题的复杂性。本文为合理的描述面向对象程序测试内部状态问题,针对进化测试动态搜索的驱动需求提出了一种新的程序静态分析方法——分支依赖分析。作者通过对分支依赖关系的详细讨论划分,给出了分支依赖图的定义,设计分支依赖图的构建算法,并且对方法调用链进行了分析,求解控制调用分支信息添加到分支依赖图中。在课题组的共同努力下实现了分支依赖图的构建算法,并应用到了实际的工程项目中。这种依赖分析方法从粒度上突破了传统的语句级的程序依赖分析方法,是一种分支级的分析方法,所得分支依赖图本身信息量减少,更适合用于软件测试特别是进化测试,并且随着分析粒度的增大其实现算法的复杂度也随之减少。
其他文献
集成了传感器、微机电系统和网络三大技术的传感器网络作为一项新型的信息采集和处理技术,日益受到国内外的高度重视,在环境监测、国防军事、医疗卫生、反恐安全等领域具有广
随着计算机技术和软件技术的发展,具有高度自治性和灵活性的实时嵌入式系统在航天、航空、航海、通信和网络设施等领域的应用越来越广泛。这些嵌入式系统往往具有较高的长时
随着IP网络的进一步发展,新的、要求更高的业务流层出不穷,正是由于它们的出现对现有的网络提出了如更高的传输效率、动态的路由调整、灵活的网络控制能力、信息传输过程的可
医疗影像存储与传输系统的主要功能是存储、传输和管理医疗影像数据,但应用三维重建和交互技术能辅助医生更直观方便地观察和操作医疗影像数据,进而更好地辅助医生进行诊断,
随着Internet的飞速发展和普及,在我国高校学分制的实行以来,越来越广泛的要求学生进行自主选课,学生选课系统也从原始的手工填表过渡到网络选课。本文在综合考虑以往的选课系统
在航空电子系统中,系统内各个模块之间进行着大量的数据传输,传统的ARINC429总线通信卡依赖通信平台处理机来完成控制与处理工作,增加了系统开销,降低了传输速率,系统可靠性
移动代理(Agent)技术涉及到计算机网络、分布式系统、通信技术、操作系统、计算机语言以及人工智能等诸多领域,为了更好地利用好移动Agent技术,必须解决好迁移、通信、编程语
最近几年,对等计算(Peer-to-Peer,简称P2P)迅速成为计算机界关注的热门话题之一,财富杂志更将P2P列为影响Internet未来的四项科技之一。 Peer-to-Peer(P2P)作为以文件共享
多示例学习是继监督学习、无监督学习、强化学习之后的第四类机器学习框架。与以往的三大学习框架不同,多示例学习的训练数据中样本与示例是不同的概念。多示例学习作为一种
嵌入式技术的飞速发展,特别是嵌入式技术和Internet技术的结合,很多嵌入式系统将不再是一个个孤立的系统,系统的互联使得信息安全问题变得更加突出。传统的嵌入式操作系统安全性