西门子KTP1000显示屏
越受到重视。测试工具的发展,大大提高了软件测试的自动化程度。到了2002年,Rich和Stefan在《系统的软件测试》一书中对软件测试做了定义:“测试是为了度量和提高被测软件的质量,对测试软件进行工程设计、实施和维护的整个生命周期过程”。这些经典论著对软件测试研究的理论化和体系化产生了巨大的影响。
近30年来,随着计算机和软件技术的飞速发展,对软件测试技术的研究也取得了很大突破。1982年在美国卡来纳大学召开了首次软件测试技术会议之后,该学术会议每2年召开一次。国际上还有软件可靠性会议,从会议的规模以及论文的数量和质量上看,从事软件测试的人员在大幅度增加,对软件测试技术的研究也越来越深入。
可以预测,在未来的时间里,软件测试技术与软件测试行业将得到更快的发展,软件测试理论和技术将更加完善,测试效率将逐渐提高,更实用的软件测试工具将大量出现,测试工程师将得到充分的尊重,设置独立的软件测试部门将成为越来越多的软件公司的共识。随着软件在社会各领域中的作用越来越重要,测试任务越来越繁重,软件规模越来越大,功能越来越复杂,如何进行充分而有效的测试仍然是软件工程领域需要积极探索的问题。随着安全问题的日益突出,如何对信息系统的安全性进行有效的测试与评估,也将成为亟待解决的难题计算机领域的专业是测试工程师应该必备的一项素质,是做好测试工作的前提条件。一名要想获得更大发展空间或者持久竞争力的测试工程师,则计算机专业技能是必不可少的。计算机专业技能主要包
应该是测试人员的必备知识之一,在微软,很多测试人员都拥有多年的开发经验。测试人员要想得到较好的职业发展,必须能够编写程序。只有能编写程序,才可以胜任诸如单元测试、集成测试、性能测试等难度较大的测试工作。
网络、操作系统、数据库、中间件等知识
由于测试中经常需要配置、调试各种测试环境,在性能测试中还要对各种系统平台进行分析与调优,测试人员需要掌握更多网络、操作系统、数据库等知识。
(3)测试专业知识
测试专业知识很多,测试专业知识涉及的范围很广:既包括黑盒测试、白盒测试、测试用例设计等基础测试技术,也包括单元测试、功能测试、集成测试、系统测试、性能测试等测试方法,还包括基础的测试流程管理、缺陷管理、自动化测试技术等知识。
(4)用户知识
测试应该始终站在用户、使用者的角度考虑问题,而不应该站在开发人员、实现者的角度考虑问题。要求测试人员必须掌握用户的心理模型,用户的操作习惯等。如果缺乏了这方面的知识或者是思维方式的偏离,则很难发现用户体验、界面交互、易用性、可用性方面的问题,而这类看似很小的Bug,却是用户非常关注的问题,甚至是须能够同测试涉及到的所有人进行沟通,具有与技术(开发者)和非技术人员(客户、管理人员等)的交流能软件测试计划是描述测试目的、范围、方法和软件测试的重点等内容的文档。软件测试计划作为软件项目计划的子计划,在项目启动初期是必须规划的。在越来越多公司
发中,软件质量日益受到重视,测试过程也从一个相对独立的步骤越来越紧密嵌套在软件整个生命周期中,这样,如何规划整个项目周期的测试工作,如何将测试工作上升到测试管理的高度都依赖于测试计划的制定,测试计划也成为测试工作的赖于展开的基础。《IEEE软件测试文档标准829—1998》将测试计划定义为:“一个叙述了预定的测试活动的范围、途径、资源及进度安排的文档。它确认了测试项、被测特征、测试任务、人员安排,以及任何偶发事件的风险。”软件测试计划是指导测试过程的纲领性文件,软件测试计划需要描述所有要完成的测试工作,包括被测试项目的背景、测试目标、测试范围、测试方式、所需资源、进度安排、测试组织以及与测试有关的风险等方面内容。借助软件测试计划,参与测试的项目成员,尤其是测试管理人员,可以明确测试任务和测试方法,保持测试实施过程的顺畅沟通,跟踪和控制测试进度,应对测试过程中的各种变更。等方面达成一定的共识,这样使得测试人员之间沟通更加顺利,也可以确保测试人员在沟通上不会产生偏差。3.及早发现和修正软件规格说明书的问题
在编写软件测试计划的初期,要了解软件各个部分的规格及要求,这样就需要仔细地阅读、理解规格说明书。在这个过程中,可能会发现其中出现的问题,例如规格说明书中的论述前后矛盾、描述不完整等。规格说明书中的缺陷越早修正,对软件开发的益处越大,因为规格说明书从一开始就是软件开发工作的依据。4.使软件测试工作更易于管理
制订测试计划的另一个目的,就是为了使整个软件测试工作系统化,这样可以使软件测试工作更易于