软件测试技术发展模式探讨

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

工程技术 
计算机光盘软件与应用 
Computer CD Software and Appl ications 2012年第2期 

软件测试技术发展模式探讨 
岑兆臻 
(天津工业大学计算机科学与软件学院,天津300387) 

摘要:随着计算机水平的不断提升,计算机网络盛行的今天,软件安全性是人人关心的焦点,本文在界定了软件测 
试概念内涵的基础上,分析了软件测试的全过程,重点展望了未来软件测试技术的发展发向。 
关键词:软件测试;概念;测试过程;发展展望 
中图分类号:TP311.5 文献标识码:A 文章编号:1007—9599(2012)02—0146—02 

Software Testing Technology Development Mode 
Con Zhaozhen 
(Computer Science and Software Engineering of Tianjin Polytechnic University,Tianjin 300387,China) 

Abstract:Along with the computer level rising,the computer network is prevalent today,software safety is one of the focus of 
attention,this paper defined the concept of software testing based on the analysis of software testing,focused on the future 
development of software test technology. 
Keywords:Sottwam testing;Concept;Testing process;Development Outlook 


软件测试的概念内涵 

软件测试是为了发现错误而执行程序甚至不用执行程序的过 
程。它既是软件开发的重要阶段,也占有软件工程的重大比例。 
软件测试的地位至关重要,直接关系着软件开发的质量,因此软 
件测试要讲究策略讲究效果。它是帮助识别开发完成(中间或最 
终的版本)的计算机软件(整体或部分)的正确度、完全度和质 
量的软件过程;是SQA的重要子域。 二、软件测试过程分析 软件测试是一个贯穿整个软件生命周期的活动,那种等待整 个那系统开发完毕,再对其进行测试的想法是错误的,把测试放 到软件开发的最后是很危险的,因为它很容易导致整个软件系统 无法集成。另外,对软件的测试并不仅限于软件程序的本身,因 为错误并不一定是代码引起的。很有可能是软件需求、软件系统 的详细设计等阶段引起的。错误在初期也许只是范围很小的隐藏 问题,但由于软件开发的各阶段的连续性,会使错误逐步扩展, 如果早期的开发中出现的错误不能排除,将带到设计、编码、测 试等各阶段,影响逐步扩大。所以对软件的测试还应该包括与软 件有关的所有的文档。 软件测试过程,可分为五个步骤:单元测试、子系统测试、 系统测试、验收测试和平行运行。 单元测试:测试的对象是针对软件中的单个模块或者过程, 即测试软件中的基本组成单位。单元测试属于最基本的软件的动 态测试部分,但是重要性却不容忽视。单元测试旨在检查基本单 位是否正确。单元测试要求测试人员具有程序编码和设计知识, 因此往往从事单元测试的人员是程序设计人员,往往需要开发测 试驱动模块和桩模块来辅助完成单元测试。这就要求应用系统具 有很好的体系结构。 一个软件单元的正确性是相对于该单元的规约而言的。因此, 单元测试以被测试单位的规约为基准。单元测试的主要方法有控 制流测试、数据流测试、排错测试、分域测试等等。 集成测试:把软件单元逐步组装成一个计算机软件配置项的 过程叫“软件集成 。把软件逐步组装,同时一并进行测试,直到 整个系统成为一体的有序进行的测试叫“集成测试”,也叫“计算 机软件部件测试”、“组装测试”或“综合测试”。 确认测试:集成测试完成后,软件接口缺陷已经发现并纠正, 这时可以对软件进行确认测试。确认测试是通过黑盒测试来验证 软件功能及性能与要求规范是否一致。当发现与需求规范有差别, 要列出一个缺陷表。 系统测试:测试对象主要是针对软件开发后期形成的软件系 统,因此测试务必系统彻底,着重检查系统性能是否达到开发要 求,软件行为和输出是否精准。因此,系统测试应该按照测试计 划进行,其输入、输出和其他动态运行行为应该与软件规约进行 对比。软件系统测试方法很多,主要有功能测试、性能测试、随 机测试等等。 三、现有软件测试发展与展望 软件测试是伴随着软件的产生而产生的。早期的软件测试较 为狭隘,测试相当于“调试”,由开发人员自己完成这部分工作。 
通常是形成代码、产品基本完成时才进行测试,对测试的投入非 
常的少。直到1957年,软件测试才成为一种发现软件缺陷的活动。 
由于缺乏软件工程的概念,测试仍旧是开发之后的事情。1972年 
在北卡罗来纳大学举行了首次软件测试正式会议,软件测试才被 
确定为一种研究方向。1979年,Glenford Myers的《The Art of 
Software Testing}(软件测试艺术)是测试领域的第一本重要专 
著。在这本书中,Myers以及其同事们将软件测试定义为“测试 
是为发现错误而执行的一个程序或者系统的过程”。 
到了20世纪80年代,软件测试不再单纯是发现错误的过程, 
而且包含了软件质量评价的内容。包含IEEE标准、美国ANSI标 
准以及ISO国际标准在内的各类标准相继被制定。 
2O世纪90年代,测试工具逐渐得到了广大专家学者的广泛 
重视,开始盛行。测试被认为是为了度量和提高被测软件的质量, 
对测试软件进行工程设计、实施和维护的整个生命周期过程 
最近20年来,软件测试技术随着计算机和软件技术的飞速发 
展取得了很大突破,包括v模型、w模型在内的测试模型被相继 
总结出来。然而软件测试技术仍旧是落后于软件开发技术的发展 
速度,这使得软件测试面临着很大的挑战,主要体现在软件测试 
任务重、规模和功能日益复杂,难以有效测试;面向对象测试技 
术发展有待成熟等。分析现今国内外的测试发展,可以看出自动 
化测试已经逐渐代替手工测试成为日后发展的主流趋势。 
随着软件系统的规模越来越大,整个系统的复杂性也越来越 
大,那么单纯的手工测试已经不适合这种大系统的测试了。首先 
手工测试的效率低下,其次有些测试是手工测试所无法完成的。 
为了解决手工测试效率低下和手工测试不能解决的一些测试等问 
题,自动化测试就应运而生了。 
软件自动化测试,顾名思义,就是执行一种自动的测试程序, 
控制被测软件的执行,模拟手动测试步骤,完成全自动或半自动 
测试。软件自动化测试具有较高的实效性,快捷地测试出软件性 
能,这能够有效地保证软件质量,并为软件的提前上线赢得时间。 
近几年,常见的自动化测试工具有Rational Robot、Win 
Runner、QuickTest Professional、Telelogic TAU等。TAU第二 
(下转第142页) 

146..—— 
工程技术 
计算机光盘软件与应用 
Computer CD Software and Applications 2012年第2期 

如出现机房盗窃、破门、着火、漏水等严重事件时,机房管理人 
员有义务以最快的速度和最短的时间到达现场,按照预案处理相 
关的事件。 
(--)建立相关部门协查机制重视机房用电、消防安全 
机房管理人员应了解学习常规的用电安全操作知识,熟悉机 房内部的供电、用电设施的性能和使用寿命。机房管理人员还应 经常在电工指导下掌握机房用电应急处理步骤、措施和要领。机 房应安排专业电工定期检查供电、用电设备、线路、设施。不得 乱拉乱接电线,应选用安全、有保证的供电、用电器材。严禁随 意对设备断电、更改设备供电线路,严禁随意串接、并接、搭接 各种供电线路。如发现用电安全隐患,应即时采取措施解决,不 能解决的必须及时向相关负责人员提出解决。在真正接通设备电 源之前必须先检查线路、稳压器是否安全连接以及设备是否已经 就绪、人员是否已经具备安全保护。最后离开机房的管理人员, 应检查所有用电设备是否关闭。禁止在无人看管下在机房中使用 高温、炽热、产生火花的用电设备。在使用超过功率特定瓦数的 用电设备前,必须经专业人员检测并得到上级主管批准,保证线 路保险的基础上使用。在危险性高的设备位置应张贴相应的安全 操作方法、警示以及指引,实际操作时应严格执行操作规程。在 外部供电系统停电时,机房工作人员应全力配合,并启动停电应 急预案。在保证学校教育教学用的前提下应注意节约用电。 机房管理人员应熟悉机房内部消防器材放置位置,并在专业 人员指导下放置合适位置,制定安全操作和应急预案,任何人不 能随意更改消防系统工作状态、设备位置。需要变更消防系统工 作状态和设备位置的,必须取得主管领导批准。工作人员更应保 护消防设备不被破坏。机房管理人员了解消防设备操作原理、掌 握消防应急处理步骤、措施和要领,应定期在专业人员指导下进 行消防演习、消防常识培训、消防设备使用培训。如发现消防安 全隐患,应即时上报并采取必要措施解决。应严格遵守张贴于相 应位置的操作和安全警示及指引。最后离开的机房工作人员,应 检查消防设备的工作状态,关闭将会带来消防隐患的设备,采取 措施保证无人状态下的消防安全。 (四)加强技术交流与培训,提高机房管理认识 机房管理工作并不是我们想象中的那样简单和轻松的。学校 应重视机房管理工作,不断提高机房管理人员的管理水平和技术 能力。作为学校教育教学主要的多媒体机房,机房管理人员是机 房管理工作的主体,应时刻牢记自己的工作职责。正常的教学过 程中,上课老师不可能在教学过程中去一一排除设备故障,遇到 问题时,要求机房管理人员有较强的计算机故障排除与维修能力, 
能够在短时间内解决问题,查找原因并维修好每台电脑,所以上 
机课能否顺利进行,与机房管理者的技术能力是密不可分的。, 
这就要求机房管理人员要多与别人交流学习或走出去进修,努力 
学习计算机知识,学习先进的技术方法和管理模式,用学到的新 
技术充实自己,用先进的管理理念和管理模式武装自己,提高自 
己的业务技能水平和管理水平,为了减轻讲课老师的负担,保证实 
验的顺利进行,另外,提高任课老师处理计算机问题的能力,建立 
相应的计算机机房培训机制也非常有效。现代化信息教学使得很多 
非计算机专业的课程也需要上机学习,这就要求一名非计算机专业 
的老师了解机房情况,理解机房管理需要,主动配合机房管理人员 
工作,积极参加机房技术培训。这样不仅加强了任课教师对信息化 
教学的理解,提高了信息化教学的水平。而且,真正参与了机房管 
理工作。机房作为学校教育教学越来越重要的场所,越来越受到重 
视,在重视设备、财产安全的同时,也应不断强化机房管理的认识, 
机房的管理不仅是机房管理人员、任课教师单方面的工作,它需要 
全校使用机房的教职工、学生共同维护的场所,应当树立机房管理 
共同参与的认识。所有在机房工作学习的人都应自觉维护和遵守正 
常的机房秩序,配合计算机管理人员管理工作的有序开展。在管理 
工作中主动参与的同时,提出合理建议,不断促进管理制度的完善。 
促进计算机机房管理工作的高效、稳定。 
随着信息技术的飞速发展,学校大部分教学形式由原来的教 
室黑板转换成多媒体机房,并且连入Internet网 计算机的教学 
内容、教学方法、教学思想都发生了根本性转变。作为教学和管 
理的重要环节,机房管理和维护也面临着新的问题。对于机房管 
理人员来说,要管理好机房,使其在计算机教学工作中发挥应有 
的作用,实在是一件不容易的事情,这些问题轻则影响教学效果, 
重则造成系统瘫痪,影响正常的教学秩序。所以重视和加强学校 
机房管理水平,对提高教育教学质量,保证正常的教学秩序,都 
有着十分重要的意义。 

(上接第146页) 
代包含三个最新的、最强大的技术用来加速大规模软件开发和测 
试:统一建模语言(UML)及它的许多最新修订版本中的特性, 
UML2.0;功能强大的测试语言TTCN一3和新的构造系统的方法: Model Driven Architecture(模型驱动构架)。这三个新的业界标 准结合成TAu的已经过认可的软件开发平台,形成了一个系统, 一个一流的稳定可靠的工具解决方案。TAU第二代是系统与软件 开发解决方案的一个突破,它把业界从使用了太长时间的手工、 易出错、以代码为中心的方法中释放出来,自然而然地迈向下一 步,一个更加可视化、自动化及可靠的开发方法。 Telelogic TAU/Tester是基于通用测试语言TTCN一3,用于自 动化的系统和集成测试的强大工具。TAU/Tester以现代化的开发 工具为基础,提供高层测试功能,支持整个测试生命周期,加速 自动化测试。TAU/Tester可使用户特别关注于测试的开发,因为 TTCN-3语言是独立于开发语言或测试设备的,且是抽象和可移植 的。 随着计算机技术的不断发展和普及,web测试、手机软件测 试、嵌入式系统测试发展速度迅猛,引起了广大学者的广泛关注。 B/S架构的大行其道,催生了人们对WEB应用测试的研究, WEB应用测试继承了传统测试方法,同时结合WEB应用的特点。 比起任何其他类型的应用,Web应用运行在更多的硬件和软件平 台上,这些平台的性质可在任何时间改变,完全不在Web应用开 发人员的知识或控制之内。随着WEB应用的不断发展,也同样衍 生出一些新的研究方向,如最近沸沸扬扬的云计算测试,针对 SASS应用的测试等。 出现手机软件测试这个研究分支,主要是因为手机在中国应 用特别普遍,使用范围很广,围绕手机所出现的软件种类越来越 丰富,有很多专门从事手机软件的开发公司,于是自然而然出现 一批手机软件测试的工程师。同时由于手机软件的特殊性,如使 用一些专门的操作系统,加上手机内存及CPU相对较小等特点, 
手机软件的测试有其部分特殊技术方法 
随着信息技术和工业领域的不断融合,嵌入式系统的应用越 
来越广泛,可以预言,嵌入式软件将有更为广泛的发展空间。对 
于嵌入式软件的测试也将有着很大的市场需求。嵌入式系统内存 
往往不丰富,开发成本偏高,往往与硬件直接相关系,。这些原因 
造成了嵌入式系统测试的难度,也造成了嵌入式软件的开发和测 
试与别的测试策略有着明显不同。 
随着计算机水平的不断提升,计算机网络盛行的今天,软件 
安全性是人人关心的焦点,因为它直接关系到我们的生活,也成 
为关系到金融、电力、交通、医疗、政府以及军事等各个领域的 
关键问题。尤其在当前黑客肆虐,病毒猖撅的网络环境下,越来 
越多的软件因为自身存在的安全漏洞,造成黑客以及病毒攻击的 
对象,给用户带来严重的安全隐患。软件安全漏洞造成的重大损 
失以及还在不断增长的漏洞数量使人们已经开始深刻认识到软件 
安全的重要性。从上世纪9O年代,信息安全学者、计算机安全研 
究人员就开始了对计算机安全问题的研究,并且成为软件测试技 
术的一个重要分支。 
参考文献: 
…侯俐.软件测试技术m硅谷,2009,7 
『21高加琼欺件测试现状及对策探讨卟内江科技,2009,4 
『31于海澍.计算机软件测试技术概述卟科技资讯,2009,9 
『41王萍.软件测试的重要性卟软件导刊,2009,4

相关文档
最新文档