面向方面编程的单元测试方法研究

来源 :重庆邮电大学 | 被引量 : 0次 | 上传用户:ansonliu
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
作为一种新的软件开发技术,面向方面编程(AOP,Aspect-OrientedProgramming)通过引入新的编程元素,将影响多个类的行为封装到一个可重用模块中,从而消除了面向对象编程中由横切关注点所引起的代码分散和代码纠缠问题,提高了系统的模块化程度,增强了系统的可维护性和代码的重用性。但是,面向方面编程技术的这一特性也使得软件测试具有一定的特殊性,传统的测试方法不再完全适用于面向方面程序,需要提出新的测试方法。而单元测试作为软件测试过程中最早、最基本的部分,是早期发现错误的最好阶段。因此,对面向方面程序进行单元测试的研究是有必要的。方面对类的依赖性以及类的封装性的破坏增加了单元测试的难度。   本文从控制流出发,为面向方面程序定义了三类单元测试模块,分别是Normal Method,Clustering Method和Clustering Advice。为了对测试路径进行选择,引入了一种新的面向方面的测试覆盖准则,即交织边覆盖,可用于验证逻辑触发时间的正确性。从测试自动化角度出发,采用了基于深度优先的路径生成算法和基于遗传过程的测试数据生成算法。在深度优先算法中使用了时间戳的概念,计算并记录遍历对象的状态,指导遍历过程的进行,从而生成测试路径。在此基础上使用改进的混合遗传算法生成测试数据。针对遗传算法早熟的缺陷,通过判断种群早熟的程度,自适应地调整交叉率和变异率,使种群在进化过程中既能保持个体的多样性,又加快了其收敛速度;通过设置爬山阈值,当进化到该阈值规定的代数且仍未取得最优解时,选择当前群体中的最优个体进行爬山操作,以提高算法的局部搜索能力。在Matlab工具上以三角形分类程序作为例子,实现了AOP程序单元测试数据的生成过程。当改进的混合遗传算法执行到指定代数时,生成的目标个体的数目达到了种群的63%,证明了该算法的有效性。通过与相关算法的比较,证明了改进的混合遗传算法的收敛代数有所减小,保持着较快的收敛速度。实验结果表明了论文中所提出的测试方法是可行的。
其他文献
数据流的出现给传统的数据挖掘技术带来了巨大的挑战。由于数据流连续不断的到来,已有的数据处理技术难以对这些潜在无限的、变化的数据进行有效的管理和挖掘。随着移动终端设
论文设计并实现了NBOS源数据预分析系统,对NBOS源数据进行必要的统计分析和存储处理。统计分析的目的是为NBOS部分配置参数的设置提供依据;存储的目的是为NBOS开发系统和测试
随着3G网络的发展以及芯片性能的不断增强、成本的不断降低,基于3G网络的移动多媒体终端的应用越来越广泛,比如视频会议、视频监控等,终端间的通信变得越来越重要。sip协议简
流量数据是对网络规划、网络管理、网络安全、新网络协议等研究工作的重要基础。随着网络的不断发展,规模不断扩大,网络数据流量急剧增加,高速网络越来越普遍。低速网络环境下使
随着信息技术的高速发展,业界较多采用了以集群为代表的分布式并行文件系统来实现海量数据的分布存储及并行处理。对象存储文件系统Lustre通过改进的存储体系结构,支持大并发的
群智能优化算法在解决NP类问题具有较高的效率和收敛速度,已经得到国内外越来越多的研究者和工程技术人员的关注,群智能优化算法已经成为解决云计算资源调度问题主要研究方向
伴随着网络的迅速发展,电子邮件已经成为Internet上最普及的应用。每个经常上网的人都会有一个甚至几个电子邮箱,由此可见电子邮件已经逐渐开始取代普通的信件,成为最主要的
隐写技术与隐写分析技术作为信息安全领域的一个研究热点,在近几年取得了很大进展。隐写分析的目的在于揭示媒体中是否含有隐藏信息,甚至只是指出媒体中存在隐藏信息的可疑性
用户的网络行为影响着网络的安全与稳定,传统的网络管理对于大量的用户网络行为缺乏有效管理手段,满足不了当前园区网大型化、异构化趋势的管理需要,并且让管理者身陷于重复
随着无线局域网(WLAN:Wireless Local Area Network)技术的迅猛发展,无线局域网的传输速率由最初的1Mbps发展到现在300甚至600Mpbs,语音、视频和在线游戏等多媒体应用已越来越多