自动化测试可以基于代码,例如junit,cppunit,可以基于协议,例如loadrunner,QTP是基于GUI界面的自动化测试工具。junit和cppunit属于单元测试,loadrunner和QTP属于系统测试。loadrunner用于系统的性能测试,QTP用于系统的功能测试。QTP是一款基于界面的功能自动化测试工具。
    LR录制的是协议和数据包,QTP录制的是鼠标和键盘的消息。QTP录制回放时基于windows操作系统的消息机制。QTP在录制时监听应用程序的消息,监听到之后把消息放到容器里,而另外的监听程序则从容器中取出容器中的消息,并调用对用的API处理函数。QTP截取的是用户对应用程序的操作,即录制的是消息。对于C/S应用程序,在回放时QTP根据对象的句柄(handle)和脚本内容,调用API函数;对于B/S应用程序,在回放时基于DOM(document object model)来解析。
    RO(Runtime Object)和TO(Test Object)。RO是指GUI界面上的控件即对象本身,TO是QTP对象库里的对象即在录制时添加到对象库的对象。RO是应用程序上实际的对象,因此拥有对象的所有的属性和方法;TO是QTP在录制时获取的应用程序的对象的,而录制时 QTP只保存了应用程序一部分常用的,能够在回放时识别应用程序上对象的一部分属性,因此TO对象拥有应用程序上对象的一部分属性。另外QTP对象库里保存的是TO对象。不过QTP可以使用Object Spy功能获取应用程序的所有属性值,或者可以通过TO对象的getROproperty()和getROpropertys()获取应用程序的所有属性值(呵呵,所有对象都没有setROproperty()方法)。使用TO对象的setTOproperty()和getTOproperty()可以操作对象库的TO对象。
    QTP的录制原理:根据用户在应用程序界面上的操作,QTP采用Object Identification Tools工具对被操作的对象进行识别,采用反编译的原理看其属于哪个插件类,从而进一步识别其属于什么控件类,然后QTP把对应的控件类实例化一个对象,并把获取的应用程序的一部分属性值(足以识别对象?)赋给新建的对象,并添加到对象库里即TO对象,而把用户对对象的操作添加到脚本里面。
    QTP的回放原理:QTP 根据脚本中记录下来的对象操作的顺序进行回放。QTP从脚本中读取到该对象,并根据对象的层次和名称到对象库中寻找相同名称的测试库对象,在测试库找到相应的对象,获得对象的属性,根据对象库中对象的属性,在运行的应用程序中进行匹配,寻找运行时对象,找到后根据脚本中记录的对该对象执行的动作和参数值。

UFT(QTP) 录制 回放 原理相关推荐

  1. 功能自动化测试之QTP录制脚本(一)

    说明:该篇博客是博主一字一码编写的,实属不易,请尊重原创,谢谢大家! 接着上一篇博客继续往下写 :https://blog.csdn.net/qq_41782425/article/details/1 ...

  2. 爱奇艺APP的自动化录制回放系统 全云化处理新体验

    在面对大量的APP功能用例回归测试的时候,测试开发工程师最头痛的问题之一便是新功能交付时间紧迫,原有功能回归测试耗时长,自动化脚本都没时间跟进补齐测试用例.导致核心功能回归遗漏,新功能测试质量也得不到 ...

  3. 通用流量录制回放工具 jvm-sandbox-repeater 尝鲜 (三)—— repeater plugin 开发

    本文作者陈恒捷是TesterHome社区主编,第十届MTSC大会上海站-开源专场出品人.先后在PP助手.PPmoney.荔枝等公司从事测试效能提升相关工作,在测试技术及效率提升方面有丰富的经验积累. ...

  4. SilkTest那些事儿_第一章 ST的HelloWord_录制回放1

    [size=x-small;][size=12px;] [/size]但凡程序员学习一门新语言,他要干的就是打出一个hello world来.甚至某位程序员联系书法,展开宣纸,磨好墨,tian四声(此 ...

  5. java pc的录制与回放,用Java事件处理机制实现录制回放功能

    下载本文示例代码 目前在一些java应用程序的GUI测试工具,可以提供捕获用户操作的能力并在代码被修改之后能够自动回放用户的操作.文章将分析Java的事件处理模型及其原理,介绍了基于事件源识别的捕获/ ...

  6. 月光宝盒(vivo流量录制回放平台)正式对外开源

    作者:vivo 互联网服务器团队- Liu Yanjiang 月光宝盒是一个基于流量录制回放的自动化测试平台,通过录制回放取代编写脚本进行自动化回归,提升测试效率和覆盖率.因为其解决方案具有很强的通用 ...

  7. 软件测试实训|界面自动化测试工具Selenium IDE 录制回放

    Selenium IDE是安装在浏览器上的一个开源的Web自动化工具,是Selenium的一个组件.可以利用Selenium IDE录制页面操作来创建测试用例.录制并回放测试用例. 01 项目目的 掌 ...

  8. android 自动化 录制,android 自动化录制回放测试工具

    uiautomator 做一般的 ui 自动化还是不错的,常见的操作基本都支持,下面是用 uiautomator 做的一个可以录制回放的工具 1, var.txt 用于存放一些参数,如登录用户名,密码 ...

  9. 如何录制回放测试用例并且添加检查点?

    刚学VSTS没多久,未将此技术用于项目中,所谓拳不离手,曲不离口,不用将会都忘记掉.遂将自己学会的及时汇总记录下来,一来温故而知新,二则遗忘了也有资料可查询,三则为需要的人共享,所有所学内容均来自于h ...

最新文章

  1. 重学《JavaScript 高级程序设计》笔记 第6章对象
  2. Python2和Python3的兼容性写法
  3. 【C++】局部变量、全局变量、静态变量与动态对象的性质
  4. android5.1使用SerialManagerService
  5. 20160601 工作总结
  6. 基于MVC模式的超市仓库管理系统的设计与实现
  7. 架构师到底该不该写代码?
  8. ASO优化方法_获取ASO关键词指数接口
  9. ktv点歌系统服务器破解,欧凯KTV卡拉OK点歌系统
  10. iOS开发之GameCenter使用
  11. Reason Studios Reason 12 v12.2.5 WiN 音乐制作软件和机架插件
  12. jsoup抓取网页+详细讲解
  13. 什么是强化学习呢,来涨波知识
  14. 10分钟教你用Python获取百度地图各点的经纬度信息
  15. STM32驱动3.97寸TFT液晶触摸屏模块
  16. 常见的网络安全设备及功能汇总
  17. React Native BLE蓝牙通信
  18. Python 信号处理 signal 模块
  19. 手机玩我的世界java怎么改中文_我的世界手机版设置中文翻译
  20. win7 CorelDRW9增强版补丁运行

热门文章

  1. SpringCloud五大组件原理
  2. Simulink 环境基础知识(十六)--符号解析
  3. STP-17-对抗单向链路问题
  4. 微信小程序证件照正反面上传
  5. Java实现二维码,验证码详细总结
  6. iview 级联选择组件_iviewui级联选择 如何自定义?
  7. iOS实现平铺的几种简单方式
  8. 如何理解IT工程师文化
  9. 我用python写个背单词小程序
  10. 跨年烟花代码加文案,确定不来看看吗