一种基于合约的构件易测试性设计方式.docVIP

一种基于合约的构件易测试性设计方式.doc

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
一种基于合约的构件易测试性设计方式

一种基于合约的构件易测试性设计方式   认识到应该把质量做到软件产品中或至少预防软件“产品质量问题。因此,软件测试呈现向软件开发的前软件复用是提高软件产品质量与生产效率的关期发展、与软件开发的设计和编程阶段相融合的趋键技术。软件构件概念的提出为软件复用提供了技势,软件的易测试性设计正在成为新的研究热点。构术基础。构件的高质量是构件能被成功复用的前提。件测试一个重要的发展方向是基于合约的构件易测构件测试是保证构件质量的重要手段之一。构件的试性设计。开发者和复用者必须对构件进行充分的测试,以确本文提出一种基于合约的构件易测试性设计方保它在新的环境中正常工作。   例如1996年Ariane5法,在构件的设计和编码阶段由设计人员和编程人运载火箭的飞行失败表明,复用的构件在新的环境员在构件的接口和内部根据构件的规约增加构件的中未经过充分测试会引起灾难性的后果。合约,然后由工具自动检查合约语法、语义的正确与传统的软件测试相比,构件测试有其自身的性,插装合约检查代码,以便在软件运行时自动对固有特点:⑴不能?对构件的执行环境和用户的使用合约进行检查,当发生合约违反时自动抛出异常。模式进行完全准确的预测,故构件开发者不能完全、本文还开发相应的支持工具,并且进行实验。彻底地对构件进行测试,并且很难确定何时结束测_试;(2)构件复用者和第二方测试人员通常无法翻构件的源代码及详细的设计知识,故通常只能对构软件的易测试性是一个系统或构件有利于建立件进行黑盒测试,即调用构件的方法后只能通过观测试准则和执行测试以便确定该测试准则是否被满察执行的结果判断构件的行为是否正确,无法检查足的难易程度Pl。   直观上我们也可以将软件的易测试执行过程中的构件的内部状态,使得构件执行过程性理解为对软件进行测试以保证其无缺陷和满足其中的一些故障被隐藏。这些困难对构件测试提出了规约的难易程度。软件的易测试性包括可控制性、可严峻的挑战。传统的软件测试技术不能完全适用于观察性、可操作性、可分解性、简单性、稳定性等几个构件测试。方面,其中可控制性是通过软件的输入来控制它的长期以来,虽然人们将软件测试作为一种重要输出,而可观察性是通过输出能更好地分析测试的的软件质量保证手段,但是通常都是在软件开发的结果。   后期,即编码阶段结束之后才开始对软件进行测试。软件的易测试性是衡量软件质量的一项重要指此时已为时太晚,软件已经开发成型。近年来,人们标。对软件的易测试性的研究可以分为软件的易测试性分析和易测试性设计两个方面。常,便于就近定位故障。软件的易测试性分析研究如何对软件的易测试DBC方法不仅能够让用户按一定的格式书写合性进行度量,其目的为:(1)为软件的易测试性度约,而且提供相应的机制自动对合约进行处理和检量提供有效手段;(2)为软件的测试提供指导;查,并且当程序在运行过程中违反合约时及时给出(3)为软件的易测试性设计,进而为软件的设计提出错信息。软件的内建式测试方法是在程序中添加供帮助。额外的测试机制,使软件能够工作在测试模式下。软软件易测试性设计即是在软件的设计和编码件的内建式自测试方法就是在此基础上再增加测试中考虑测试问题,它借鉴了硬件易测试性设计的用例生成机制。思想。软件易测试性设计的目的是在不增加或者   2.软件合约的定义方法少增加软件复杂性的基础上,将易于测试的原则现在主要有二种定义软件合约的方法,第一种融合到设计和编码之中。软件易测试性设计符合方法利用面向对象程序设计语言的继承机制专门设软件测试的一个原则:尽早开始软件测试工作,计一个负责测试的超类、第二种方法在程序代码不断进行软件测试工作。软件易测试性设计体现的注释中嵌入合约,并且使用预处理器在编译之前软件测试的如下观点:软件产品的质量是生产对程序进行插装;第〒种方法设计一种独立的语言(包括分析、设计、编码、测试)出来的,而不是框架,它所描述的合约与目标程序设计语言相分仅仅依靠软件测试来保证。软件易测试性设计也离。体现了软件测试的一个发展趋势:向软件开发的嵌入式合约语言的原型是C语言中的assert。目前期发展,与软件开发的设计和编码阶段相融合。前比较有代表性的嵌入式合约语言包括ANNA(AN-易于测试的软件本身所包含的缺陷也会减少。软NotatedAda)141、APP(AnnotationPre-Processor)|51、件易测试性设计将有效地提高软件测试的效率和Nan#以及Eiffel等。质量,提高软件设计和编程的质量,进而提高软ADL(AssertionDefinitionLanguage)171是一种独立件产品的质量。的语言框架,它是一组可以翻译成不同常见的表达合约的种类有:前言(例如java),该方法不能从未插装类进行特化;更置条件、后置条件、

文档评论(0)

专注于电脑软件的下载与安装,各种疑难问题的解决,office办公软件的咨询,文档格式转换,音视频下载等等,欢迎各位咨询!

1亿VIP精品文档

相关文档