《软件测试技术 》课件第5章软件功能测试.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《《软件测试技术 》课件第5章软件功能测试.ppt》由用户(momomo)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件测试技术 软件测试技术 课件第5章软件功能测试 软件 测试 技术 课件 功能
- 资源描述:
-
1、第5章 软件功能测试5.1 软件功能测试需求5.2 软件功能测试过程5.3 功能测试自动化5.4 功能测试自动化工具UFT5.5 功能测试自动化实做12功能测试:功能测试:功能测试(Functional Testing),也称之为行为测试(Behavioral Testing),是根据产品特性、操作描述和用户方案,测试一个产品的特性和可操作行为,以确定它们满足设计需求。功能测试是为了确保程序以期望的方式运行而按功能要求对软件进行的测试,通过对一个系统的所有的特性和功能都进行测试确保符合需求和规范。3功能测试的目的和意义:功能测试的目的和意义:功能测试是为了发现以下几类错误:是否有不正确或遗漏了
2、的功能?功能实现是否满足用户需求和设计的隐藏需求?能否正确的输入输出?功能的交互性如何?5.1软件功能测试需求4软件需求分析:软件需求分析:软件需求分析是一个项目的开端,也是项目实施最重要的关键点。据有关的机构分析结果表明,我们设计的软件产品存在不完整性、不正确性等问题80以上是需求分析错误所导致的,而且由于需求分析错误造成根本性的功能问题尤为突出。因此,一个项目的成功软件需求分析是关键的一步。5软件测试需求:软件测试需求:测试需求这个名词业界并没有权威的定义,多数的意见认为测试需求定义测试的范围(即主要解决测什么、及测到什么程度的问题),这样说还是太过泛泛,换个说法,测试人员依据初期功能需求
3、,评估需要测试的功能点都有什么,每个功能点需要什么类型的测试,每个功能点测试到什么程度算是通过,这样初步评估出了测试的规模、复杂程度和风险,同时可以初步预估出哪个环节需要研发同时提供测试接口。5.1软件功能测试需求6软件测试需求的特性:软件测试需求的特性:(1)制定的测试需求项必须是可核实的。(2)测试需求应指明满足需求的正常前置条件,同时也要指明不满足需求时的出错条件;(3)测试需求不涉及具体的测试数据,测试数据设计是测试设计环节应解决的内容。5.1软件功能测试需求7软件测试需求分析的流程:软件测试需求分析的流程:5.1软件功能测试需求图5-1测试需求分析流程8软件功能测试过程:软件功能测试
4、过程:5.2软件功能测试过程图5-2 功能测试过程9功能测试前期准备:功能测试前期准备:测试软件之前,首先要搭建用来运行软件的环境,即测试环境。软件测试环境就是软件运行的平台,包括硬件、软件、网络、数据和测试工具五个方面。搭建软件测试环境要注意尽量模拟用户的真实使用环境,测试环境中尽量不要安装其它与被测软件无关的软件,测试环境要尽量与开发环境独立,也就是说在被测环境中不应该有开发环境。5.2软件功能测试过程10功能测试计划制定:功能测试计划制定:计划工作的目标要从建立文档转移到建立过程,从编写测试计划转移到计划测试任务,重点不是编写而是计划。其格式可由测试组自己来定义,但内容上应包括范围、时间
5、和成本方面的内容,由于不确定的因素较多,通常时间和成本要略大于实际的估计值。功能测试计划基本包含的内容有:测试团队人员及分工。测试环境配置。测试内容。测试结束标志。5.2软件功能测试过程11测试设计与开发:测试设计与开发:测试设计相当于测试的详细说明,包含以下三个方面的内容:(1)测试设计说明:目的是组织和描述具体需要的测试。(2)测试用例说明:指为特定的目的而设计的一组测试输入、执行条件和预期的结果。(3)测试规程说明:指为实现相关测试设计而操作软件系统和具体测试用例的全部步骤,并详细定义测试用例的每一步操作。5.2软件功能测试过程12测试执行与缺陷跟踪:测试执行与缺陷跟踪:在完成测试设计工
6、作之后,所要进行的就是测试的执行过程。在测试执行中发现的与测试用例预期结果不不符符的即认定为软件缺陷。在工程实践中多采用缺陷跟踪系统来对缺陷进行跟踪和管理。5.2软件功能测试过程13自动化测试:自动化测试:通过工具记录或编写脚本的方式模拟手工测试的过程,通过回放或运行脚本来执行测试用例,从而代替人代替人工对系统的功能进行验证工对系统的功能进行验证,这就是功能测试的自动化测试。5.3功能测试自动化14手工测试和自动化测试:手工测试和自动化测试:自动化测试效率高,精确度也高;但是人具有很强的逻辑判断能力,而工具相对机械、缺乏思维能力。所以都不可相互替代,必须结合使用。自动化测试的核心工作是自动化脚
7、本的设计自动化脚本的设计。5.3功能测试自动化15手工测试和自动化测试的选择:手工测试和自动化测试的选择:不是所有的测试项目都适合开展自动化测试。自动化测试只有在多次运行多次运行后,才能体现出自动化的优势,只有不断地运行自动化测试,才能有效预防缺陷,减轻测试人员的工作量。如果一个项目是短期的,并且是一次性的开发项目,则不适宜开展自动化测试。另外,也不适宜在一个进度非常紧迫的项目中开展自动化测试。5.3功能测试自动化16功能测试自动化工具简介:功能测试自动化工具简介:自动化功能测试工具可基于GUI层面进行测试,也可以基于代码层面进行测试。只要实现了自动化执行测试用例,自动化地检查测试数据的测试工
8、具,可以替代人工进行测试步骤的执行,从而验证应用程序是否满足特定功能的测试工具,都可称为自动化功能测试工具。5.3功能测试自动化17功能测试自动化工具举例:功能测试自动化工具举例:QTP/UFT:全名HP QuickTest Professional software。WinRunner:Mercury Interactive公司的WinRunner是一种企业级的功能测试工具,用于检测应用程序是否能够达到预期的功能及正常运行。另外还有:Rational Robot、AdventNet Qengine、SilkTest、QA Run、Test Partner、UIAutomation和 Sele
9、nium等。5.3功能测试自动化18UFTUFT简介:简介:HP 的UFT是功能测试自动化工具中的佼佼者,极容易上手和使用,测试流程和思路也很清晰,拥有先进的关键字驱动测试能力和强大的测试脚本开发能力,另外 还 可 以 和 H P 的 一 些 其 他 自 动 化 工 具,比 如Loadrunner、QC/ALM有机地结合起来使用,堪称完美。5.4功能测试自动化工具UFT19UFTUFT简介简介:(续:(续)UFT以VBScript为内嵌语言,支持功能测试和回归测试自动化。UFT不仅支持测试人员通过专业的捕获技术直接从应用程序屏幕中捕获流程来构建测试用例,还支持测试人员通过集成的脚本和调试环境访
10、问内在测试对象的方法和属性。UFT包括创建测试、检验数据、增强测试、运行测试脚本、分析测试结果和维护测试等六个基本的功能。5.4功能测试自动化工具UFT20UFTUFT的安装:的安装:UFT支持在广泛的操作系统平台和测试环境下安装,并且只需通过有限的设置就可以开始使用。HP的UFT支持30天的试用,所以从HP的官方网站可以直接获取UFT的安装包,在获取到安装包后就可以运行安装包中的安装程序了。5.4功能测试自动化工具UFT21UFTUFT的插件管理:的插件管理:在默认的情况下,UFT支持对标准的Windows应用程序、Web应用程序和ActiveX控件等三种类型的应用程序进行自动化测试。在相关
11、插件的支持下,UFT还可以进行Java应用程序、Delphi应用程序、.NET应用程序、Oracle应用程序等等共计13种类型应用程序的自动化测试。5.4功能测试自动化工具UFT22UFTUFT的插件管理的插件管理:(续:(续)UFT默认会安装一些插件,比如ActiveX、VB和Web插件,测试人员可以根据自己的测试项目中,应用程序所采用的开发语言和控件的类型来选择相应的插件进行安装。插件管理界面显示已安装的插件,选择插件是为了能够成功识别对应插件的测试对象控件为了能够成功识别对应插件的测试对象控件,即插件插件的选择和被测对象控件有关的选择和被测对象控件有关。5.4功能测试自动化工具UFT23
12、UFTUFT的插件管理的插件管理:(续:(续)演示。5.4功能测试自动化工具UFT24UFTUFT的启动界面的启动界面:安装好UFT之后,就可以通过选择菜单“开始所有程序HP SoftwareHP Unified Functional TestingUnifide Functional Testing”或者双击桌面快捷方式来启动UFT了。在选择好插件之后,就进入UFT主界面。演示。5.4功能测试自动化工具UFT25新建新建/打开测试:打开测试:新建测试项目成功或者打开已经存在的测试项目后都会进入测试的流程界面。在这里以流程图的形式给出的测试的执行流程。演示。5.4功能测试自动化工具UFT26U
13、FTUFT的帮助文档:的帮助文档:对于初学者来说,帮助文档是学习和使用UFT的最佳方法。可以通过单击菜单“帮助HP Unified Functional Testing帮助”或者在使用UFT的任意时刻利用快捷键F1来打开联机帮助。演示。5.4功能测试自动化工具UFT27UFTUFT的视图:的视图:UFT支持两种视图,一种是关键字视图,一种是专家视图。不同的开发人员可以选择使用不同类型的视图。演示。5.4功能测试自动化工具UFT28UFTUFT测试脚本的录制:测试脚本的录制:实现测试的自动化,就是要记录用户的操作并播放记录的操作来确认成功回放。UFT有专门的录制工具,测试人员通过模拟用户的操作,
14、类似于执行手工测试的测试步骤一样操作被测试应用程序的界面,利用UFT的对象识别、鼠标和键盘的监控机制就可以完成测试脚本的录制。5.4功能测试自动化工具UFT29UFTUFT测试脚本的录制:(续)测试脚本的录制:(续)录制前准备工作:第一,已经打开了UFT,根据应用程序选择相应的插件,脚本录制人员对UFT的操作界面十分熟悉;第二,熟悉被测应用系统的工作流程,熟练掌握手工测试的步骤;第三,关闭所有与被测试程序不相关的程序窗口。5.4功能测试自动化工具UFT30UFTUFT测试脚本的录制:(续)测试脚本的录制:(续)UFT脚本录制过程:1.启动UFT,选择需要的插件2.新建测试3、录制和运行设置4、
15、记录业务流程演示。5.4功能测试自动化工具UFT31UFTUFT录制模式的切换:录制模式的切换:使用UFT进行脚本录制时,可以在录制过程中进行录制模式的切换。UFT有4种录制模式:正常录制模式(默认)模拟录制模式低级录制模式洞察录制模式5.4功能测试自动化工具UFT32UFTUFT录制模式的切换:录制模式的切换:正常录制模式(默认)默认情况下直接单击录制按钮、直接使用快捷键F6或者从菜单中选择录制开启的均是正常录制模式。由于正常录制模式有时候并不能保证识别程序中的所以对象,因此需要其它录制模式进行辅助。5.4功能测试自动化工具UFT33UFTUFT录制模式的切换:录制模式的切换:模拟录制模式模
16、拟录制模式在录制时会记录所有键盘和鼠标的精确操作,对于一些采用正常录制模式不能捕捉的动作,可以使用模拟录制模式来弥补。5.4功能测试自动化工具UFT34UFTUFT录制模式的切换:录制模式的切换:低级录制模式该录制模式用来记录UFT正常模式不能识别的环境或对象。它不止录制鼠标和键盘的所有操作,对对象的位置要求也非常严格。在录制回放时,对象坐标有任何一点改变就会失败。5.4功能测试自动化工具UFT35UFTUFT录制模式的切换:录制模式的切换:洞察录制模式也叫图像识别模式,该模式在录制时基于控件的显示而非控件的属性。对于UFT无法识别的对象或者远程计算机上非Windows的操作系统均可以使用该录
17、制模式。演示。5.4功能测试自动化工具UFT36UFTUFT测试脚本的录制结果的保存:测试脚本的录制结果的保存:测试录制完成后,需要将测试保存到适当的位置。在UFT主界面单击工具条上的保存按钮或者选择菜单“文件保存*”即可完成测试的保存工作,测试的名字和保存路径是由新建测试时设定的。如果想改变测试的保存位置和测试的名字,则可以选择菜单“文件将*另存为”打开另存为对话框。演示。5.4功能测试自动化工具UFT37UFTUFT测试脚本的导入和导出:测试脚本的导入和导出:为了节省计算机的空间,UFT还支持将测试脚本导出为压缩文件,这样更方便测试脚本的传递。演示。5.4功能测试自动化工具UFT38录制的
18、录制的UFTUFT测试脚本的正确性验证:测试脚本的正确性验证:测试脚本的回放:掌握了UFT的录制原理后,就一定要掌握UFT回放的原理。UFT根据脚本中记录下来的对象操作的顺序进行回放,默认情况下直接单击运行按钮或直接使用快捷键F5就可以进行脚本的回放。演示。5.4功能测试自动化工具UFT39基于GUI的自动化测试主要是围绕着界面的控件元素来进行的,例如文本框、列表框、控制按钮等,软件用户通常也都是通过这些控件与程序交互。这些控件被管理成对象,在UFT中使用对象库进行管理。在UFT中,编辑测试脚本的第一步就是识别测试对象。UFT针对不同语言开发的控件,采用不同的对象识别技术,根据加载的插件来选择
19、相应的控件对象识别依据。5.4功能测试自动化工具UFT40对象:对象:对象实现了数据和操作的结合,也就是使属性和方法封装于对象的统一体中。封装在对象中的方法,用于改变对象的状态。而具有相同或相似性质的对象的抽象就是类。因此对象的抽象是类,类的具体化就是对象,也可以说类的实例是对象。5.4功能测试自动化工具UFT41测试对象和运行时对象:测试对象和运行时对象:UFT中的对象有两个概念,一个是测试对象,一个是运行时对象。测试对象(Test Object,TO):是UFT定义的一些类,用它们代表应用的各种对象。运行时对象(Runtime Object,RO):是实际的被测应用对象,是测试执行过程中,
20、TO用来关联的对象。5.4功能测试自动化工具UFT42UFTUFT对象识别:对象识别:UFT识别对象,一般是要求先在对象库文件中定义测试对象,里面存有实际对象的特征属性的值。然后在运行的时候,UFT会根据脚本中对象的名字,在对象库中找到对应的测试对象,接着根据测试对象的特征属性描述,在被测试软件中搜索找到相匹配的运行时对象,最后就可以对运行时对象进行操作了。5.4功能测试自动化工具UFT43UFTUFT的对象库:的对象库:在UFT中,使用对象存储库管理UFT中的测试对象。一个测试中记录的所有对象和对象的属性都被保存在对象库中。在UFT中,有两种对象库:共享对象库和本地对象库。默认情况下,测试对
21、象被保存在本地对象库中。对象库是UFT自动化测试中最重要的一个资源。5.4功能测试自动化工具UFT44打开对象存储库:打开对象存储库:通过选择菜单“资源对象存储库”可以打开对象存储库。对象库窗口的左侧以树形的结构显示了本测试的测试对象,如果有检查点和输出对象也会在图中显示出来。当在左侧选择一个测试对象时,窗口的右侧将显示该对象的详细属性。演示。5.4功能测试自动化工具UFT45添加对象到对象存储库:添加对象到对象存储库:(1)通过对象存储库窗口的菜单“对象将对象添加到本地”;(2)或者直接单击对象存储库界面工具栏上的“将对象添加到本地”按钮。然后单击需要添加的对象即可(此时一定要保证需要添加的
22、对象所在的程序界面处于可用状态)。演示。5.4功能测试自动化工具UFT46从对象存储库中删除对象:从对象存储库中删除对象:对象库中建议只保存本次测试所需要的对象,所以应该将多余的对象删除。首先在对象存储库左侧的树形结构中选择一个要删除的对象,然后单击工具栏上的删除按钮或者单击对象存储库界面菜单“编辑删除”,也可以选择对象后鼠标右键选择删除,在确认对话框中单击“是”即可完成一个对象的删除工作。演示。5.4功能测试自动化工具UFT47对象的定位与高亮显示:对象的定位与高亮显示:当一个测试的对象存储库中存储了很多对象时,我们可能无法快速地找到应用程序中的对象在对象存储库中的位置,此时可以利用对象的定
23、位功能。反过来,如果我们想快速地知道对象存储库中的某个对象和应用程序中的哪个对象对应起来,此时可以利用对象的高亮显示功能。演示。5.4功能测试自动化工具UFT48编辑与修改对象属性:编辑与修改对象属性:当需要对对象的属性进行编辑和修改时,首先在对象存储库左侧的树形结构中选择一个对象,然后在对象存储库界面的右侧根据需要修改其对应的属性值。其中最常见的是给对象重命名。演示。5.4功能测试自动化工具UFT49更新对象:更新对象:随着软件的更新,在应用程序中的一些对象的特性会发生变化,如果不对对象的属性进行及时更新,则会出现对象不能正确识别的现象,可以通过对对象进行更新来解决这个问题。5.4功能测试自
24、动化工具UFT50共享对象库:共享对象库:本地对象库中存储的测试对象会关联一个指定的操作,其他的操作都不能使用这些对象。共享对象库包含能够在多个操作中使用的测试对象。通过将共享对象库与操作关联,可使该库中的测试对象可用于操作中。5.4功能测试自动化工具UFT51Active ScreenActive Screen:UFT的关键字视图中显示的是录制到的每一个操作,那么我们如何知道录制的步骤是否是我们需要的,或者是在很长的一段录制中,我想查看我录制的步骤当时的测试场景是怎样的,有什么办法可以查看么?5.4功能测试自动化工具UFT52Active ScreenActive Screen:答案是使用U
25、FT的Active Screen功能,该功能位于UFT IDE下方的Active Screen标签页,当你选择该标签页的时候,UFT右下方就会显示和关键字视图中选择的录制步骤相对应的屏幕截屏。通过浏览不同录制步骤的Active Screen,你就知道录制每一步时,当时系统的状态,可以帮助你删减不必要的步骤,或者纠正错误的步骤。演示。5.4功能测试自动化工具UFT53Active ScreenActive Screen:基于Active Screen的截屏所对应的界面,可以在录制完成后参数化对象的值、插入检查点、输出值,即使是在应用程序未被启动和激活的情况下。这是因为Active Screen存
展开阅读全文