软件自动化测试概述课件.ppt
《软件自动化测试概述课件.ppt》由会员分享,可在线阅读,更多相关《软件自动化测试概述课件.ppt(130页珍藏版)》请在三一办公上搜索。
1、第五部分 软件自动化测试概述,1.自动测试的概念2.自动测试生成周期方法学(ATLM)3.ATLM在软件测试领域中的作用4.自动化测试工具介绍5.测试计划、设计与准备6.软件系统的主要测试内容、技术与测试用例模板7.测试的执行8.改错,第五部分 软件自动化测试概述,开发应用程序的软件经理和软件开发人员面临着进度不断缩短,使用的资源最小的挑战;作为少投入多产出的努力,企业希望充分的测试软件,但要求尽可能地快和彻底。,为实现这目标,于是转向了自动测试,许多事情手工测试是难以完成的,如1000个用户的容量测试。,第五部分 软件自动化测试概述,自动测试能力的增长很大程度上起源于快速应用开发(RDA)普
2、及的增长。快速应用开发:是一种软件开发方法学,其重点在于通过增量的方式提供常见的软件构件将开发进度缩短到最少。RDA的目的:保证用户尽早设计和开发每一个构件,以便于细化软件,从而确保它更准确地反映用户的需求。,第五部分 软件自动化测试概述,可知:在这个贯穿每一个软件构件始终,软件频繁变化和增加的环境里,软件需求被迫改变,软件测试呈现出本质上的重复。经过相当数量的新测试以及现有测试脚本的返工,完成每一个新构件。,假定软件应用程序要发生频繁的变化和改变,那么,自动软件测试就成为确保软件每一个构件准确、稳定的一个重要控制机制。,结论:,第五部分 软件自动化测试概述一、自动测试的概念,1.1 自动测试
3、的一般定义:对各种测试活动进行管理,包括测试脚本的开发与执行,以便使用一种自动测试工具来验证测试需求。软件测试自动化主要集中在软件测试流程的管理自动化,和动态测试的自动化,如功能测试自动化和性能测试自动化方面,还有是少部分的静态测试,如代码审查,它们常常比较容易从开发过程剥离出来。,第五部分 软件自动化测试概述一、自动测试的概念,相比于手工测试,测试自动化的优势是明显的。(1)首先自动化测试可以提高测试效率,使测试人员更加专注于新的测试模块的建立和开发,从而提高测试覆盖率;(2)其次,自动化测试使测试资产的管理数字化,并使测试资产得以在整个测试生命周期内得到复用,这个特点在功能测试和回归测试中
4、尤其具有意义;(3)此外,通过测试流程的自动化管理使机构可以通过流程的关键绩效指标(KPI,Key Performance Indicator)来衡量测试过程的有效性,从而实现了从软件质量保证向软件质量管理(SQM,Software Quality Management)的进化。,1.2 自动测试的优点,第五部分 软件自动化测试概述一、自动测试的概念,1.3 说明:(1)RDA的一个主要目标是通过阐述早期构件开发中最有风险的部分以缩短整个开发进度,因而在初始RDA周期开始阶段以及贯穿每个子RDA周期就开展测试活动;测试设计和开发是一项复杂的任务;测试小组没有参加软件规格说明书的编制工作或没有一
5、开始就开展测试工作时,会给项目带来风险。潜在的后果包括:不完全的测试工作、不富裕的测试进度、未对测试进度作计划外的扩充,第五部分 软件自动化测试概述一、自动测试的概念,(2)大量的工作需要自动测试工具的支持 引入自动测试工具可以用更有效、可重复的自动测试环境代替世俗的手工测试;自动测试工具始于捕捉和回放工具;目前,软件自动测试的能力应包括:测试图形用户界面、需求一致性、负载测试、代码覆盖、网络接口、网络通信、内存泄漏等。,第五部分 软件自动化测试概述二、自动测试生成周期方法学(ATLM)简介,自动测试生成周期方法学(ATLM)是一个旨在确保自动测试成功实施的结构化方法学;自动测试生成周期方法反
6、映了现代化的快速应用开发工作的益处,在此过程中,在开发的早期就要求用户参加,并主动参与每一个软件构件的分析、设计、开发和测试工作。采用自动测试生存周期方法以支持涉及自动测试工具的测试工作,自动测试生存周期方法学包括多级过程。,第五部分 软件自动化测试概述二、自动测试生成周期方法学(ATLM)简介,自动测试生成周期方法学包括了一个多阶段的过程,该方法有六个部分组成:自动测试决定 测试工具获取 自动测试引入过程 测试计划、设计与开发 测试执行与管理 测试评审与评估,第五部分 软件自动化测试概述二、自动测试生成周期方法学(ATLM)简介,自动测试生成周期方法学(ATLM),1、自动测试决定,2、测试
7、工具获取,3、自动测试引入过程,4、测试计划设计与开发,5、测试执行与管理,6、测试评审与评估,第五部分 软件自动化测试概述二、自动测试生成周期方法学(ATLM)简介,2.1 自动测试决定 自动测试决定是自动测试生存周期方法学的第一阶段。,旨在帮助测试组管理自动测试期望;正确把握自动测试的潜在好处(如果正确实施的话);提出测试工具建议的方法,这将有助于获得经理的支持。,第五部分 软件自动化测试概述二、自动测试生成周期方法学(ATLM)简介,2.2 测试工具采购 测试工具采购是自动测试生存周期方法学的第2个阶段。指导测试工程师完成整个测试工具评估和选择过程。只要可行,工具应该支持企业的绝大部分测
8、试需求,因此测试工程师需要评审系统工程环境和其他企业需求,能就特定项目上而开展的测试类型做有益的决定。测试工程师在完成评估域的确定以选择测试工具后,测试工程师可与厂商联系以将所选择的工具拿来,而后根据样本标准评估工具。,第五部分 软件自动化测试概述二、自动测试生成周期方法学(ATLM)简介,2.3 自动测试引入阶段 自动测试引入过程是自动测试生存周期方法学的第3个阶段。阐述了成功地向新项目引入自动测试所必须的一些步骤:测试过程分析 测试工具考查,第五部分 软件自动化测试概述二、自动测试生成周期方法学(ATLM)简介,测试过程分析:确保整个测试过程和策略适当,必要时可加以改进,以便成功地引入自动
9、测试。测试工程师定义和收集测试过程度量以确保过程改进。必须定义测试目标、目的和策略,测试过程必须与测试组联系。在此阶段,确定适用的技术环境以及自动工具可支持的各种测试。按照测试需求和计划中的测试活动,对用户参与计划进行评估并对测试组技能进行分析。强调测试组早期参与,支持将需求规范细化成能被充分测试的条款,并强化测试组对应用程序需求与设计的了解。,第五部分 软件自动化测试概述二、自动测试生成周期方法学(ATLM)简介,测试工具考查:此阶段包含几个步骤,在这些步骤内考虑到项目测试需求、可用的测试环境和人力资源、用户环境、平台以及被测的应用的产品特性,测试工程师应该研究将自动测试工具或实用程序引入测
10、试工作是否对项目有好处。应该评审项目进度以确保为测试工具建立和需求体系开发尚留有足够的时间。将潜在的测试工具和实用程序映射到测试需求中;验证测试工具是否与应用和环境兼容。应该研究变通的解决方案以解决兼容性测试期间出现的不兼容问题。,第五部分 软件自动化测试概述二、自动测试生成周期方法学(ATLM)简介,2.4 测试计划、设计和开发 测试计划、设计和开发是自动测试生存周期方法学的第4阶段。测试计划:测试计划是高效测试的基础,测试计划概要说明测试组的任务和职责,测试进度、测试设计活动、测试环境准备、测试风险和偶发事件以及可接受的彻底测试的程度。,第五部分 软件自动化测试概述二、自动测试生成周期方法
11、学(ATLM)简介,在此阶段,测试组确定测试程序生成标准与准则,支持测试环境所需的硬件、软件和网络,测试数据需求,初步测试进度,性能测量需求,控制测试配置和环境的过程以及缺陷跟踪过程与有关的跟踪工具。,第五部分 软件自动化测试概述二、自动测试生成周期方法学(ATLM)简介,(1)测试计划包含结构化测试方法每一初步阶段的结果。它定义任务和责任、项目测试进度、测试计划和设计活动、测试环境准备、测试风险与偶然性、可接受的完全性等级(即测试验收标准)。(2)测试计划附录可能包括测试程序、命名约定说明、测试程序格式标准以及测试程序跟踪矩阵。,第五部分 软件自动化测试概述二、自动测试生成周期方法学(ATL
12、M)简介,(3)建立测试环境是测试计划的一部分。因为材料采购可能需要很长的交付周期,所以测试组必须计划、跟踪和管理测试环境建立活动。它必须安排和监控环境建立活动,安装测试环境硬件、软件和网络资源,集成和安装测试环境资源,获取和细化数据库并制订环境建立脚本和测试床脚本。,第五部分 软件自动化测试概述二、自动测试生成周期方法学(ATLM)简介,测试设计:测试设计部分论述需要实施的测试数目、测试方式(如路径或功能)、必须执行的测试条件,以及需要建立和遵循的测试设计标准。测试开发:创建具有可维护性、可重用性、简单性和健壮性的测试程序。,为了使自动测试可重用、可重复和可维护,必须确定和遵循测试开发标准。
13、,第五部分 软件自动化测试概述二、自动测试生成周期方法学(ATLM)简介,2.5 测试执行与管理,最后,测试组应完成回归测试和其他全部测试并闭环跟踪问题。,应该支持开发人员了解系统和软件的问题以及问题重现的工作。,应该通过系统问题报告记录系统的问题。,测试组也应该进行测试执行结果的评估活动以免出现假肯定或假否定。,测试组必须根据测试程序执行进度执行测试脚本并推敲集成的测试脚本。,第五部分 软件自动化测试概述二、自动测试生成周期方法学(ATLM)简介,2.6 测试活动评审与评估,测试执行完毕后,测试组必须对测试工作情况进行评审,以决定在下一个测试阶段或者下一个工程中那些需要改进。,测试组在整个测
14、试过程中需要收集许多测试度量,度量标准是评审的依据,评审的具体做法是对各个度量进行评估。,测试度量的评估应该检查原来计划的测试活动的开支和规模情况。,第五部分 软件自动化测试概述二、自动测试生成周期方法学(ATLM)简介,测试活动评审与评估应在整个测试生存周期内进行,以确保连续的改进活动。在整个测试生存周期和后续测试执行活动中,必须评估各种度量,并且必须进行最终评审和评估以确保过程改进。,第五部分 软件自动化测试概述三、(ATLM)在软件测试领域中的应用,3.1 自动测试生存周期方法学与系统开发生存周期的关系 为了使测试活动收效最大,必须在系统生存周期期间应用自动测试生存周期方法学。,第五部分
15、 软件自动化测试概述三、(ATLM)在软件测试领域中的应用,自动测试生存周期方法学与系统开发生存周期的关系,第五部分 软件自动化测试概述三、(ATLM)在软件测试领域中的应用,3.2 测试成熟度模型(TMM)通过自动软件测试成熟度而增强 测试成熟度模型是由Illinois技术学院开发的,它包含一系列等级,该模型在每一成熟度等级上都列出了一系列建议做法。实施自动测试生存周期方法学的测试组将发展到测试成熟度模型的第4级和第5级。,第五部分 软件自动化测试概述三、(ATLM)在软件测试领域中的应用,1、能力成熟度模型与测试成熟度模型之间的相关性 测试成熟度模型是作为能力成熟度模型的补充而开发出来的。
16、其设想是,对评估和改进其测试能力感兴趣的企业将乐于参与一般软件过程改进。为了直接对应方便,两种成熟度模型上的等级将从逻辑上简化这两种并行的过程改进趋势。不过,这种并行性并未完全表示出来,因为能力成熟度模型和测试成熟度模型等级结构都是基于它们所体现的过程的单一历史成熟度增长模式。,第五部分 软件自动化测试概述三、(ATLM)在软件测试领域中的应用,建造的过程是整个软件开发过程的子过程,因此,其成熟度增长需要来自与一般过程有关联的关键过程区域(KPA)的支持。由于这个原因,任何想在测试成熟度模型实施期间改进其测试过程的企业都应该通过应用能力成熟度模型准则首先改进本企业的整个软件开发过程。,第五部分
17、 软件自动化测试概述三、(ATLM)在软件测试领域中的应用,(1)一个试图达到测试成熟度模型特定等级的企业必须至少达到同样的能力成熟度模型等级。在许多情况下,一个给定的测试成熟度模型等级需要来自与之对应的能力成熟度模型(CMM)等级及其下面的等级过程上的关键过程区域的支持。,第五部分 软件自动化测试概述三、(ATLM)在软件测试领域中的应用,(2)测试成熟度模型非常适合于自动软件测试,因为有效的软件验证与确认产生于良好计划、执行、管理和监控的开发程序。良好的软件测试活动不可能是独立的,它必须是软件开发过程的一个整体部分。,(3)测试组必须根据公司的环境决定最适合企业软件应用或产品的测试成熟度模
18、型成熟度等级。测试等级应该与设计复杂程度相称,测试工作不应比开发工作更复杂。,测试成熟度和自动软件测试成熟度1-5级,表的左侧一栏显示了测试成熟度1-5级,而右侧一栏显示了对应的自动软件测试1-5级。,第五部分 软件自动化测试概述三、(ATLM)在软件测试领域中的应用,第五部分 软件自动化测试概述四、自动化测试工具的介绍,不同的测试生存周期阶段有不同的测试工具;选定的测试工具应该适合企业全部系统工程环境,从而最大限度的发挥工具的作用;要确定测试工具的选择标准,要考虑测试工具的投入费用,要进行收益估算。,第五部分 软件自动化测试概述四、自动化测试工具的介绍,4.1 测试生存周期工具,业务分析阶段
19、,业务建模工具:产生过程模型、组织模型、数据模型,配置管理工具:便于建立重要数据存储库基线,缺陷跟踪工具:管理系统生存周期中出现的缺陷,技术评审管理:便于交流并使技术评审/审查过程自动化,文档生成器:自动生成文档,第五部分 软件自动化测试概述四、自动化测试工具的介绍,需求定义阶段,需求管理工具:管理和组织需求;便于测试过程设计和测试进展报告,需求验证器:验证语法、语义和可测试性,使用用例生成器:便于生成使用用例,第五部分 软件自动化测试概述四、自动化测试工具的介绍,分析定义阶段,数据库设计工具:为开发第二代企业客户器/服务器系统提供解决方案,应用设计工具:定义软件结构;便于面向对象的分析、建模
20、、设计和构造,结构图、流程图和时序图:帮助管理过程,测试程序生成器:从需求或数据和对象模型或因果图中生成程序,第五部分 软件自动化测试概述四、自动化测试工具的介绍,编程阶段,语法检查/调试器:语法检查和调试;通常与内置的编程语言编译器一起提供,内存泄漏和运行错误检测工具:检测运行时出现的错误和内存泄漏,源代码测试工具:验证可维护性、可移植性、复杂性、圈复杂度和标准依从性,静态和动态分析器:描述代码质量和结构,各种代码实现工具:其中包括代码生成(取决于具体的应用),单元测试工具:使单元测试过程自动化,第五部分 软件自动化测试概述四、自动化测试工具的介绍,度量工具,代码(测试)覆盖分析器或代码插桩
21、:识别未测试过的代码,适用于动态测试,度量报告:阅读源代码并显示度量信息,易使用性度量:提供用户剖面、任务分析、原型和用户走查,第五部分 软件自动化测试概述四、自动化测试工具的介绍,其他生存周期支撑工具,测试数据生成器:生成测试数据,原型工具:使用高级编程语言生成应用原型,桩模块生成工具:当所有模块还不存在时,便于生成桩模块,但部分代码需要作为独立单元来测试,文件比较实用程序:便于查找文件之间的差异,仿真工具:应用仿真,尤其是其他任务的仿真,以测量其规模,第五部分 软件自动化测试概述四、自动化测试工具的介绍,测试阶段,测试管理工具:便于测试管理,网络测试工具:便于对整个网络性能进行监控、测量、
22、测试和诊断,GUI测试工具(捕捉/回放):便于自动进行GUI测试,非GUI测试驱动器:便于对不包含GUI的产品自动执行测试,负载/性能测试工具:便于进行负载/性能和压力测试,环境测试工具:各种测试环境下的测试工具,这些环境包括MVS、UNIX、X-WINDOWS以及WWW,第五部分 软件自动化测试概述四、自动化测试工具的介绍,4.2 具体工具介绍1、MercuryInteractive公司(简称MI)自动化测试工具2、IBM公司自动化测试工具3、赛格瑞软件公司(Segue)自动化测试工具4、Compuware公司自动化测试工具5、Telelogic公司自动化测试工具,1、MercuryInte
23、ractive公司,Mercury 是全球业务优化科技(BTO)软件和服务的领导者。95%的财富百强公司都在使用 Mercury 各种曾获奖的解决方案,其中包括自动化软件质量管理、性能测试、应用管理和 IT 管控,从而在业务中实现了最大的 IT 价值。客户出于两个原因购买其产品:第一,管理其 IT 管控,以便确保使用正确的流程和正确的人员按照正确的优先级运行。第二,优化其现有应用程序的质量、性能和可用性,以便确保实现业务预期的价值。独特、灵活、以客户为中心的交付模型可帮助企业以相应的价格向每个客户都提供相应的解决方案;经过实践检验过的远见、执行能力以及雄厚的财务和开发资源可确保这些解决方案将取
24、得具有重要意义的业务价值。Mercury 是一家拥有卓越领导地位的强大公司。自 1989 年 Mercury 成立以来,公司在市场份额、收入以及向客户提供的价值等方面持续稳步增长。,主要产品:1、LoadRuanner2、WinRunner3、TestDirector4、QTP,WinRunner功能测试工具,WinRunner 是基于MS Windows的功能测试工具。由于C/S结构的软件功能增加越来越快,QA部门测试难度越来越大,手工测试已经跟不上这种发展趋势。WR可以帮助你自动处理从测试开发到测试执行的整个过程。你可以创建可修改和可复用的测试脚本,而不用担心软件功能模块的变更。你只需要在
25、下班后让计算机自动执行这些脚本,就能轻而易举的发现软件中的错误,从而确保软件的质量。WinRunner:强大的企业级自动化测试工具 MercuryInteractive公司的WinRunner是一种企业级的功能测试工具,用于检测应用程序是否能够达到预期的功能及正常运行。通过自动录制、检测和回放用户的应用操作,WinRunner能够有效地帮助测试人员对复杂的企业级应用的不同发布版进行测试,提高测试人员的工作效率和质量,确保跨平台的、复杂的企业级应用无故障发布及长期稳定运行。,LoadRunner性能测试工具,工业标准级负载测试工具LoadRunner是一种预测系统行为和性能的负载测试工具。通过以
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件 自动化 测试 概述 课件
链接地址:https://www.31ppt.com/p-3727822.html