【摘 要】
:
随着信息化的推进,软件应用的领域越来越广泛,软件本身的复杂性也随之加大。如何保证软件质量一直是计算机技术的热门研究领域。单元测试是保证软件质量的重要环节。如何解决
论文部分内容阅读
随着信息化的推进,软件应用的领域越来越广泛,软件本身的复杂性也随之加大。如何保证软件质量一直是计算机技术的热门研究领域。单元测试是保证软件质量的重要环节。如何解决单元测试的可测试性和测试的自动化问题是实施单元测试的关键。本文主要研究C/C++单元自动化测试技术中,如何解决单元可测性问题以及如何建立一套自动化单元覆盖测试框架。本文提出了一套自动化单元覆盖的框架,该框架自动分析程序代码,生成代码的抽象语法树、控制流图、符号表、函数调用关系图,对待测程序进行单元划分,自动改造程序代码,生成测试用例后,自动生成驱动文件,最终监控管理测试用例执行,检测测试中的死循环和异常,同时给出测试报告。本文基于抽象解释理论,提出用函数摘要和路径区间缩减的方式来自动计算桩函数的预期值的方法进行打桩。同时通过对源代码的插装,实现对测试的覆盖分析,覆盖率计算,同时选取路径覆盖新的测试目标元素,生成新的测试用例。本文通过测试10个开源C/C++工程来验证单元自动化覆盖测试框架的性能和作用。实验证明该框架能够自动地建立测试环境;C程序不同方式的打桩证明基于函数摘要和路径区间缩减来自动计算桩函数预期值,在一定程度上解决了单元测试的可测性难题并提高了覆盖效果。
其他文献
随着高性能计算的发展,大规模科学计算往往需要处理TB级甚至PB级的数据,这就对高性能计算机的存储系统提出了较高的性能需求。分布式文件系统的发展和应用有效地解决了集群系
数字内容的阅读和播放是3G网络中重要的增值业务应用,为使这些数字内容的创作、分发和消费在可控方式下进行,防止数字内容的非法拷贝和传输,真正达到知识产权保护的目的,全球
随着智能移动终端平台的迅速发展以及第三代移动通信技术的逐步推广,移动互联网技术及其应用已经成为一个重要的研究领域。由于移动终端平台的特殊性,其设计原则和开发技术都
伴随城市化进程的加速和交通方式的多样化,人类移动也愈加频繁、快速、复杂。理解人群的移动行为,对于城市规划、交通管理、传染病控制等诸多社会经济问题具有重要意义。对于
自动人脸识别是计算机视觉和模式识别研究中最具挑战性和最活跃的研究课题之一。过去十年,人脸识别系统的性能得到了很大的提升。特别是基于统计学习的人脸识别方法取得了很大
讲故事已经被证明能够支持儿童的读写、听力、词汇能力及其它语言能力的发展。随着计算机技术的不断发展,信息技术逐渐引入儿童教育领域。如何更好地利用计算机讲故事还在研
随着时代的发展,信息的采集、传播的速度和规模达到空前的水平。面对极度膨胀的信息量,面对数据过剩的巨大压力,数据挖掘技术为从海量数据中快速准确获取有效信息提供了支持,
随着集成电路工艺的进步和计算机技术的发展,计算机系统的功耗逐步成为制约计算机技术进一步发展的瓶颈。为了解决计算机系统的功耗问题,各种功耗管理技术应运而生,成为学术界、
命名实体是用来标识一个客观存在的事物的词或短语,是信息表达的重要载体,用来表达文本的主要内容。近十几年来,中国的互联网信息产业发展非常迅速,大量的信息以电子文档的形
随着网络的普及和居民消费需求的提升,网络购物这种新型消费模式迅猛发展,使面向普通消费者的快递物流业成为了物流行业新的爆发点。电商对物流的时效性要求越来越高,使得快