欢迎来到天天文库
浏览记录
ID:39724445
大小:214.19 KB
页数:78页
时间:2019-07-10
《《软件测试》PPT课件(I)》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第9章软件测试软件测试的目的:第一,是确认软件的质量,一方面是确认软件做了你所期望的事情(Dotherightthing),另一方面是确认软件以正确的方式来做了这个事件(Doitright)。第二,是提供信息,比如提供给开发人员或程序经理的反馈信息,为风险评估所准备的信息。第三,软件测试不仅是在测试软件产品的本身,而且还包括软件开发的过程。9.1软件测试概述软件就是为了在计算机上实现某些任务而产生的指令代码和数据集合,当然这也包括了所有与指令代码和数据集合相联系的表示方法。换句话说,软件不但包含了程
2、序源代码和数据文件,还包含了所有在需求、分析设计等阶段产生的模型的表示方法(包括大量的标准输出工件、数据设计模型、设计设计模型、远景规划、风险列表等等)。“因为认识的不成熟,所以工作范围局限在编码上。”“测试”关键词在ISO9000中是这样被定义的:测试是一种基于机器的,对代码执行测试,确认测试的活动。1983年,IEEE(国际电子电气工程师协会)提出的软件工程标准术语中给软件测试下的定义是:使用人工或自动手段来运行或测定某个系统的过程,其目的在于检验它是否满足规定的需求或是弄清预期结果与实际结果之
3、间的差别。该定义包含了两方面的含义:(1)是否满足规定的需求。(2)是否有差别。软件测试和修复扩展后的测试定义是:测试是发现并指出软件(包含软件经过建模、需求、设计等阶段所产生的大量输出工件)中存在缺陷的过程,这个过程指明和标注问题存在的正确位置,详细记录导致问题出现的操作步骤,及时储存当时的错误状态,以上组合在一起便于测试后问题能够准确再现。(1)发现问题。(2)记录问题。(3)跟踪问题。(4)再现问题。(5)历史数据。关于软件测试的一些常用术语(1)测试(2)测试用例(3)测试步骤软件测试的目的
4、(1)验证软件需求和功能是否得到完整实现。(2)验证软件是否可以发布使用。(3)发现软件系统的缺陷、错误及不足。(4)获取软件产品的质量信息。(5)预防下一版本可能出现的问题。(6)预防用户使用软件时可能出现的问题。(7)提前发现开发过程中的问题和风险。(8)提供可以用以分析的测试结果数据。软件测试涉及的关键问题(1)测试的执行。(2)测试内容。(3)测试时间。(4)测试过程。(5)测试停止的标准。软件测试的原则和特点根据软件的测试目的,在测试过程中需要遵循的测试原则为:(1)应当尽早地、不断地进行
5、软件测试。(2)测试用例应当包含合理的和不合理的输入数据。(3)测试用例应由测试数据和与之对应的预期结果两部分组成。(4)软件中的程序应被多方测试。(5)错误数比较多的程序应重点测试。(6)严格执行测试计划。(7)需要对每个测试结果做全面的检查。(8)妥善保存测试的各项数据资料。软件测试的特点(1)完全测试程序是不可能的。(2)软件测试是有风险的行为。(3)测试无法显示潜在的软件缺陷。(4)发现的缺陷越多,说明软件缺陷越多。软件测试的重要性软件所带来的悲剧p226~229测试是软件开发的重要环节之一
6、在GJ.Myers的经典著作《软件测试技巧》中给出了测试的定义:“程序测试是为了发现错误而执行程序的过程。”测试的目的是发现程序中的错误,是为了证明程序有错,而不是证明程序无错。在软件开发过程中,分析、设计与编码等工作都是建设性的,唯独测试似乎带有“破坏性”。测试可视为分析、设计和编码3个阶段的“最终复审”,在软件质量保证中具有重要地位。为了确保软件的质量,较理想的做法应该是对软件的开发过程,按软件工程各阶段形成的结果,分别进行严格的审查。软件测试在软件生命周期中占据重要的地位,在传统的瀑布模型中,
7、软件测试学仅处于运行维护阶段之前,是软件产品交付用户使用之前保证软件质量的重要手段。近来,软件工程界趋向于一种新的观点,即认为软件生命周期每一阶段中都应包含测试,从而检测本阶段的成果是否接近预期的目标,尽可能早地发现错误并加以修正,如果不在早期阶段进行测试,错误的延时扩散常常会导致最后成品测试的巨大困难。事实上,对于软件来讲,不论采用什么技术和什么方法,软件中仍然会有错。采用新的语言、先进的开发方式、完善的开发过程,可以减少错误的引入,但是不可能完全杜绝软件中的错误,这些引入的错误需要测试来找出,软
8、件中的错误密度也需要测试来进行估计。测试是所有工程学科的基本组成单元,是软件开发的重要组成部分。自有程序设计的那天起测试就一直伴随着。9.2软件测试的分类及测试内容按是否需要执行被测试软件的角度来分:①静态测试②动态测试从测试是否针对系统的内部结构和具体实现算法的角度来分:①白盒测试②黑盒测试③灰盒测试按测试范围角度来分:①单元测试②组件测试③集成测试④系统测试⑤验收测试⑥安装测试按测试对象来分:①单元测试②组件测试③模块测试④程序测试⑤系统测试⑥文档测试。按测试过程
此文档下载收益归作者所有