功能测试自动化工具.ppt_第1页
功能测试自动化工具.ppt_第2页
功能测试自动化工具.ppt_第3页
功能测试自动化工具.ppt_第4页
功能测试自动化工具.ppt_第5页
已阅读5页,还剩30页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、功能测试自动化工具,何谓自动化测试?,简而言之,所谓的自动化测试就是将您现有的手动测试流程给自动化。而且要实施自动化测试的公司或组织,本身必须要有一套“正规(formalized)”的手动测试流程。而这个正规的手动测试流程至少要包含以下的条件: 详细的测试个案(test cases):从商业功能规格或设计文件而来的测试个案,包含可预期的(predictable)的预期结果(expected result)。 独立的测试环境(test environment):包含可回复测试资料的测试环境,以便在应用软件每次变动后,都可以重复执行测试个案。,手工测试,自动化测试,测试设计,测试执行,测试用例,测

2、试设计,测试实现,测试执行,测试用例,1 输入数据,2 操作,3 预期结果,1 业务数据,2 业务功能,实现业务功能,所占用的时间,所占用的时间,自动化测试目的,自动化测试最实际的应用与目的是自动化回归测试(regression testing)。也就是说,必须要有用来储存详细测试个案的数据库,而且这些测试个案是可以重复执行于每次应用软件被变更后,以确保应用软件的变更没有产生任何因为不小心所造成的影响。 “自动化测试脚本(script)”同时也是一段程序。为了要更有效的开发自动测试脚本,必须和一般软件开发的过程一样,建立制度以及标准。要更有效的运用自动化测试工具,至少要是受过良好训练的技术人员

3、,换句话说,至少要是一位程序设计师(programmer)。,自动化测试框架-无框架阶段,在早期,自动化测试并没有框架这一说,自动化测试只是简单的录制/回放,由工具录制并记录操作的过程或数据,并形成脚本。通过对脚本的回放重复人工操作的过程。这种模式脚本与数据混合在一起。站在软件开发的角度来看,这种开发耦合度高,我们知道软件工程的思想,是高内聚低耦合。而简单的录制回放完全违背了这一思想,简单的录制回放,重用性非常低,同时维护成本非常高。,自动化测试框架-数据驱动框架阶段,无框架阶段最大的缺点就是脚本与数据混合在一起。为了解决这一问题,自动化测试框架发展到了数据驱动框架阶段。该框架从数据文件中读取

4、数据,通过参数化的方式将数据文件中读取数据写入到脚本中(好比从数据库中读数据),由于不同的数据对应着不同的测试用例,将脚本与数据彻底地分离,因此提高了脚本的使用率,大大降低了脚本的维护成本。虽然数据驱动框架解决了脚本与数据的问题,但并没有将被测试对象与操作分离。,自动化测试框架-关键字驱动框架阶段,关键字驱动框架是在数据驱动框架的基础上改进的一种框架模型。它将测试逻辑按照关键字进行分解,形成数据文件与关键字对应封装的业务逻辑。主要关键字包括3类:被测试对象(Item)、操作(Operation)和值(Value).用面向对形式将其表现为Item.Operation(Value)。关键字驱动的主

5、要思想是:脚本与数据分离、界面元素名与测试内部对象名分离、测试描述与具体实现细节分离,自动化测试框架-混合模型框架阶段,关键字驱动框架将自动化测试框架带入了一个新的阶段,自动化测试工具QuickTest也很好地使用了该理念,但在实际开展自动化测试的时候,发现测试工具所带来的关键字驱动框架还是无法很好地完成测试任务。该框架虽然将数据与脚本进行了分离,但是如果要更灵活地调用测试用例中的数据或输出测试结果,该框架无法做到;并且如果需要读取其他文件存储格式中的数据时也无法很好地解决。因此,在自动化测试开始的前期,工程师会开发一个符合实际测试的框架来支持后期的测试工作,这就是通常所说的混合模型自动化测试

6、框架。,自动化测试的设计,自动化测试的实现,功能自动化测试工具列表,Rational Robot Win Runner SilkTest QA Run Test Partner QuickTest Professional AdventNet QEngine Holodeck TelelogicTAU,QTP基础学习-安装,Addins : 插件包 Bin: 可执行程序 CodeSamplePlus:示例代码 Help: 帮助中心 Sample: 示例程序,QTP基础学习-启动,“开始”菜单中的“所有程序” “QuickTestProfessional” “QuickTest Professi

7、onal”,QTP界面介绍,菜单 常用快捷键 Keyword View 和Expert View Data Table和Active Screen,QTP示例程序(飞机订票系统),所在目录: samplesflightapp; 观察界面,根据提示输入用户名和密码:,QTP基本操作:录制Normal Recording(正常录制),QTP默认为正常录制模式。它通过识别程序中的对象来代替以前屏幕坐标的形式。但是正常模式并不能保证程序中的所有对象都被识别。因此还要其他两种模式来补充,Analog recording(模拟录制 ),相对于指定窗口录制 - 如果对其执行操作的对象位于一个窗口内部而且该窗

8、口在模拟录制会话期间没有移动。这可以确保在运行会话过程中,QuickTest 将准确地标识在其上执行模拟步骤的窗口位置,即使当您运行模拟步骤时窗口位于不同的位置。QuickTest 不会录制在指定窗口外部执行的任何单击或鼠标移动。当使用这种模式时,QuickTest 不会捕获任何 Active Screen 图像。 相对于屏幕录制 - 如果在其上录制模拟步骤的窗口在录制过程中移动,或者您所执行的操作是针对位于多个窗口内的对象。这可能包括将对象从一个窗口拖放到另一个窗口中。当使用这种模式时,QuickTest 将捕获您在其中进行录制的窗口的最终状态的 Active Screen 图像。 使用“模

9、拟录制”录制的步骤被保存在单独的数据文件中。该文件与在其中录制模拟步骤的操作或组件一起存储。 当以“模拟录制”模式进行录制时,QuickTest 将向测试或组件添加一个调用所录制的模拟文件的“RunAnalog”语句。相应的 Active Screen 将显示在模拟录制会话期间执行的最后一个模拟步骤的结果 注意:不能编辑模拟录制的Steps,low-level recording(低级录制),使用“低级录制”在不受 QuickTest 支持的环境或对象上进行录制。当您需要在应用程序屏幕上录制操作的精确位置时,请使用“低级录制”。当以正常模式录制时,QuickTest 将在对象上执行步骤,即使该

10、对象已经移动到屏幕上的新位置。如果对象的位置对于您的测试或组件非常重要,请切换到“低级录制”以使 QuickTest 能够按照屏幕上的 x 坐标和 y 坐标录制该对象。这样,该步骤只有在对象位于正确的位置时才能通过。 当使用“低级录制”时,QuickTest 将所有父类对象录制为 Windows 测试对象,将所有其他对象录制为 WinObject 测试对象。它们在 Active Screen 中显示为标准 Windows 对象。“低级录制”对每个测试对象支持下列方法:WinObject 测试对象 - Click、DblClick、Drag、Drop、TypeWindow 测试对象 - Clic

11、k、DblClick、Drag、Drop、Type、Activate、Minimize、Restore、Maximize 以“低级录制”模式录制的每个步骤都显示在关键字视图和专家视图中。(“模拟录制”仅录制关键字视图中那个调用外部模拟数据文件的步骤。),QTP基本操作:回放,录制完成后为了验证录制的正确与否,需要进行脚本回放,QTP基本操作:查看报告,回放结束后,可以在AutomationResult中查看结果报告 在ToolsOptionRun标签中是否勾选 view results when run session ends 来设定 results在什么时候显示,QTP基本操作:调试,在要

12、调试的步骤前插入breakpoint ViewDebug Viewer Debugstep over 或 step into Run to step:从脚本开始跑到你指定的step 停止 Debug from step: 从当前指定的步骤开始跑到结尾,检查点概述,QTP基本操作:增加步骤(1),选中Agent Name 点右键 Insert StepStep Generator,QTP基本操作:增加步骤(2),QTP基本操作:增加对象(1),在录制过程中可能会遇到有些对象无法添加到步骤中,这就需要我们手工把这些对象添加到对象库中,为程序的录制做好准备 注意:识别对象和将对象添加到对象库是不同的操作。,QTP基本操作:增加对象(2),QTP基本操作:增

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论