软件测试详述概念.ppt
《软件测试详述概念.ppt》由会员分享,可在线阅读,更多相关《软件测试详述概念.ppt(51页珍藏版)》请在三一办公上搜索。
1、软件测试,由安博测试空间技术中心http:/,学术交流第十五期,软件测试,软件测试概述软件测试的目的和原则软件测试的对象软件测试的分类软件测试技术好的测试工程师应具备的素质几个好的测试站点,软件测试概述,软件危机曾经是软件界甚至整个计算机界最热门的话题。为了解决这场危机,软件从业人员、专家和学者做出了大量的努力。现在人们已经逐步认识到所谓的软件危机实际上仅是一种状况,那就是软件中有错误,正是这些错误导致了软件开发在成本、进度和质量上的失控。有错是软件的属性,而且是无法改变的,因为软件是由人来完成的,所有由人做的工作都不会是完美无缺的。问题在于我们如何去避免错误的产生和消除已经产生的错误,使程序
2、中的错误密度达到尽可能低的程度。,软件测试概述,近日,国内知名的人才服务机构智联招聘发布了2006年度软件测试行业专项调查报告(国内首次针对软件测试行业展开的专项调查报告。)报告指出,目前软件测试的重要性已经得到了越来越多的企业的关注。数据显示,有68.2%的受调查企业认为软件测试非常重要,必须要设立专门的测试部门,并将其视为与开发环节同等重要的地位。另有31.8%的企业选择了比较重要,而认为软件测试只起到“一定作用”或“可有可无”的比例为0。尽管几乎所有的企业认识到软件测试的重要性,但就目前软件测试和开发人员的比例来看,软件测试人员在公司所占比例仍然极不合理。调查数据显示,被调查企业中测试人
3、员与开发人员比例为15的企业高达36.4%,比例为12的企业占31.8%,比例为11及以上的企业仅占31.7%。,软件测试概述,一旦将质量问题转移给维护就会忽略开发过程中需求分析设计编码阶段可能产生的Bug。这些Bug会逐渐放大,最后扩散到整个系统中,不仅很难寻找到,而且修复代价更高。“也就是说,你在销售软件时获取的利润,会在之后的维护中逐渐被消耗殆尽。”大型企业的软件测试经费,一般会占到整个项目费用的 30%-40%。由此可见软件测试的重要性。无论是ISO9000的质量体系认证,还是CMU/SEI的CMM认证,其中均涉及到测试,ISO9000中19个要素,其中有一个就是“检验和试验”,对于软
4、件来说就是测试;CMM中18个过程关键域,其中有一个质量保证过程关键域,就是对过程的监视和测量。,什么是软件测试,软件测试是为了发现错误而执行程序的过程。或者说,软件测试是根据软件开发各阶段的规格说明和程序的内部结构而精心设计一批测试用例(即输入数据及其预期的输出结果),并利用这些测试用例去运行程序,以发现程序错误的过程。简单地说,软件测试是“探测”,在“探测”中发现软件的毛病。,软件测试的目的和原则,软件测试的目的(三大纪律):1、测试是程序的执行过程,目的在于发现错误;2、一个好的测试用例在于发现至今未发现的错误;3、一个成功的测试是发现了至尽未发现的错误的测试;,-测试的“三大纪律,八项
5、注意”,软件测试的目的和原则,软件测试的原则(八项注意):1 应当把“尽早和不断地测试”作为开发者的座右铭。2 程序员应该避免检查自己的程序,测试工作应该由独立的专业的软件测试人员或机构来完成。3 在设计测试用例时,应当包括合理的输入条件和不合理的输入条件。4 充分注意测试中的群集现象。,软件测试的目的和原则,5 测试用例应由测试输入数据和与之对应的预期输出结果这两部分组成。6 严格执行测试计划,排除测试的随意性。7 应当对每一个测试结果做全面检查。8 妥善保存测试计划,测试用例,出错统计和最终分析报告,为维护提供方便。,软件测试的对象,软件测试并不等于程序测试。软件测试应贯穿于软件定义与开发
6、的整个期间。上图表明:测试工作是连续不断地在软件开发过程中进行的。需求分析、概要设计、详细设计以及程序编码等各阶段所得到的文档,包括需求规格说明、概要设计规格说明、详细设计规格说明以及源程序,都应成为软件测试的对象。,软件测试的分类,软件测试是一项复杂的系统工程,从不同的角度考虑可以有不同的划分方法,对测试进行分类是为了更好的明确测试的过程,了解测试究竟要完成哪些工作,尽量做到全面测试。1、按开发阶段划分:单元测试 集成测试 系统测试 验收测试 回归测试 2、按照测试实施组织划分:开发方测试(a测试)、用户测试(测试)、第三方测试。3、按测试技术划分:白盒测试 黑盒测试 灰盒测试,软件测试技术
7、,软件测试模型软件测试过程错误分级测试用例设计软件测试自动化,软件测试技术,软件测试模型,V模型示意图,软件测试技术,软件测试模型,W模型示意图,软件测试技术,其他模型 除上述常见模型外,业界还流传着其他几种模型,例如H模型、X模型、前置测试模型等。X模型提出针对单独的程序片段进行相互分离的编码和测试,此后通过频繁的交接,通过集成最终合成为可执行的程序。前置测试模型体现了开发与测试的结合,要求对每一个交付内容进行测试。这些模型都针对其他模型的缺点提出了一些修正意见,但本身也可能存在一些不周到的地方。所以在测试过程管理中,正确选取过程模型是一个关键问题。,软件测试模型,软件测试技术,软件测试过程
8、,软件测试的阶段组成,测试计划,测试设计,测试开发,测试执行,测试评估,软件测试过程,测试计划,测试计划的目标,收集并组织测试计划信息将软件细化为可检验的测试需求建立测试计划,用户需求,测试需求,定义,根据用户需求定义并完善测试需求,以作为整个测试的标准,测试计划:定义测试需求,软件测试过程,测试计划,考虑测试内容,软件测试过程,测试计划,系统功能用户界面系统性能加载测试强化测试容量测试配置测试安装测试,测试设计的目标,软件测试过程,测试设计,定义自动测试过程选择适当的测试用例组织测试过程信息,并传递给测试开发人员,软件测试过程,测试设计,测试设计,定义,用户需求,测试需求,选择,决定,测试过
9、程,测试用例,测试开发目标,软件测试过程,测试开发,建立可重用的自动测试维护测试对于测试需求的可跟踪性,测试开发技术:编程,软件测试过程,测试开发,优势:具有较大的灵活性,缺点:编程过程复杂,测试开发技术:录制,优势:操作简单、快捷,缺点:灵活性较差,软件测试过程,测试开发,测试开发技术,录 制,脚本生成自动化,并可根据需要修改,自动生成,脚本,软件测试过程,测试开发,测试执行的目标,执行测试检查测试结果研究并组织测试结果以便评估维护缺陷记录,软件测试过程,测试执行,软件测试技术,测试执行过程,执行测试时的控制流程图,测试评估的目标,软件测试技术,测试评估,提交量化的测试覆盖域及缺陷跟踪报告评
10、估软件质量,软件测试技术,测试评估,测试评估的内容:覆盖域,哪些测试需求经过了测试哪些需求通过了测试我们的工作进度及效率如何,软件测试技术,测试评估,测试评估的内容:缺陷,我们发现了哪些缺陷我们解决了哪些缺陷遗留缺陷对软件有何影响,错误分级严重性,我们一般把发现的错误(Bug)/缺陷(Defect)按严重性分为4类:1.严重:系统崩溃或挂起等导致系统不能继续运行;2.主要:使系统不稳定、或破坏数据、或产生错误结果,而且是常规操作中经常发生或非常规操作中不可避免的主要问题;3.次要:系统性能或响应时间变慢、产生错误的中间结果但不影响最终结果等影响有限的问题,如:显示不正确但输出正确;4.轻微:界
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件 测试 详述 概念
链接地址:https://www.31ppt.com/p-6611004.html