您好,欢迎访问三七文档
11第二章软件测试概论重点2.1测试的几种观点2.2测试发展历程2.3测试行业现状2.4软件测试职业2.5测试用例2.6测试相关的几个概念2.7测试认识误区222.1测试几种观点测试是指检验或考试,通过一定方法或工具,对被测试对象进行检验,以发现被测试对象具有某种属性或者存在某些问题的过程。33(1)软件测试的广义论与狭义论(2)软件测试的辩证论(3)软件测试的风险论(4)软件测试的经济论(5)软件测试的标准论44一般从以下几个角度理解软件测试。(1)从软件测试目的角度出发。测试的目的是发现软件中的错误,是为了证明软件有错,而不是证明软件无错。对软件需求分析、设计和编码进行检查,保证软件的正确性、完全性和一致性。(2)从软件测试性质角度出发。在软件开发过程中,分析、设计与编码等工作都是“建设性的”,惟独测试是带有“破坏性的”。从一定意义上说,软件开发和软件测试是一个互逆的过程。(3)从软件开发角度出发。软件测试以检查软件产品的内容和功能特性为核心,是软件质量保证的关键步骤,也是成功实现软件开发目标的重要保障。(4)从软件工程角度出发。软件测试是软件工程的一部分,也是软件开发过程中的重要阶段。(5)从软件质量保障角度出发。软件测试作为软件质量保障重要方法之一,也是软件质量保障的关键措施。55测试发展历程早期软件开发过程中,软件规模小,复杂程度低,软件开发过程相当混乱无序,软件测试含义也比较窄,等同于“调试”1957年,软件测试首次作为发现软件缺陷的活动,与调试区分开来。1972年,北卡罗来纳大学举行首届软件测试会议,JohnGoodEnough和SusanGerhart在IEEE上发表《测试数据选择的原理》确定软件测试是软件的一种研究方向。6620世纪80年代早期,软件质量号角吹响。件测试的目的是为了检验软件系统是否满足需求,软件测试不再是一个一次性的,也不只是开发后期的活动,而是与整个开发流程融合成一体。20世纪90年代,软件测试工具开始运用。77测试行业现状软件比较发达的国家,如欧美、印度、以色列等,软件测试行业的产值几乎占了软件行业总产值的1/4。软件测试已经发展成为一个独立的产业,主要体现如下:(1)软件测试在软件公司中占有重要地位,其软件测试在人员配备和资金投入方面占据相当的比重;(2)软件测试理论研究蓬勃发展,引领软件测试理论研究的国际潮流;(3)软件测试市场繁荣,如:MI,Compuware,Rational等,其出品的测试工具占领了国际市场。(4)软件产品的认定,往往需要第三方测试的介入。88国内软件测试与国外软件测试主要存在如下差距:(1)测试的理解认识。国内软件企业普遍存在重开发轻测试,将测试置于从属地位,没有认识到软件项目完成不仅取决于开发人员,更取决于测试人员。国内许多中小型软件企业没有软件测试部门,有些甚至不设置软件测试的岗位。(2)测试过程的管理。国内软件企业普遍存在测试的随意化、简单化,未建立有效、规范的测试管理体系。(3)测试工具的使用。国内软件企业的测试普遍缺乏使用自动化测试工具。(4)测试人员的培养。软件测试领域目前十分缺乏人才,首先是测试人员角色定位不合理,其次是缺乏专家级测试人才。99测试人员素质(1)技术能力(2)编程经验(3)沟通能力(4)严谨、敢于承担责任的品行(5)怀疑精神(6)学习能力1010测试用例IEEE610.12给出测试用例如下定义:(1)测试用例是一组输入(运行前提条件)和为某特定的目标而生成的预期结果及与之相关的测试规程的一个特定的集合,或称为有效地发现软件缺陷的最小测试执行单元。(2)测试用例是一个文档,详细说明测试的输入、期望输出和为一测试项所准备一组的执行条件。其中,(1)给出测试用例的实质,(2)是测试用例的存在方式。1111穷举测试cabBA1212测试用例的作用(1)指导测试的实施(2)规划测试数据的准备(3)评估测试结果的度量基准(4)保证软件可维护性和可复用性(5)分析缺陷的标准1313测试用例设计准则一些设计测试用例时应注意的原则(1)测试用例设计应注重有效性。(2)测试用例设计必须注重经济性。(3)测试用例设计应考虑多重性。(4)测试用例设计应考虑完备性。(5)测试用例的结果具有可判定性。(6)测试结果的可再现性。(7)测试用例应具有侧重性。(8)测试用例效果的连续性1414测试用例的设计步骤软件测试用例的设计应遵循如下4个步骤。步骤一:制定测试用例的策略和思想,在测试计划中描述出来。步骤二:设计测试用例的框架,也就是测试用例的结构。步骤三:细化测试用例结构,具体设计测试用例的内容步骤四:通过测试用例的评审,不断优化测试用例。1515测试用例内容及维护测试用例应该包含以下4个关键元素。(1)被测单元模块初始状态声明,即测试用例的开始状态。(2)被测单元的输入,包含由被测单元读入的任何外部数据值。(3)该测试用例实际测试的代码。(4)测试用例的期望输出结果。1616测试用例设计的误区1.把测试用例设计等同于测试输入数据的设计2.强调测试用例设计得越详细越好3.追求测试用例设计“一步到位”1717测试相关的几个概念排错排错是查找、分析和纠正错误的过程。验证与确认“验证”是捡验软件工作产品是否符合规定的设计要求,而“确认”过程则要证明所开发的最终产品在其预定的环境中能发挥预定的作用,满足客户使用的需求。“验证”是以产品设计规格说明书作为依据的,而“确认”是以客户需求为目标的。1818测试认识误区误区一:使用了测试工具,就是进行了有效的测试误区二:软件中存在太多的无法测试的东西误区三:单元测试和验收测试没有什么区别误区四:软件开发完成后进行软件测试1919误区五:软件发布后发现质量问题,是测试人员的问题误区六:软件测试要求不高,随便找个人就行误区七:软件测试是测试人员的事情,与程序员无关误区八:项目进度吃紧时少做些测试,时间时多做测试误区九:软件测试是低级工作,开发人员才是软件高手2020提问和答疑
本文标题:软件测试-第2章
链接地址:https://www.777doc.com/doc-3876154 .html