UFT自动化功能测试对象库设计、研究和实现

来源 :电脑知识与技术 | 被引量 : 0次 | 上传用户:greenbrowser
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  摘要:目前软件系统功能测试已经不局限于人工测试,自动化测试能够有效提高软件测试的效率,降低测试成本,缩短测试周期。一个好的自动化测试工具,可以使测试事半功倍。UFT(Unified Functional Testing)是惠普公司推出的一款基于GUI对象识别技术的自动化功能测试工具。对象库是UFT中的一项重要技术,该文主要研究UFT中的对象库的设计与实现。
  关键词:自动化测试;UFT;对象库
  中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2016)36-0088-02
  1 UFT简介
  随着市场对软件质量要求的不断提高,软件测试愈来愈受到重视。随着测试工作的不断深入,越来越多的软件公司开始借助自动化测试工具来提高测试效率和测试质量、缩短测试工期、降低测试成本。特别是对于一些工期较长、发布版本较频繁且对软件质量要求较高的大项目,是否使用自动化测试工具是关系项目成败的一个关键因素。
  UFT(Unified Functional Testing)是美国惠普公司的一款功能性測试工具,目前在测试工具市场上占据绝对主流位置。UFT提供先进的自动化测试解决方案,用于功能测试和回归测试,它自动捕获、验证和回放用户的交互行为。UFT是基于GUI对象识别技术的,而GUI的自动化脚本都是针对应用程序中对象的操作。因此,界面上的操作对象能否准确地被识别,关系到自动化测试能否正常自动执行。所以在UFT自动化测试项目中对对象的集合,即对象库的设计、研究和实现就显得尤为重要。[5]
  UFT的工作原理就是将应用程序回放过程中各个控件的主属性拿来和测试对象进行比较,如果各个主属性完全匹配,测试即通过。
  2 UFT对象库简介
  测试对象(Test Object):UFT录制过程中所录制被测应用程序中的对象,这些对象会保存在UFT的本地对象库中。UFT使用测试对象标识被测应用程序中的对象,并存储该对象属性及属性值,这些属性有助于UFT在回放会话期间标识和检查被测应用程序中的对象。
  运行时对象(Runting Object):被测应用程序运行时的实际对象。
  UFT识别对象原理一般是按下面三个步骤完成:(1)在对象库中创建测试对象,里面存有测试对象的属性值,主要标注一个或多个主属性;(2)在运行被测应用程序时UFT会根据脚本里面对象的名字,在对象库中找到对应的测试对象;(3)根据测试对象的主属性,在被测应用程序中找到运行时对象,最后对运行时对象进行操作。在此过程中,如果测试对象和运行时对象不匹配,将给出报错信息,无法顺利完成对此对象的操作。
  对象库是UFT的核心,因为UFT是通过维护对象库来达到对象识别的目的的。虽然在描述性编程中不需要提供测试对象,但实际上是在UFT脚本中描述对象的属性,而测试执行中对象识别的原理是不变的。在事先抓取”代理名称:”、”密码:”两个文本框对象和”确定”按钮对象的前提下,基于对象库编程的脚本如下:
  Dialog("登录").WinEdit("代理名称:").Set "mercury"
  Dialog("登录").WinEdit("密码:").Set "mercury"
  Dialog("登录").WinButton("确定").Click
  还是”登录”这个功能点,采用描述性编程的脚本如下:
  with Dialog("text:=登录")
  .winEdit("attached text:=代理名称:").Set "mercury"
  .winEdit("attached text:=密码:").Set "mercury"
  .winButton("text:=确定").Click
  end with
  3 对象库的创建
  UFT的对象库可以分为两种:
  1)本地对象库(Local Object):与Action相关联,每创建一个新的Action会自动创建相应的本地对象库。
  2)共享对象库(Share Object):多个Action可以共用的对象库,其扩展名为tsr。
  脚本录制过程中或通过对象库专门抓取的对象都是保存在本地对象库中,这些对象的作用范围仅限于当前的操作。如果其他的操作也需要这些对象,则需要手动再重修添加一次。要让这些本地对象能够应用于多个操作、测试中,我们经常将录制好的本地对象导出,生成一个共享的对象库文件。
  以下情况建议使用本地对象库:
  1)创建单一操作测试脚本时;
  2)不需要频繁修改对象属性时。
  以下情况建议使用共享对象库:
  1)使用关键字驱动测试技术;
  2)包含(创建)多个测试脚本、接口或对象设置的多个测试;
  3)需要经常维护测试对象的属性或有规律的更新测试对象属性;
  4)经常进行多个测试你或有规律的使用Insert Copy of Action或Insert Call to Action。
  由于编程人员在编码过程中未注意控件的命名,导致测试人员使用UFT时抓取的对象名称不规范,造成对象库维护和使用不便,因此建议在对象捕捉完后进行重命名。命名规则如下:
  1)名称应与所对应的对象相关,做到“见名思义”;
  2)如果一个对象中包含动作,则对象名称建议为:动作名 对象名;
  3)必须是英文名,建议采用驼峰标识格式书写;
  4)名称不包含特殊符号;
  5)名称应不超过15字符。[6]   4 对象库的对比、合并
  对象库的管理在整个UFT自动化测试过程中占据非常重要的地位,特别是大型的项目,其界面中的控件多而杂,拥有一个规范、统一的对象库将有助于脚本的快速开发和团队成员之间的协作。一般情况下,一个自动化测试项目会设置专人对对象库进行严格管理。在某些特殊的场合,可能需要有多人同时对对象库进行管理,则在项目测试的后期需要由专人对对象库进行对比、合并。
  在UFT的对象库管理中自带两个辅助工具:Object Repository Comparison Tool(ORCT)和Object Repository Merge Tool(ORMT)。它們所处的位置如图2所示。
  ORCT工具用于对两个对象库文件进行分析统计、并查看两者之间的差异。ORTC比较之后在Statistics(统计对话框)直观地显示统计结果,而图形化的差异标识使用户能更快捷有效地查看对象库之间的差异。ORMT工具用于两个对象库文件合并,当两个对象库中的对象没有冲突,所有的合并工作就由系统代劳,不用再手工去设置,最后只需把Statistics对话框关掉,把合并的结果保存即可。如果两个对象库有冲突,ORMT会准确标记出那些需要合并但是又有冲突的对象的位置,用户在解决选项(Resolution Options)的上半部分可以查看有差异的两个对象的信息,在下半部分可以选择三种解决方案中的任一种。
  5 结束语
  总之,在成本、技术都可行的情况下,在项目中选择UFT进行自动化功能测试工具,将能够提升测试的效率、降低测试成本,而UFT强大的对象库能够对GUI对象进行高效、合理的管理。
  参考文献:
  [1] 李晓鹏, 赵书良, 魏娜娣. 软件功能测试—基于Quick Test Professional应用[M]. 北京: 清华大学出版社, 2012.
  [2] 余杰, 赵旭斌. 精通QTP—自动化测试技术领航[M]. 北京: 人民邮电出版社, 2012.
  [3] Tarun Lalwani. QTP自动化权威指南[M]. 北京: 人民邮电出版社, 2013.
  [4] 林勤花, 张彩鲜. 企业案例软件测试技术[M].成都: 西南交通大学出版社, 2015.
  [5] 沈涵超. QTP中的对象库的设计、研究和实现[J]. 科技信息, 2011(29).
  [6] 朱云溪. QTP自动化测试对象库的设计、研究和实现[J]. 天津职业院校联合学报, 2014 (8):59-61.
其他文献
液相中药物球型结聚技术是一项新型的制剂制备工艺,本综述详细介绍了该技术的基本原理、国内外研究进展以及该方法的特点和影响因素。
小提琴启蒙教材在琴童开始学琴时起着重要的作用,笔者在多年的小提琴启蒙教学与研究中发现很多教材并不能适应中国琴童的需求,如教材内容的安排及本教材教学的角度等方面。笔
摘要:正则表达式在许多领域有广泛的应用,而用于教材信息的收集中的情况较少。该文针对教材管理过程中的教材信息收集、教材征订环节开发出教材信息收集系统,其中可以利用正则表达式抓取购书网站上的教材信息,从而确保数据的有效性,提高工作效率。  关键词:正则表达式;教材;信息收集  中图分类号:G642 文献标识码:A 文章编号:1009-3044(2016)16-0156-02  1 概述  近年来,随着
本文报道石斛属植物两新种:修仁右斛Dendrobium xiurenense M.F.Li et G. J.Xu,永福石斛D.yongfuense M.F.Li et G.J.Xu,用拉丁文和中文对其特征作了集要描述。
安徽古代道家科技思想及科技成就初探张青棋关键词:安徽古代道家,科技思想,科技成就一、老子的科学思想及影响老子是道家文化的创始人。所著(老子)一书博大扭深,蕴含着丰富的科学思
根据目前纺织物生产状况,在热定形过程中,运用红外的非接触测温技术,并用微机进行数据处理实现现场测温,对布料的工况及V/F转换器进行了理论分析和计算,从而使信号在较高分辨率前提下
面向本科生的校公选修课教学是龙岩学院为拓宽学生视野及知识面,综合提高学生的科学素养,促进学科交叉,培养'复合型'人才所采取的重要教学改革举措。以本校开设的《
<正> 人工牛黄具有解热、抗惊厥、祛痰、抑菌等药理作用,为许多重要中成药中的主药。人工牛黄中的主要有效成分为胆红素和胆汁酸。牛黄中胆汁酸成分的HPLC分析报道的有:牛黄
“学习强国”平台虽不是专门为道德与法治课教学而开设,但道德与法治课教师如能科学、充分、合理地加以利用,巧妙地服务于课堂教学,定能给道德与法治课添彩,助力道德与法治课
颅内多发动脉瘤的手术治疗比较困难,我科自1998年7月至2000年3月采用电解可脱卸弹簧圈(GDC)栓塞治疗颅内多发动脉瘤23例,临床治疗效果满意,报告体会如下。