基于Object-Z规格说明的测试用例生成方法研究

来源 :上海大学 | 被引量 : 0次 | 上传用户:mountaineer
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
随着信息技术的发展,软件规模不断扩大,而且越来越复杂,如何保证和提高软件质量成为软件界最为关心的问题之一。软件测试作为保证软件质量的关键技术,能够有效地发现软件中的故障。对于某些安全关键的软件,其测试费用是所有其它软件工程阶段费用总和的三到五倍。因而,提高软件测试的有效性和测试效率、降低软件开发成本己成为软件工程师迫切需要解决的任务之一。 测试用例的好坏直接影响软件测试的效果。根据测试用例产生的依据可以将软件测试分为白盒测试和黑盒测试,从规格说明产生测试用例的方法称为黑盒测试。形式的软件规格说明具有精确的符号表示和清晰的语义,能够进行推理和证明,同时也便于工具的处理。因此,用形式的规格说明作为测试用例的来源将会使得测试用例的自动构造成为可能。 目前基于Object-Z的形式规格说明构造测试用例的研究主要集中在理论研究阶段,测试用例的自动生成几乎没有相应的工具支持,这主要是因为Obiect-Z是基于数学和逻辑的语言,比较难以提取其中表达式的语义,这就难以自动产生测试用例。本文研究从Object-Z规格说明产生测试用例的自动化过程,这一过程主要包含三个阶段:Object-Z语言的自动解析、语义自动抽取和测试用例自动产生。 本文针对操作模式中使用的调用模式提出了产生测试用例的方法和若干测试准则,该方法能够验证代码中的函数是否正确地调用了其他类的函数。 本文对Object-Z语言的部分文法进行了改进,以减少自动解析时的冲突,提出并完善了用于从Object-Z图形与数学符号结合的语言转换成易于计算机处理的纯文本LaTeX语言的方法,并构造了相应的文法来解析用Object-Z编写的规格说明,生成语法树,根据语法树可以提取出相关语义。为了人们方便地编写和阅读规格说明,Object-Z语言使用了大量的模式复合和简写形式,这给计算机提取完整语义自动产生测试用例造成了困难,因此本文还给出了还原完整语义的方法。 本文实现了提取规格说明中操作模式前置条件的方法,并分离出文字集及它们之间的逻辑关系。本文实现了产生符合组合测试准则和一系列调用测试准则的测试用例的方法。通过本文所提供的软件开发平台,可以很容易得到规格说明中存在的各种语义,方便地实现基于测试准则自动产生测试用例的工具。
其他文献
售后服务水平的高低已经成为汽车市场中企业竞争成败的关键因素之一。近年来,我国汽车行业售后服务水平得到了很大的提高,但许多汽车制造企业的售后服务体系仍存在着业务处理方
三维几何模型简化是计算机图形学领域始终备受关注的研究方向,也是未来相当长时间内的热点方向。随着获取和建模技术的迅速发展,得到高精度、大数据量的三维几何模型变得越来
随着P2P技术的发展,越来越多的研究人员从事到P2P协议的开发中来,新的P2P协议和算法在投入使用以前,需要使用P2P模拟器对其正确性及性能进行验证和评价。本文在研究了现有P2P
继电保护装置是电力系统最重要的二次设备之一,继电保护测试系统担负着对继电保护装置工作性能进行测试的重要任务,在电力系统的正常运行过程中是必不可少的。传统的继电保护测试软件大多采用面向对象的系统结构,虽然已能基本实现,但软件在稳定性和可扩展性上还存在许多不足:软件对于编程语言的依赖性很强;应用程序结构缺乏灵活性;软件对应用环境的适用性差,代码在不同应用环境间很难共享。鉴于继电保护测试软件开发过程中的
随着网络技术的普及发展和教育改革的不断推进,智能化组建试卷的研究越来越受到专家学者的重视。组建试卷的研究是一个多目标多约束的组合优化问题,其关键部分是确定组建试卷
逻辑程序设计语言提供了一种说明性的编程方法,与基于算法的过程性程序设计语言如Pascal、Ada和C等相比,逻辑程序设计语言具有诸多优点。首先,逻辑程序丰富的表达能力和不确
网络的应用形式由传统业务向P2P、Web2.0等形式转移,急需高效的流量监控系统对网络的各类业务进行及时、准确的分析和控制。本论文以“基于IPv6的P2P弹性重叠网络智能节点的研
随着计算机技术的广泛应用,各领域对软件的需求不断增长,软件的复杂程度也不断提高,软件危机日益严重,如何更好的在缩短软件开发周期的同时提高软件质量就成为软件产业的当务之急
随着无线射频识别RFID (Radio Frequency Identification)技术的不断发展,RFID在各商业领域得到了广泛的应用,对RFID传感器产生的海量原始数据进行实时有效的处理变得越来越
频繁项集挖掘是数据挖掘领域的重要研究方向之一,但是传统的频繁项集挖掘算法只考虑项集的支持度,这使得在挖掘过程中丢失一些用户感兴趣的项集。此外,由于数据流具有实时性、无