【摘 要】
:
单元测试是软件测试流程的第一步,充分有效的单元测试可以尽可能多的发现软件故障,降低开发成本,提高软件质量。代码测试系统(Code Testing System,CTS)是一款由Java语言实现
论文部分内容阅读
单元测试是软件测试流程的第一步,充分有效的单元测试可以尽可能多的发现软件故障,降低开发成本,提高软件质量。代码测试系统(Code Testing System,CTS)是一款由Java语言实现的软件测试系统,实现了自动化的单元测试,主要功能是针对C程序进行语句、分支、MC/DC覆盖测试。库函数和系统调用是自动测试面临的一大难点,测试人员需要进行人工操作,才能使测试正常进行,这样大大降低了自动化测试的效率,在CTS中采用自适应打桩算法为普通函数自动生成桩函数。输入/输出(Input/Output,I/O)函数是一类常见的库函数,不同于普通函数,I/O函数操作对应于具体的I/O设备,普通的打桩方法忽略了函数调用之间的关联。为了提高自动化测试的效率和桩函数的准确性,本文提出了为I/O设备建模和I/O函数建模的方法。本文的主要工作如下:(1)为I/O设备和I/O函数分别建立模型,并将I/O函数的语义等价为对I/O设备模型的操作。为I/O设备建模,用模型的状态和属性来表示一个具体的I/O设备,包括控制台、文件和Socket网络。为I/O函数建模,I/O函数的语义被存储在I/O函数模型中,并将I/O函数的语义等价为对I/O设备模型的操作。I/O设备的最终状态和属性由对应的模型来表示。(2)给出了一个约束提取的算法,用来将I/O设备模型和I/O函数模型中的约束条件提取出来。该算法以源代码、抽象语法树、控制流图为输入,通过分析控制流图上的每个函数节点,来修改和存储I/O设备模型的属性和状态,并将约束条件存储在I/O设备模型中,最后利用约束求解来实现自动打桩。实验结果表明本文提出的方法能够有效提升源代码中包含I/O函数的程序的覆盖率,提高了自动测试的效率。实例分析说明该方法能够为路径上的I/O函数自动生成满足路径约束的桩函数。
其他文献
该文首先介绍了搜索引擎的整体发展情况,包括中文智能搜索引擎的现状和特点,然后对文本自动分类系统中所涉及的关键技术,包括向量空间模型,文本表示方法,分词方法,特征提取,
Sun的企业Java平台J2EE为实现多层体系结构提供了具体的技术规范.由于Java的跨平台性,J2EE具有工业强度的可扩展性,支持合理的集成和灵活的部署.该文在深入研究了多层体系结
智能化是计算机发展的必然趋势,无论是计算机控制,还是商用民用软件,都要求含有越来越高的智能因素,因此人工智能领域的研究越来越受到重视。近几年多智能体系统成为研究热点之一
该论文研究如何提高设备驱动程序的开发周期、安全性及可移植性等问题.论文首先对设备驱动程序所涉及到的各个方面作了简单介绍,总结了前人所作的相关工作,提出了一个解决设
在Internet/Intranet技术和应用发展的同时,面向对象技术也获得了长足的进展,并由此产生了分布对象计算技术,以及基于组件的多层体系结构技术架构.目前,基于组件的多层体系结
近些年来,随着计算机技术的快速发展和企业信息化程度的不断提高,企业数据量正呈现指数增长,这些数据蕴含着大量的信息财富,通过对其合理存储和管理,可以减少知识流失,为企业
该文在深刻分析了SMPP协议的基本功能、会话流程以及原语操作的基础上,从组件技术、JAVA加密技术和中文文本过滤技术等三个方面,提出了对实现SMPP协议的改进意见.采用组件技
在现代软件测试中,单元测试是一种重要的测试方法。它对软件中的最小单元即函数模块进行测试。任何函数模块都不是独立的,可能需要调用其他函数模块来完成目标功能。由于一个
该文阐述了数据仓库的基本概念和方法,探讨了数据仓库作为决策支持系统的一种有效和可行的体系化解决方案包括的三个方面的技术内容:数据仓库技术.联机分析处理技术(OLAP)和
UML是一种工业界应用最为广泛的建模语言.自1997年OMG提出UML概念至今,UML得到迅速的扩充和发展,目前已经成为面向对象系统的规范语言标准.但是由于缺乏形式化的语义及其多视