几种常见软件可靠性测试方法综述及应用对比(精)

上传人:cn****1 文档编号:487753982 上传时间:2023-10-09 格式:DOC 页数:10 大小:20.50KB
返回 下载 相关 举报
几种常见软件可靠性测试方法综述及应用对比(精)_第1页
第1页 / 共10页
几种常见软件可靠性测试方法综述及应用对比(精)_第2页
第2页 / 共10页
几种常见软件可靠性测试方法综述及应用对比(精)_第3页
第3页 / 共10页
几种常见软件可靠性测试方法综述及应用对比(精)_第4页
第4页 / 共10页
几种常见软件可靠性测试方法综述及应用对比(精)_第5页
第5页 / 共10页
点击查看更多>>
资源描述

《几种常见软件可靠性测试方法综述及应用对比(精)》由会员分享,可在线阅读,更多相关《几种常见软件可靠性测试方法综述及应用对比(精)(10页珍藏版)》请在金锄头文库上搜索。

1、几种常用软件可靠性测试措施综述及应用对比上海交通大学 陈晓芳摘 要软件可靠性测试是软件可靠性工程的一项重要工作内容,是满足软件可靠性规定、评价软件可靠性水平及验证软件产品与否达到可靠性规定的重要途径。本文探讨、研究了软件可靠性测试的基本概念,分析、对比了几种软件可靠性测试重要措施的优缺陷。核心词软件可靠性 软件可靠性测试软件测试措施引言软件可靠性工程是指为了满足软件的可靠性规定而进行的一系列设计、分析、测试等工作。其中拟定软件可靠性规定是软件可靠性工程中要解决的首要问题,软件可靠性测试是在软件生存周期的系统测试阶段提高软件可靠性水平的有效途径。多种测试措施、测试技术都能发现导致软件失效的软件中

2、残存的缺陷,排除这些缺陷后,一般来讲一定会实现软件可靠性的增长,但是排除这些缺陷对可靠性的提高的作用却是不同样的。其中,软件可靠性测试能最有效地发现对可靠性影响大的缺陷,因此可以有效地提高软件的可靠性水平。软件可靠性测试也是评估软件可靠性水平,验证软件产品与否达到软件可靠性规定的重要且有效的途径。一、软件可靠性测试概念“测试”一般是指“为了发现程序中的错误而执行程序的过程”。但是在不同的开发阶段、对于不同的人员,测试的意义、目的及其采用的措施是有差别的。在软件开发的测试阶段,测试的重要目的是开发人员通过运营程序来发现程序中存在的缺陷、错误。而在产品交付、验收阶段,测试重要用来验证软件产品与否达

3、到顾客的规定。或者说,对于开发人员,测试是发现缺陷的一种途径、手段,而对于顾客,测试则是验收产品的一种手段。二、软件测试措施软件测试措施有如下几种重要概念:白盒测试、黑盒测试、灰盒测试。白盒测试(W h tebox tsin或gs-b test是通过程序的源代码进行测试而不使用顾客界面。这种类型的测试需要从代码句法发现内部代码在算法,溢出,途径,条件等等中的缺陷或者错误,进而加以修正。黑盒测试(B lack-bo etg是通过使用整个软件或某种软件功能来严格地测试,而并没有通过检查程序的源代码或者很清晰地理解该软件或某种软件功能的源代码程序具体是如何设计的。测试人员通过输入她们的数据然后看输出

4、的成果从而理解软件如何工作。一般测试人员在进行测试时不仅使用肯定出对的成果的输入数据,并且还会使用有挑战性的输入数据以及也许成果会出错的输入数据以便理解软件如何解决多种类型的数据。灰盒测试(ray-ox testing就像黑盒测试同样是通过顾客界面测试,但是测试人员已有所理解该软件或某种软件功能的源代码程序具体是如何设计的,甚至于还读过部分源代码,因此测试人员可以有的放矢地进行某种拟定的条件或功能的测试。这样做的意义在于:如果你懂得产品内部的设计和透过顾客界面对产品有进一步理解,你就可以更有效和进一步地从顾客界面来测试它的各项性能。、白盒测试白盒测试又称构造测试,透明盒测试、逻辑驱动测试或基于

5、代码的测试。白盒测试是一种测试用例设计措施,盒子指的是被测试的软件,白盒指的是盒子是可视的,你清晰盒子内部的东西以及里面是如何运作的。白盒的测试用例需要做到:(保证一种模块中的所有独立途径至少被使用一次;(2对所有逻辑值均需测试true和fse;(3在上下边界及可操作范畴内运营所有循环;(4检查内部数据构造以保证其有效性。白盒测试的目的:通过检查软件内部的逻辑构造,对软件中的逻辑途径进行覆盖测试;在程序不同地方设立检查点,检查程序的状态,以拟定实际运营状态与预期状态与否一致。白盒测试的特点:根据软件设计阐明书进行测试、对程序内部细节的严密检查、针对特定条件设计测试用例、对软件的逻辑途径进行覆盖

6、测试。白盒测试的实行环节:(1测试筹划阶段:根据需求阐明书,制定测试进度。(测试设计阶段:根据程序设计阐明书,按照一定规范化的措施进行软件构造划分和设计测试用例。(3测试执行阶段:输入测试用例,得到测试成果。(4测试总结阶段:对比测试的成果和代码的预期成果,分析错误因素,找到并解决错误。白盒测试的措施:总体上分为静态措施和动态措施两大类。静态分析是一种不通过执行程序而进行测试的技术。静态分析的核心功能是检查软件的表达和描述与否一致,没有冲突或者没有歧义。动态分析的重要特点是当软件系统在模拟的或真实的环境中执行之前、之中和之后,对软件系统行为的分析。动态分析涉及了程序在受控的环境下使用特定的盼望

7、成果进行正式的运营。它显示了一种系统在检查状态下是对的还是不对的。在动态分析技术中,最重要的技术是途径和分支测试。小结:白盒测试是一种被广泛使用的逻辑测试措施,是由程序内部逻辑驱动的一种单元测试措施。只有对程序内部十分理解才干进行适度有效的白盒测试。但是贯穿在程序内部的逻辑存在着不拟定性和无穷性,特别对于大规模复杂软件。因此我们不能穷举所有的逻辑途径,虽然穷举也未必会带来好运(穷举不能查出程序逻辑规则错误,不能查出数据有关错误,不能查出程序漏掉的途径。要对的使用白盒测试,就要先从代码分析入手,根据不同的代码逻辑规则、语句执行状况,选用适合的覆盖措施。任何一种高效的测试用例,都是针对具体测试场景

8、的。逻辑测试不是片面的测试对的的成果或是测试错误的成果,而是尽量全面地覆盖每一种逻辑途径。2、黑盒测试黑盒测试(B lak-bxTesting,又称为功能测试或数据驱6动测试是把测试对象看作一种黑盒子。运用黑盒测试法进行动态测试时,需要测试软件产品的功能,不需测试软件产品的内部构造和解决过程。采用黑盒技术设计测试用例的措施有:等价类划分、边界值分析、错误推测、因果图和综合方略。黑盒测试的目的是发现如下类型的错误:(1功能错误或漏掉;(2界面错误;(3数据构造或外部数据库访问错误;(性能错误;(5初始化和终结错误。黑盒测试的实行环节:(1测试筹划,根据顾客需求报告中有关功能规定和性能指标的规格阐

9、明书,定义相应的测试需求报告,即制定黑盒测试的最高原则,后来所有的测试工作都将环绕着测试需求来进行,符合测试需求的应用程序即是合格的,反之即是不合格的;同步,还要合适选择测试内容,合理安排测试人员、测试时间及测试资源等。(2测试设计,将测试筹划阶段制定的测试需求分解、细化为若干个可执行的测试过程,并为每个测试过程选择合适的测试用例(测试用例选择的好坏将直接影响到测试成果的有效性。(3测试开发,建立可反复使用的自动测试过程。(4测试执行,执行测试开发阶段建立的自动测试过程,并对所发现的缺陷进行跟踪管理。测试执行一般由单元测试、组合测试、集成测试、系统联调及回归测试等环节构成,测试人员应本着科学负

10、责的态度,一步一种脚印地进行测试。(5测试评估,结合量化的测试覆盖域及缺陷跟踪报告,对于应用软件的质量和开发团队的工作进度及工作效率进行综合评价。小结:黑盒测试注重于测试软件的功能性需求,也即黑盒测试使软件工程师派生出执行程序所有功能需求的输入条件。黑盒测试并不是白盒测试的替代品,而是用于辅助白盒测试发现其她类型的错误。3、灰盒测试灰盒测试是基于程序运营时刻的外部体现同步又结合程序内部逻辑构造来设计用例,执行程序并采集程序途径执行信息和外部顾客接口成果的测试技术。灰盒测试法的目的是验证软件满足外部指标规定以及软件的所有通道都进行了检查。通过该程序的所有途径都进行了检查和验证后,就得到了全面的验

11、证。完毕功能和构造验证后,就可随机地一次变化一行来验证软件测试用例在软件遇到违背原先验证的不利变化时软件的可靠性。灰盒测试需要的条件:(1需要在测试中,除了部署产品之外,尚有就是程序源代码,不管外部是多少美丽界面或易用的功能,最后都是由源代码来实现的。因此在部署时,要安装源代码。从源代码编译生成的目录中运营软件。(需要代码覆盖率工具的配备;部署可以针对本软件开发语言的代码覆盖率工具;(3测试人员要具有阅读代码的能力,其对开发语言的熟悉限度和程序设计经验多少决定了采用灰盒测试可以获得多大的好处,因此配备这方面的测试人员或进行必要的培训是必要的。三、白盒、黑盒、灰盒测试措施的优缺陷比较测试措施长处

12、缺陷白盒测试1、迫使测试人员去仔细思考软件的实现、可以检测代码中的每条分支和途径、揭示隐藏在代码中的错误4、对代码的测试比较彻底5、最优化、昂贵2、无法检测代码中漏掉的途径和数据敏感性错误3、不验证规格的对的性黑盒测试、基本上不用人管着,如果程序停止运营了一般就是被测试程序rash了、设计完测试例之后,下来的工作就是爽了,固然更苦闷的是拟定crs因素1、成果取决于测试例的设计,测试例的设计部分来势来源于经验,OU SPG的东西很值得借鉴2、没有状态转换的概念,目前某些成功的例子基本上都是针对PU来做的,还做不到针对被测试程序的状态转换来做3、就没有状态概念的测试来说,寻找和确定导致程序cras

13、h的测试例是个麻烦事情,必须把周边也许的测试例单独确认一遍。而就有状态的测试来说,就更麻烦了,特别不是一种单独的tst ce导致的问题。这些在堆的问题中体现的更为突出灰盒测试1、可以进行基于需求的覆盖测试和基于程序途径覆盖的测试、测试成果可以相应到程序内部途径,便于的定位、分析和解决、可以保证设计的黑盒测试用例的完整性,避免漏掉软件的某些不常用的功能或功能组合、可以需求或设计不具体或不完整对测试导致的影响1、投入的时间比黑盒测试大概多2-40%的时间、对测试人员的技术规定更高 四、总结软件可靠性是软件质量评估的最重要指标之一,本文论述了软件可靠性测试的基本概念和重要措施,重点对常用措施的优缺陷进行了比较;其实软件可靠性测试措施不下有20种之多,要根据不同的环境、软件类型选择不同的测试措施,才干保证软件的可靠。参照文献1马瑞芳,王会燃.计算机软件测试措施的研究小型微型计算机系统,2月期2徐明,杨文.软件测试与软件可靠性的研究中国科技信息,第1期3陆民燕,陈雪松.软件可靠性测试及其实践测控技术,19卷第5期7

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 解决方案

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号