基于SFTA和等价类软件测试用例设计方法研究与应用.docVIP

基于SFTA和等价类软件测试用例设计方法研究与应用.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文档。上传文档
查看更多
基于SFTA和等价类软件测试用例设计方法研究与应用

基于SFTA和等价类软件测试用例设计方法研究与应用   摘 要: 为了解决软件测试时高可靠性安全性要求,测试用例设计的充分性和有效性不足的问题,软件故障树分析结合等价类原则解决了测试用例设计的充分性和有效性问题。通过对软件的故障模式进行分析,在建立软件故障树的基础上获得了软件故障树的最小割集。以最小割集为模型,结合等价类划分方法实现了测试用例设计,并根据该方法开发了测试用例自动生成工具。通过测试项目实际应用表明,采用该方法进行测试用例设计可以满足测试的充分性和有效性要求。   关键词: 软件测试; 测试用例; 故障树; 等价类   中图分类号: TN06?34; TP311.5 文献标识码: A 文章编号: 1004?373X(2013)21?0128?04   0 引 言   随着计算机科学技术的不断发展,软件在各个行业中发挥着越来越重要的作用,在许多领域中软件实现的功能已达到整个系统功能的80%。因此,软件系统的质量往往决定着系统的质量,有时由软件缺陷引发的故障造成的后果会非常严重。例如文献[1]中20世纪80年代美国发生的放射治疗机软件错误,导致五名患者受到超计量辐射死亡的严重事故。随着软件应用的深入和广泛,特别是,应用于高铁、银行、医疗、军事和航天航空领域的软件,其软件的质量更加需要关注,如果这些系统中发生由软件缺陷引发的事故,其后果将是无法预料的。   目前,软件测试仍是保证软件质量的重要手段之一,而软件测试最关键的环节之一就是测试用例设计,测试用例设计的充分性决定着测试的有效性。采用何种测试用例设计方法满足测试的有效性和充分性要求是软件测试领域不断深入探索研究的课题。   软件故障树分析[2](SFTA)是一种自顶向下的软件可靠性和安全性分析方法,即从软件系统不希望发生的事件(顶事件),特别是对人员和设备的安全产生重大影响的事件开始,向下逐步追查导致顶事件发生的原因,直至基本事件(底事件)。利用SFTA分析的结果可以确定软件测试的重点和内容。   等价类划分方法是一种黑盒测试方法[3],它将软件的输入划分为若干个数据类,从中得到测试用例的输入。等价类划分的测试用例设计是基于对输入条件的等价类进行评估,是软件黑盒测试中最常采用的方法之一。   本文将SFTA和等价类划分方法相结合提出了一种有效的测试用例设计方法,并实现了测试用例的自动生成。   1 软件故障树及最小割集   SFTA技术是应用较为广泛的软件安全性分析方法,将此方法用于软件测试时,主要应用于软件黑盒测试的测试用例设计。对于那些高可靠安全要求的软件应在进行安全性分析的基础上,进行测试用例的设计以便实现测试用例的有效覆盖。   1.1 建立软件故障树   软件故障树的建立是软件故障树分析中最基本同时也是最关键的一项工作。软件故障树简单地说是由一些逻辑和事件符号构建而成的。由于软件故障树的准确性直接影响到对软件的分析,因此,在建立软件故障树时需要开展必要的准备工作。软件故障树的建立通常包括:收集并分析有关技术资料,选择要分析的顶事件和构建故障树。   1.1.1 收集并分析有关技术资料   软件故障树建立的完善程度直接影响基于最小割集的测试用例集合的有效性,因而需要软件故障树的建立者广泛地掌握并使用有关方面的知识和经验。这些知识和经验获取主要依靠对相关资料的学习和对软件的熟悉,需要掌握的内容主要应包括:软件系统的体系结构设计、软件的功能、系统的范围、软件之间的接口关系和运行环境等;识别人为因素对软件系统的影响;识别软件在不同的运行模式下的状态,以及不同模式之间的相互转换关系。   另外,在建立故障树时应征求有经验的设计人员、用户等的意见,以便保证软件故障树的正确性。   对于软件关键等级较高的软件,一般情况下,软件研制人员已完成了软件安全性分析。测试人员可以在此基础上开展进一步的分析。   1.1.2 选择要分析的顶事件   利用故障树进行软件分析常遇到的问题就是构建的故障树过于复杂,很难利用其进行有效的测试用例设计。为了避免这一难题,在构建故障树时可以将软件故障树分层构建,先按照软件单个功能项为单位进行构建,在逐渐延伸至顶事件。   这种顶事件确定方法也符合确认测试对所有功能进行测试的实际要求。顶事件的确定可以与确认测试的测试项的确定一起完成。当一个测试项有多个子测试项时,可以将子测试项做为顶事件。   采用这种方法不仅避免了软件故障树过于复杂的问题,也更符合测试工作的需要与流程。将软件故障树分析与测试项的分解、测试用例的设计紧密结合,更有利于测试用例的自动生成。   1.1.3 构建故障树   软件故障树中使用的符号包括事件符号和逻辑门符号两类。事件符号用以表示故障事件,逻辑门符号用以表示故障事件之间的逻辑

文档评论(0)

erterye + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档