软件测试论文_第1页
软件测试论文_第2页
软件测试论文_第3页
软件测试论文_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、. 软件测试 ?!(一) 软件测试的背景软件测试是伴随着软件而产生的。在20世纪60年代(软件工程建立前),高级语言相继诞生并广泛应用,因此为表明程序正确而进行测试。到了20世纪70年代,随着软件规模越来越大,其复杂性也急剧增加,软件在计算机系统中的重要性越来越高。1975年John Good Enough和Susan Gerhart在IEEE上发表了测试数据选择的原理的文章,软件测试被确定为一种研究方向。1979年,Glenford Myers的软件测试艺术一书成为软件测试领域的第一本重要专著,其中将软件测试定义为:“测试是为了发现错误而执行的一个程序或者系统的过程。”Myers为软件测试的

2、发展起了重要作用。 20世纪80年代早期,“质量的号角开始吹响”。软件测试定义发生改变,测试不单纯是一个发现错误的过程,而且包含软件质量评价的内容,制订了各类标准。1982年在美国卡来纳大学举行了首届软件测试正式会议。1983年,Bill Hetzel在软件测试完全指南中指出:测试是以评价一个程序或者系统属性为目标的任何一种活动,测试是对软件质量的度量。同年,IEEE提出的软件工程术语中对软件定义是:“使用人工或自动的手段来运行或测定某个系统的过程,其目的在于检验它是否满足规定的需求或弄清实际结果和预期结果的差别。”此时软件已成为一个专业,需要运用 方法和手段,需要专门的人才。 进入20世纪9

3、0年代,测试工具盛行起来。1996年提出的测试能力成熟度TCMM(Testing Capability Maturity Model)、测试支持度TSM(Testability Support Model)、测试成熟度TMM(Testing Maturity Model)。到了2002年,Rick和Stefan在系统的软件测试一书中对软件测试做了进一步定义:测试是为了度量和提高被测软件的质量,对测试软件进行工程设计、实施和维护的整个生命周期过程。近二十年来,随着计算机和软件技术的飞速发展,软件测试技术研究也取得很大突破。在1982年首届软件测试技术会议以后,该会议每两年召开一次。此外,国际上还

4、有软件可靠性会议,越来越多的人加入软件测试行业,从事软件测试技术的研究。(二) 软件测试和软件调试的区别软件调试跟软件测试是两个不同的过程,有着根本的区别1. 软件测试就是为了发现错误而执行程序的过程。软件调试是发现错误并改正的。2. 软件调试是一个随机的,不可重复的过程,它用于隔离和确认问题发生的原因,然后修改软件来纠正问题。软件测试是一个有计划的,可以重复的过程,它的目的是为了发现与预先定义的规格和标准不符合的问题。软件测试是找出软件已经存在的错误,而调试是定位错误,修改程序以修正错误。3. 软件测试从一个已知的条件开始,有预知的结局,而软件调试从未知的条件开始,其结局不可预知。4. 软件

5、测试可以计划,可以预先制定测试用例和过程,工作进度可以度量。而调试不能计划,进度不可度量。5. 软件调试是在测试之后,在方法,思路,策略上都有所不同。6. 软件测试的对象可以是文档和代码 而软件调试的对象只能是代码。7. 软件调试是随机性的,由程序员完成 。为了程序可运行。软件测试是有目的性的,由测试人员完成。为了程序可完成指定功能。8. 软件测试的目的是为了发现软件中存在的错误;而软件调试是为了证明软件开发的正确性。9. 软件测试经历发现错误、改正错误、重新调试的过程。而软件调试是一个推理过程。10. 软件测试的执行是有规程的。软件调试的执行往往要求开发人员进行必要推理以至知觉的飞跃。11.

6、 测试经常是由独立的测试组在不了解软件设计的条件下完成的;调试必须由了解详细设计的开发人员完成。(三) 软件测试工具介绍1. AutoRunner 是国内第一款自动化测试工具,可以用来完成功能测试、回归测试、每日构建测试与自动回归测试等工作。是具有脚本语言的、提供针对脚本完善的跟踪和调试功能的、支持IE测试和Windows native测试的自动化测试工具。2. TestCenter 是一款功能强大测试管理工具,它可以帮助您:实现测试用例的过程管理,对测试需求过程、测试用例设计过程、业务组件设计实现过程等整个测试过程进行管理。实现测试用例的标准化即每个测试人员都能够理解并使用标准化的测试用例,

7、降低了测试用例对个人的依赖;提供测试用例复用,用例和脚本能够被复用,以保护测试人员的资产;提供可伸缩的测试执行框架,提供自动测试支持;提供测试数据管理,帮助用户同意管理测试数据,降低测试数据和测试脚本的耦合度。3. TAR(Terminal AutoRunner)适用于VT100、VT220等标准的应用系统,支持命令行模式和窗口模式(使用Cursors编写的应用程序),支持自动录制脚本、所见即所得的资源和脚本编辑,稳定的自动同步功能。是国内最好的银行业务测试工具。4. LoadRunner 是一种预测系统行为和性能的工业标准级负载测试工具。通过以模拟上千万用户实施并发负载及实时性能监测的方式来

8、确认和查找问题,LoadRunner 能够对整个企业架构进行测试。通过使用LoadRunner,企业能最大限度地缩短测试时间,优化性能和加速应用系统的发布周期。5. TestDirector是全球最大的软件测试工具提供商Mercury Interactive公司生产的企业级测试管理工具,也是业界第一个基于Web的测试管理系统,它可以在您公司内部或外部进行全球范围内测试的管理。通过在一个整体的应用系统中集成了测试管理的各个部分,包括需求管理,测试计划,测试执行以及错误跟踪等功能,TestDirector极大地加速了测试过程。(四) 软件测试的发展现状(五个误区)和前景软件开发中出现的错误或缺陷的

9、机会越来越多,市场对软件质量重要性的认识逐渐增强。所以,软件测试在软件项目实施过程中的重要性日益突出。但是现实情况是,与软件编程比较,软件测试的地位和作用,还没有真正受到重视,还是对软件测试的认识存在误区,这进一步影响力软件测试活动开展和真正提高软件测试质量。误区之一:软件开发完成后进行软件测试。人们一般认为,软件项目要经过以下几个阶段:需求分析,概要设计,详细设计,软件编码,软件测试,软件发布。据此,认为软件测试只是软件编码后的一个过程。这是不了解软件测试周期的错误认识。软件测试是一个系列过程活动,包括软件测试需求分析,测试计划设计,测试用例设计,执行测试。因此,软件测试贯穿于软件项目的整个

10、生命过程。在软件项目的每一个阶段都要进行不同目的和内容的测试活动,以保证各个阶段的正确性。软件测试的对象不仅仅是软件代码,还包括软件需求文档和设计文档。软件开发与软件测试应该是交互进行的,例如,单元编码需要单元测试,模块组合阶段需要集成测试。如果等到软件编码结束后才进行测试,那么,测试的时间将会很短,测试的覆盖面将很不全面,测试的效果也将大打折扣。更严重的是如果此时发现了软件需求阶段或概要设计阶段的错误,如果要修复该类错误,将会耗费大量的时间和人力。误区之二:软件发布后如果发现质量问题,那是软件测试人员的错这种认识比较打击软件测试人员的积极性。软件中的错误可能来自软件项目中的各个过程,软件测试

11、只能确认软件存在错误,不能保证软件没有错误,因为从根本上讲,软件测试不可能发现全部的错误。从软件开发的角度看,软件的高质量不是软件测试人员测出来的,是靠软件生命周期的各个过程中设计出来的。出现软件错误,不能简单地归结为某一个人的责任,有些错误的产生可能不是技术原因,可能来自于混乱的项目管理。应该分析软件项目的各个过程,从过程改进方面寻找产生错误的原因和改进的措施。误区之三:软件测试要求不高,随便找个人多都行很多人都认为软件测试就是安装和运行程序,点点鼠标,按按键盘的工作。这是由于不了解软件测试的具体技术和方法造成的。随之软件工程学的发展和软件项目管理经验的提高,软件测试已经形成了一个独立的技术

12、学科,演变成一个具有巨大市场需求的行业。软件测试技术不断更新和完善,新工具,新流程,新测试设计方法都在不断更新,需要掌握和学习很多测试知识。所以,具有编程经验的程序员不一定是一名优秀的测试工程师。软件测试包括测试技术和管理两个方面,完全掌握这两个方面的内容,需要很多测试实践经验和不断学习精神。误区之四:软件测试是测试人员的事情,与程序员无关开发和测试是相辅相成的过程需要软件测试人员、程序员和系统分析师等保持密切的联系,需要更多的交流和协调,以便提高测试效率。另外,对于单元测试主要应该由程序员完成,必要时测试人员可以帮助设计测试样例。对于测试中发现的软件错误,很多需要程序员通过修改编码才能修复。程序员可以通过有目的的分析软件错误的类型、数量,找出产生错误的位置和原因,以便在今后的编程中避免同样的错误,积累编程经验,提高编程能力。误区之五:项目进度吃紧时少做些测试,时间富裕时多做测试这是不重视软件测试的表现,也是软件项目过程管理混乱的表现,必然会降低软件测试的质量。一个软件项目的顺利实现需要有合理的项目进度计划,其中包括合理的测试计划,对项目实施过程中的任何问题,都要有风险分析和相应的对策,不要因为开发进度的

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论